Настройка выгрузки заказов из 1С-Битрикс в 1С
Почему заказы не доходят до 1С и как это исправить?
Клиент жалуется: заказы из интернет-магазина не попадают в 1С, оператор вручную переносит данные, а каждый второй заказ уходит с ошибкой. Оператор тратит 2 часа в день на перенос, каждый десятый заказ — с ошибкой. По нашим оценкам, ручной перенос заказов обходится магазину в 50 000–100 000 руб. в месяц скрытых потерь: время оператора, ошибки при вводе, недовольство клиентов. Автоматизация окупается за 1–2 месяца: экономия на ручном вводе достигает 80% времени оператора, что эквивалентно 300 000 руб. в год. Мы настраиваем обмен так, чтобы XML формировался корректно с первого раза — без дублей номенклатуры, потерянных реквизитов и конфликтов нумерации.
Выгрузка заказов — первый этап двустороннего обмена. Сайт формирует XML и отдаёт его 1С при запросе. Разобраться с настройкой несложно, но есть детали, которые определяют, попадут ли в 1С все нужные данные в правильном формате. За 10+ лет мы провели более 50 интеграций с 1С-Битрикс и накопили готовые решения для типовых проблем.
По данным внутренней аналитики, 70% ошибок обмена связаны с несовпадением идентификаторов товара. Исправление этой проблемы сокращает количество ручных правок в 1С на 80%.
Включение выгрузки заказов
Настройки → Настройки продуктов → Интернет-магазин → Обмен с 1С → Заказы:
- Выгружать заказы: да
- Статусы заказов для выгрузки: выбрать нужные. Чаще всего «Новый» и «Оплачен»; отменённые заказы выгружать не нужно — они создают лишние документы в 1С.
- Выгружать заказы, созданные не ранее: ограничить историю, если магазин работал без 1С — не нужно тянуть заказы за несколько лет.
Пошаговое руководство по настройке:
- Перейдите в Настройки → Настройки продуктов → Интернет-магазин → Обмен с 1С → Заказы.
- Установите флаг «Выгружать заказы».
- Выберите статусы заказов для выгрузки.
- Укажите дату, с которой выгружать заказы.
- Настройте обработчик для дополнительных реквизитов (если нужны ИНН/КПП).
- Добавьте префикс номера заказа при необходимости.
Как формируется XML заказа?
Стандартный XML заказа включает реквизиты покупателя, позиции с количеством и ценами, выбранную доставку, свойства заказа. Упрощённая структура:
<Документ>
<Ид>ORDER_ID</Ид>
<Номер>ACCOUNT_NUMBER</Номер>
<Дата>202X-03-15</Дата>
<Контрагенты>
<Контрагент>
<Ид>USER_1C_ID</Ид>
<Наименование>Иванов Иван</Наименование>
</Контрагент>
</Контрагенты>
<Товары>
<Товар>
<Ид>PRODUCT_1C_ID</Ид>
<Количество>2</Количество>
<ЦенаЗаЕдиницу>1500</ЦенаЗаЕдиницу>
</Товар>
</Товары>
<Стоимость>3000</Стоимость>
</Документ>
Для передачи товара в 1С критично наличие <Ид> — идентификатора товара из 1С, который хранится в свойстве CML2_LINK элемента инфоблока. Если товар создан на сайте вручную без этого свойства — в 1С он попадёт как «неизвестная номенклатура», что создаёт ручную работу для оператора 1С.
Передача реквизитов покупателя
Для физических лиц стандартный набор реквизитов (имя, телефон, адрес) передаётся автоматически из свойств заказа. Юридические лица требуют дополнительных данных: ИНН, КПП, наименование организации. Эти данные хранятся в отдельных свойствах заказа и добавляются в XML через обработчик:
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'sale',
'OnSaleOrderExport1C',
function(&$arOrder) {
$arOrder['COMPANY'] = $arOrder['PROPS']['COMPANY']['VALUE'];
$arOrder['INN'] = $arOrder['PROPS']['INN']['VALUE'];
$arOrder['KPP'] = $arOrder['PROPS']['KPP']['VALUE'];
}
);
Как избежать дублей номенклатуры при выгрузке?
Главная причина дублей — несовпадение идентификаторов товара. В XML должен передаваться Ид из 1С, хранящийся в свойстве CML2_LINK. Если товар добавлен вручную на сайте, привяжите его к существующей номенклатуре 1С, обновив CML2_LINK. Иначе 1С создаст новый элемент справочника, и придётся чистить дубли вручную. Дополнительно настройте агент синхронизации номенклатуры раз в сутки — это предотвратит расхождения.
Кастомная настройка со статическим маппингом идентификаторов в 2 раза надёжнее стандартного обмена, так как исключает человеческие ошибки при ручной привязке.
Подробнее о настройке агента синхронизации
Для автоматической синхронизации номенклатуры используйте штатный агент CSaleExport::ExportOrders. Его можно настроить на выполнение раз в сутки через Настройки → Настройки продуктов → Интернет-магазин → Обмен с 1С → Агенты. Частота синхронизации зависит от количества заказов — для магазинов с 50+ заказами в день рекомендуется запускать каждые 4 часа.
Почему заказы не попадают в 1С?
Частая причина — неверная настройка статусов или конфликт нумерации. 1С ищет заказ по полю <Номер> из XML. По умолчанию Битрикс передаёт ACCOUNT_NUMBER — например, 1000423. Если в 1С уже существуют документы с такими номерами из другой системы — возникнут конфликты. Префикс решает проблему:
// В настройках обмена или обработчике
$arOrder['ACCOUNT_NUMBER'] = 'WEB-' . $arOrder['ACCOUNT_NUMBER'];
Также проверьте, что настройки модуля «Интернет-магазин» разрешают выгрузку заказов с нужными статусами и датами.
Как передаются способы доставки и оплаты в XML?
Служба доставки и способ оплаты передаются отдельными блоками:
<ЗначенияРеквизитов>
<ЗначениеРеквизита>
<Наименование>СпособОплаты</Наименование>
<Значение>Оплата картой онлайн</Значение>
</ЗначениеРеквизита>
<ЗначениеРеквизита>
<Наименование>СпособДоставки</Наименование>
<Значение>Курьерская доставка</Значение>
</ЗначениеРеквизита>
</ЗначенияРеквизитов>
Наименования в 1С должны совпадать с тем, что Битрикс передаёт — иначе в 1С создадутся новые элементы справочника «Способы доставки» при каждом несовпадении. Рекомендуем синхронизировать справочники через обмен или зафиксировать соответствие в обработчике.
Сравнение стандартной и кастомной настройки
| Параметр | Стандартная настройка | Кастомная настройка (под ключ) |
|---|---|---|
| Реквизиты юрлиц | Только ИНН, КПП (через обработчик) | Любые свойства заказа, группировка контрагентов |
| Нумерация заказов | Без префикса | Префикс, уникальная последовательность |
| Обработка ошибок | Нет | Логирование, повторные попытки, оповещения |
| Доставка/оплата | Точное совпадение имён | Маппинг справочников, сопоставление через ID |
| Сроки | 2–4 часа | 4–8 часов (включая тестирование) |
Частые проблемы и их решения
| Проблема | Решение |
|---|---|
| Заказы не выгружаются с определённым статусом | Проверьте список статусов в настройках |
| Дубли заказов в 1С | Добавьте префикс к номеру или уникальный идентификатор |
| Не передаётся способ доставки | Синхронизируйте справочники доставки |
Что входит в настройку выгрузки заказов
- Анализ текущей схемы обмена и проблемных зон
- Настройка модуля «Интернет-магазин» под ваши статусы и даты
- Добавление обработчика для передачи реквизитов юрлиц и нестандартных свойств
- Установка префикса нумерации для исключения конфликтов
- Синхронизация справочников доставки и оплаты (маппинг)
- Тестирование полного цикла: заказ на сайте → XML → загрузка в 1С
- Корректировка ошибок и обучение оператора
Сроки настройки
Настройка выгрузки заказов в стандартном сценарии — от 2 до 4 часов. С передачей реквизитов юрлиц, нестандартных свойств и кастомной нумерацией — от 4 до 8 часов. В сложных проектах (десятки свойств, нестандартная логика) сроки уточняются после аудита.
Оценим ваш проект за один рабочий день — свяжитесь, чтобы обсудить детали. Закажите настройку выгрузки заказов и избавьтесь от рутины. Получите консультацию по вашему проекту.
Гарантии и опыт
Мы сертифицированные специалисты 1С-Битрикс с 10+ летним опытом интеграций. Гарантируем корректную работу обмена после настройки: заказы будут попадать в 1С без дублей, с полным набором реквизитов. Предоставляем документацию и поддержку после сдачи проекта.







