Как настроить возврат товаров на 1С-Битрикс?
Типичная картина: менеджер открывает заказ в /bitrix/admin/sale_order_view.php, вручную меняет статус, звонит на склад, потом лезет в 1С формировать документ «Возврат товаров от покупателя». На один возврат — 20–30 минут. При 15 возвратах в день один человек занят только этим. Наш подход ускоряет цикл в 8 раз: от кнопки «Оформить возврат» в личном кабинете до проводки в 1С и чека возврата по 54-ФЗ.
Почему стандартный процесс возврата неэффективен?
В Битриксе из коробки нет отдельной сущности «возврат». Есть статусы заказа в b_sale_status, есть отмена через CSaleOrder::CancelOrder(), но полноценного workflow с частичными возвратами, обменами и обратной логистикой — нет. Приходится строить.
-
Частичный возврат — клиент хочет вернуть 2 из 5 позиций. Стандартный
CancelOrderотменяет заказ целиком. Нужна кастомная логика черезCSaleBasketи пересчётCSaleOrder::Update. -
Остатки разъезжаются — товар приехал на склад, но в
b_catalog_store_productего нет, потому что менеджер забыл оприходовать. На сайте — «Нет в наличии», хотя коробка стоит на полке. - Возврат денег — ЮKassa, CloudPayments, Тинькофф — у каждого свой метод рефанда, свои таймауты, своя обработка ошибок. Ручной рефанд через личный кабинет платёжки — рутина.
-
54-ФЗ — чек возврата с признаком расчёта
ВОЗВРАТ ПРИХОДАдолжен уйти на ОФД. Без автоматизации менеджер формирует его вручную в кассовом ПО.
Что мы строим
Личный кабинет покупателя — self-service возврат
Кастомный раздел в /personal/returns/, интегрированный с sale.personal.order.list. Покупатель делает всё сам:
- выбирает заказ из
b_sale_order, видит список позиций изb_sale_basket; - отмечает конкретные товары, указывает причину из справочника (свойство инфоблока
RETURN_REASONS) или пишет свободный текст; - загружает фото через
CFile::SaveFile()— брак, повреждения при доставке; - выбирает способ возврата: курьер (СДЭК API), ПВЗ, Почта России;
- указывает куда вернуть деньги: на карту (рефанд через платёжку), на внутренний счёт (
CSaleUserAccount), обмен на другой товар; - видит статус заявки в реальном времени — через кастомные статусы в
b_sale_status_lang.
Админка менеджера — без лишних кликов
Отдельный раздел на базе \Bitrix\Main\Engine\Controller:
- очередь заявок с фильтрами: статус, сумма, причина, дата, менеджер. Грид на
CAdminListили кастомный React-компонент; - вся информация по заявке на одном экране: заказ, клиент, история переписки, фото, документы;
- действия в один клик: одобрить, отклонить, запросить фото, передать на согласование;
- маршрутизация: возврат свыше порога (настраивается в
b_option) уходит руководителю через бизнес-процесс модуляbizproc; - автогенерация акта возврата и возвратной накладной — PDF через mPDF или TCPDF.
Автоматизация — минимум ручных операций
- Возврат до настраиваемого порога (например, 3000 ₽) — автоодобрение через обработчик события
OnSaleOrderSaved. - Чек возврата 54-ФЗ: вызов
\Bitrix\Sale\Cashbox\Manager::addChecks()с типомCheck::RETURN_TYPE. Уходит на ОФД автоматически. - Цепочка уведомлений: email через
CEvent::Send(), SMS через SMS-шлюз, push. - После приёмки на складе — автоматическое оприходование через
CCatalogStoreDocsBarcodeи обновлениеb_catalog_store_product. - Синхронизация с 1С: документ «Возврат товаров от покупателя» создаётся автоматически при обмене через
\Bitrix\Sale\Exchange. - Бонусные баллы, начисленные за покупку — списание через
CSaleUserAccount::UpdateAccount()с отрицательной суммой. - Агенты обрабатывают очередь заявок, эпилог шаблона подгружает статусы в личный кабинет в реальном времени.
Как настроить интеграцию с платежными системами без ошибок?
Каждая платёжка — свой API рефанда, свои ограничения по срокам, свои коды ошибок. Опыт сертифицированных разработчиков Битрикс позволяет обработать все сценарии:
-
ЮKassa —
POST /v3/refunds, полный и частичный рефанд. Важно: рефанд возможен только в течение 365 дней после платежа. Автоматический чек возврата через receipt API. -
CloudPayments — метод
refundпоTransactionId. Рефанд на карту за 1-5 рабочих дней. Если 3DS-платёж — рефанд может занять до 30 дней на стороне банка. -
Тинькофф Эквайринг —
CancelпоPaymentId. Если оплата в рассрочку — рефанд пересчитывает график, и это отдельная логика в обработчикеsale.paysystem.handler. - Apple Pay / Google Pay — рефанд идёт через тот же эквайринг, токен привязан к транзакции.
- Наложенный платёж — рефанд невозможен через платёжку, нужны банковские реквизиты покупателя. Отдельная форма в ЛК.
-
Внутренний счёт —
CSaleUserAccount::Pay()с зачислением суммы. Мотивируем повышенным коэффициентом (x1.1) — 10% бонус за выбор возврата на баланс вместо карты.
Гарантируем корректную обработку каждого кода ошибки через кастомные обработчики sale.paysystem.handler.
Соответствие законодательству — без вариантов
- ЗоЗПП, ст. 26.1 — дистанционная продажа: отказ в любой момент до получения, 7 дней после. Система контролирует сроки автоматически и предупреждает менеджера о приближении дедлайна. Подробнее о законе — статья 26.1 ЗоЗПП.
-
14 дней — возврат товара надлежащего качества. Проверка:
date_insertзаказа + дата доставки из трекинга + 14 дней. Если просрочено — заявка отклоняется с пояснением. - 54-ФЗ — чек возврата обязателен. Федеральный закон №54-ФЗ.
- Документооборот — акт возврата, заявление покупателя, акт приёмки — шаблоны в системе, заполняются автоматически из данных заказа.
Аналитика возвратов — данные для принятия решений
Кастомный дашборд в админке, данные из b_sale_order + кастомная таблица возвратов:
- процент возвратов по категориям, брендам, менеджерам, периодам;
- топ причин возврата. Если «Не соответствует описанию» в топ-3 — проблема в карточках товара, а не в клиентах;
- финансовый срез: сумма возвратов, средний чек возврата, соотношение рефанд/обмен/баланс;
- алерты: если процент возвратов по конкретному SKU превысил 15% — уведомление категорийному менеджеру.
Обмен и замена — сохраняем продажу
Не каждый возврат — потерянная выручка. Обмен через CSaleOrder::Update с пересчётом корзины:
- замена на тот же товар другого размера/цвета — новая позиция в
b_sale_basket, старая — на возврат; - обмен на другой товар с доплатой — автоматический расчёт разницы, допплата через тот же платёжный метод;
- генерация накладной на отправку обменного товара через API службы доставки.
Обратная логистика — интеграции
-
СДЭК —
POST /v2/ordersсtype: 2(возврат). Автоматическая заявка на забор, трекинг через webhook. - Boxberry — API парсельшопов для выбора ПВЗ возврата.
- Почта России — формирование обратной накладной через API отправлений.
- Трекинг обратной посылки в личном кабинете — статусы подтягиваются через агента на cron.
Как проходит настройка под ключ
- Аудит текущего процесса — анализируем бизнес-логику, фиксируем статусы и интеграции.
- Проектирование workflow — схема статусов, правила автоодобрения, маршрутизация.
- Разработка ЛК покупателя и админки — компоненты, гриды, формы, REST-контроллеры.
- Интеграция с платёжками и 1С — настройка каждого обработчика, тест рефандов.
- Автоматизация 54-ФЗ и уведомлений — подключение ОФД, шаблонов писем, SMS.
- Интеграция служб доставки — СДЭК, Boxberry, Почта России.
- Тестирование — полный цикл: заказ → возврат → рефанд → чек → 1С.
- Обучение сотрудников и передача документации.
Результаты внедрения
| Блок | Что получаете |
|---|---|
| Документация | Техническое задание, описание workflow, схему интеграций |
| Код и конфигурация | Готовые компоненты, настройки инфоблоков, HL-блоков, статусов, прав |
| Интеграция с платежками | Подключение ЮKassa, CloudPayments, Тинькофф, Apple Pay/Google Pay |
| Обмен с 1С | Настройка CommerceML, документ возврата в 1С |
| Автоматизация 54-ФЗ | Чек возврата через ОФД, фискализация |
| Обучение | Видеоинструкции для менеджеров и администраторов |
| Поддержка | 1 месяц гарантийного сопровождения после внедрения |
Чек-лист проверки перед запуском
- Проверен рефанд через каждую платёжку (частичный и полный).
- Тест 54-ФЗ: чек возврата корректен, уходит в ОФД.
- Обмен с 1С: документ «Возврат товаров от покупателя» создаётся без ошибок.
- ЛК покупателя: все поля, загрузка фото, выбор способа возврата.
- Автоодобрение до порога срабатывает.
- Уведомления (email/SMS/push) приходят.
- Остатки после приёмки обновляются.
- Аналитика считает метрики корректно.
Сроки внедрения
| Компонент | Сроки |
|---|---|
| ЛК покупателя (форма + статусы) | 3-5 дней |
| Админка менеджера (грид + действия) | 3-5 дней |
| Интеграция с платёжными системами | 2-3 дня |
| Обмен с 1С (документ возврата) | 3-5 дней |
| Автоматизация (54-ФЗ, уведомления, остатки) | 2-3 дня |
| Обратная логистика (СДЭК, Boxberry) | 2-3 дня |
| Итого | 2-4 недели |
Почему это окупается за месяц?
Сравните: ручная обработка возврата занимает 25 минут, после автоматизации — 3 минуты. Это в 8 раз быстрее. При 15 возвратах в день высвобождается целая ставка менеджера. Экономия на зарплате — до 1.2 млн рублей в год. Плюс рост повторных покупок: клиент, которому легко вернуть товар, приходит снова.
Закажите настройку возвратов под ключ в вашем Битриксе. Свяжитесь с нами — получите бесплатную оценку проекта и коммерческое предложение в течение дня.







