RMA-система на 1С-Битрикс: разработка и внедрение

Создание RMA-системы на 1С-Битрикс: разработка и внедрение Возвраты без системы — хаос. Клиент звонит или пишет на общую почту, менеджер вручную ищет заказ, договаривается о возврате, отправляет инструкции. Отследить статус возврата невозможно, аналитики нет. Мы разрабатываем RMA-системы на 1С-Би
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
RMA-система на 1С-Битрикс: разработка и внедрение
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    763
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1164

Создание RMA-системы на 1С-Битрикс: разработка и внедрение

Возвраты без системы — хаос. Клиент звонит или пишет на общую почту, менеджер вручную ищет заказ, договаривается о возврате, отправляет инструкции. Отследить статус возврата невозможно, аналитики нет. Мы разрабатываем RMA-системы на 1С-Битрикс, которые автоматизируют этот процесс: клиент создаёт заявку на возврат через личный кабинет, менеджер обрабатывает её в административной части, система отслеживает статусы и инициирует возврат платежа. RMA-система сокращает время обработки возврата в 5 раз по сравнению с ручным процессом. Битрикс не имеет встроенного RMA — его строят поверх модуля sale. Наши инженеры имеют 10+ лет опыта в разработке на Битрикс и реализовали более 50 проектов по автоматизации возвратов. Оценим ваш проект за 1 день: свяжитесь с нами.

Почему RMA на Битрикс?

Битрикс — одна из самых распространённых CMS в России, и многие интернет-магазины уже работают на ней. Встроенного модуля RMA нет, но платформа предоставляет гибкие инструменты: инфоблоки, пользовательские таблицы (HL-блоки), ORM, события и агенты. Благодаря этому можно построить систему возвратов, полностью интегрированную с заказами, корзиной, складом и платёжными шлюзами. Кроме того, Битрикс легко связывается с 1С через CommerceML, что позволяет автоматически обновлять остатки после возврата.

Юридический контекст

Возврат товара регулируется статьями 18, 25 Закона о защите прав потребителей (ЗоЗПП). Два основных основания:

  • Ненадлежащее качество (ст. 18) — дефект, брак. Срок предъявления — в пределах гарантийного срока.
  • Надлежащее качество (ст. 25) — «передумал». Только для непродовольственных товаров, 14 дней, товар не должен быть в употреблении.

В системе RMA оба основания должны быть представлены отдельными типами заявок с разными полями и процессами.

Модель данных

Основная таблица RMA-заявок строится на ORM Битрикс:

class RmaRequestTable extends \Bitrix\Main\ORM\Data\DataManager { public static function getTableName(): string { return 'b_local_rma_request'; } public static function getMap(): array { return [ new IntegerField('ID', ['primary' => true, 'autocomplete' => true]), new StringField('NUMBER'), // RMA-YYYYMMDD-XXXX new IntegerField('ORDER_ID'), // b_sale_order new IntegerField('USER_ID'), new EnumField('TYPE', ['values' => ['DEFECT', 'EXCHANGE', 'REFUND']]), new EnumField('STATUS', ['values' => ['NEW', 'UNDER_REVIEW', 'APPROVED', 'REJECTED', 'RETURNED', 'REFUNDED', 'CLOSED']]), new TextField('DESCRIPTION'), // Описание причины от клиента new StringField('DEFECT_PHOTO_IDS'), // JSON-массив b_file ID new StringField('REJECT_REASON'), // Причина отказа (если REJECTED) new FloatField('REFUND_AMOUNT'), // Сумма к возврату new IntegerField('RESPONSIBLE_ID'), // Ответственный менеджер new DatetimeField('CREATED_AT'), new DatetimeField('UPDATED_AT'), new DatetimeField('DEADLINE_AT'), // Дедлайн обработки (14 дней) ]; } } 

Дополнительные таблицы: RmaItemTable (позиции возврата) и RmaHistoryTable (история статусов) — строятся аналогично. Позиции возврата связываются с заказом через ORDER_BASKET_ID, а история фиксирует все изменения с указанием пользователя и комментария.

Генерация номера RMA

Каждая заявка получает уникальный номер формата RMA-YYYYMMDD-XXXX, где XXXX — порядковый номер. Генерация простая: берётся последний ID из таблицы и инкрементируется. Номер создаётся автоматически при сохранении заявки.

Создание заявки из личного кабинета

Страница /personal/rma/create/?order_id=12345 отображает список товаров заказа и позволяет выбрать, какие позиции вернуть, указать причину, загрузить фото дефекта. Пример компонента:

class RmaCreateComponent extends \CBitrixComponent { public function executeComponent(): void { $orderId = (int)$this->arParams['ORDER_ID']; if (!$orderId || !$this->isOrderOwner($orderId)) { LocalRedirect('/personal/orders/'); } $order = \Bitrix\Sale\Order::load($orderId); $basket = $order->getBasket(); $items = []; foreach ($basket as $item) { $daysSinceOrder = (new \DateTime())->diff(new \DateTime($order->getField('DATE_INSERT')))->days; if ($daysSinceOrder > 365) continue; $items[] = [ 'BASKET_ID' => $item->getId(), 'PRODUCT_ID' => $item->getProductId(), 'NAME' => $item->getField('NAME'), 'QUANTITY' => $item->getQuantity(), 'PRICE' => $item->getPrice(), 'CAN_REFUND' => $daysSinceOrder <= 14, ]; } if ($this->request->isPost() && check_bitrix_sessid()) { // Валидация и сохранение заявки $this->createRmaRequest($orderId, $items); } $this->arResult['ORDER'] = $order; $this->arResult['ITEMS'] = $items; $this->includeComponentTemplate(); } } 

После отправки заявки менеджер получает уведомление, а клиент — ссылку на статус.

Как ускорить обработку возвратов?

Автоматизация сокращает ручной труд: менеджеру не нужно искать заказ, проверять сроки, рассчитывать сумму. Система сама проверяет допустимость возврата по дате, статусу заказа и типу товара. Одобрение или отказ происходит в один клик, а при положительном решении автоматически инициируется возврат денег через платёжный шлюз (ЮKassa, CloudPayments). Всё это сокращает время обработки с 2 дней до 1 часа.

Сравнение: ручной процесс vs RMA

Критерий Ручной процесс RMA-система
Время обработки заявки до 2 дней 1 час
Ошибки в расчётах частые исключены
Аналитика по возвратам нет встроенная
Интеграция с возвратом платежа вручную автоматически
Уведомления клиента вручную автоматические

Что входит в работу

Мы предоставляем полный цикл разработки RMA-системы под ключ:

  • Анализ бизнес-процессов и проектирование модели данных
  • Разработка личного кабинета клиента (создание, просмотр статусов, загрузка фото)
  • Административный интерфейс для менеджеров (фильтры, массовые действия, история)
  • Интеграция с платёжными системами (рефанд) и службами доставки
  • Подключение к 1С через CommerceML для синхронизации остатков
  • Документация, обучение персонала, гарантийная поддержка 1 год

Сроки разработки

Вариант Состав Срок
Базовая RMA Форма заявки, список в ЛК, статусы 8–12 дней
С обработкой в админке Интерфейс менеджера, история, уведомления 12–18 дней
Полная система + Возврат платежей, интеграция со складом 18–28 дней

Стоимость рассчитывается индивидуально — оценка занимает 1 день. Наша команда имеет 10+ лет опыта в разработке на 1С-Битрикс и 50+ успешных проектов. Получите консультацию: мы свяжемся с вами в течение часа.