Обмен статусами оплаты между 1С и 1С-Битрикс — задача, которую нельзя решить стандартными средствами без доработок. Типичная ситуация: покупатель оплатил заказ через эквайринг, в Битрикс статус изменился, а 1С об этом не знает. Или наоборот — в 1С провели оплату по счёту, а на сайте висит «ожидает оплаты». Бухгалтеры тратят часы на ручную сверку, заказы не резервируются вовремя, покупатели не получают уведомления. Мы настраиваем автоматическую синхронизацию по каждому сценарию: онлайн-эквайринг, оплата по счёту, наличные при получении. Рассмотрим технические детали передачи статусов, покажем кейс из практики и расскажем о типовых ошибках. Наша команда занимается интеграциями более 7 лет и реализовала свыше 50 проектов с двунаправленным обменом.
Основные сценарии оплаты
| Сценарий | Источник оплаты | Направление синхронизации | Сложность |
|---|---|---|---|
| Онлайн-оплата на сайте | Эквайринг (Сбер, Тинькофф, ЮKassa) | Битрикс → 1С | Низкая |
| Оплата по счёту (B2B) | Банковская выписка | 1С → Битрикс | Средняя |
| Оплата наличными при получении | Курьер/ПВЗ | Зависит от схемы | Высокая |
Автоматическая синхронизация через регламентное задание в 10 раз быстрее ручной разноски — это подтверждает наша практика.
Как передать статус оплаты из Битрикс в 1С?
При успешной оплате в Битрикс создаётся платёж (Bitrix\Sale\Payment) с PAID = Y. При следующем обмене заказов этот статус передаётся в XML:
<Документ>
<Ид>заказ-guid</Ид>
<Оплачен>true</Оплачен>
<СуммаОплаты>4500.00</СуммаОплаты>
<ДатаОплаты>сегодняшняя_дата</ДатаОплаты>
</Документ>
В 1С при импорте заказа с <Оплачен>true</Оплачен> можно настроить автоматическое создание документа «Поступление денежных средств» (для 1С:Бухгалтерия) или операции в регистре взаиморасчётов (для 1С:УТ). Это автоматизирует разноску онлайн-платежей и снимает с бухгалтера рутину. Подробнее о формате обмена читайте в официальной документации CommerceML.
Как передать статус оплаты из 1С в Битрикс?
Когда банковская выписка разнесена в 1С и документ «Поступление» проведён, нужно обновить заказ в Битрикс?
Механизм: при изменении статуса документа заказа в 1С (или при проведении поступления денег) отмечаем заказ как «Оплачен». При следующем обмене 1С отправляет обновлённый статус.
На стороне Битрикс обработчик обновления заказа:
Пример кода
```php // При получении обновления заказа из 1С if ($arOrder['PAID'] === 'Y') { $payment = $order->getPaymentCollection()->getItemByIndex(0); if ($payment && $payment->isPaid() === false) { $payment->setPaid('Y'); $order->save(); // Запуск автоматических событий: email покупателю, уведомление менеджеру } } ```Настройка частичной оплаты
В B2B-сценариях часто встречается частичная оплата: аванс 30% → остаток 70%. В 1С это два документа поступления, в Битрикс — один заказ с несколькими платежами. При передаче частичной оплаты из 1С в Битрикс можно создавать отдельные платежи для каждого поступления или обновлять единственный платёж с нарастающей суммой. Второй вариант проще в реализации. Индикация для покупателя: «Оплачено: 1 500 из 5 000 руб. (30%)» — через кастомное свойство заказа PAID_AMOUNT, обновляемое при каждом обмене.
Настройка частичной оплаты включает следующие шаги:
- Определите, какие заказы допускают частичную оплату (например, B2B-клиенты).
- Настройте в 1С формирование нескольких платежей по одному заказу.
- Реализуйте в Битрикс обновление единственного платежа с суммой, равной сумме всех поступлений.
Синхронизация возвратов
Возврат денег — критичный случай. Если возврат инициирован в 1С, нужно уведомить Битрикс, чтобы обновить статус заказа, запустить возврат через эквайринг и отправить уведомление покупателю. Если возврат инициирован через эквайринг (чарджбэк), Битрикс получает уведомление, статус платежа меняется на «Возвращён» — это нужно передать в 1С для создания документа возврата. Двусторонняя синхронизация возвратов устраняет расхождения в учёте.
Кейс: синхронизация оплаты в реальном времени
У нашего клиента — интернет-магазин с высокой долей B2B (60% заказов оплачиваются по счёту через банк). Проблема: заказ в 1С переходил в статус «Оплачен» только после ручной разноски выписки (1–2 дня). Покупатель видел неактуальный статус. Мы настроили автоматическую загрузку банковской выписки в 1С через сервис «1С-ДиректБанк». Выписка загружается и автоматически разносится раз в 30 минут. После разноски регламентное задание запускает обмен с Битрикс, обновляет статус заказа. Задержка от поступления платежа до обновления статуса на сайте — 30–60 минут. Покупатель получает email о подтверждении оплаты без участия менеджера. Дополнительно при поступлении оплаты в Битрикс автоматически запускается резервирование товара на складе в 1С.
Что входит в настройку обмена
| Этап | Длительность | Описание |
|---|---|---|
| Аудит | от 1 дня | Анализ текущей схемы обмена, выявление несоответствий |
| Проектирование | от 2 дней | Разработка архитектуры синхронизации для ваших сценариев |
| Реализация | от 3 дней | Написание обработчиков, настройка правил обмена |
| Тестирование | от 1 дня | Покрытие всех кейсов: онлайн-оплата, счёт, возврат |
| Деплой | от 1 дня | Развёртывание на боевом сервере, передача документации |
В результате вы получаете: настроенный обмен статусами, документацию по схеме и обучение ваших сотрудников. Стоимость рассчитывается индивидуально. Гарантируем стабильную синхронизацию при любых нагрузках.
Получите консультацию по вашему проекту — оценим сроки и сложность. Закажите настройку обмена статусами, и ваша бухгалтерия забудет о ручной сверке.







