Автоматизация · 12 мин
Как передаются заказы из Битрикс в 1С
Как настроить передачу заказов из Битрикс в 1С: модуль обмена, CommerceML, настройка статусов, контрагентов и типичные ошибки синхронизации.
Интернет-магазин на «1С-Битрикс: Управление сайтом» и учётная система на «1С: Управление торговлей» или «1С: Комплексная автоматизация» работают в связке через штатный механизм обмена. Заказ, оформленный покупателем на сайте, не попадает в 1С мгновенно «сам по себе»: его передаёт специальный модуль обмена, который формирует файл в формате CommerceML и отправляет его в 1С по расписанию или в реальном времени. Понимание этой цепочки помогает правильно настроить интеграцию и быстро находить причину, когда заказы «теряются».
Обмен работает в обе стороны: из Битрикс в 1С уходят заказы, покупатели и оплаты, а из 1С на сайт возвращаются товары, цены, остатки и статусы заказов. В этой статье разобрана именно передача заказов: какие способы существуют, как настроить типовой обмен, что проверить после запуска и какие ошибки встречаются чаще всего.
Как устроен обмен заказами между Битрикс и 1С
В основе интеграции лежит открытый формат CommerceML — XML-стандарт, разработанный специально для обмена коммерческими данными между сайтами и учётными системами. Битрикс выгружает заказ в виде XML-документа, где указаны состав заказа, покупатель, контакты, способ доставки, оплата и служебные идентификаторы. 1С принимает этот документ, создаёт на его основе документ «Заказ покупателя» и связывает его с контрагентом и номенклатурой.
Технически обмен инициируется со стороны 1С: она обращается по HTTPS к специальному скрипту сайта (типовой путь вида /bitrix/admin/1c_exchange.php), проходит авторизацию и запрашивает новые заказы. Битрикс отдаёт только те заказы, которые ещё не выгружались или изменились с прошлого сеанса — это снижает нагрузку и исключает дубли при корректной настройке.
Важный момент: после загрузки заказа 1С отправляет на сайт ответ с результатом — успешная регистрация или ошибка. На сайте у заказа проставляется признак выгрузки, поэтому при следующем сеансе он не будет отправлен повторно, если не изменился.
Способы передачи заказов: сравнение вариантов
Существует несколько подходов к интеграции, и выбор зависит от объёма заказов, требований к скорости и наличия доработок в 1С.
Способы передачи заказов
Подходит большинству магазинов: не требует программирования, поддерживается вендором. Ограничение — обмен идёт по расписанию или по событию, гибкость маппинга полей ограничена настройками.
Заказ уходит в 1С сразу после оформления. Требует включённого режима реального времени и стабильного канала; при недоступности 1С заказ ждёт следующего сеанса.
Даёт полный контроль над полями и логикой, подходит для нестандартных процессов. Минус — разработка, поддержка и тестирование ложатся на владельца.
Внешние сервисы-шины связывают Битрикс и 1С без доработок. Подходят при сложном ландшафте систем, но добавляют ещё одну точку отказа и расходы на подписку.
Для типового магазина без нестандартных бизнес-процессов оптимален штатный модуль обмена: он покрывает заказы, контрагентов, оплаты, отгрузки и статусы. Кастомную разработку стоит закладывать только когда типовой маппинг полей принципиально не закрывает задачу — например, когда заказ должен сразу превращаться в специфический документ с нестандартными реквизитами.
Подготовка: что проверить перед настройкой
Перед запуском обмена убедитесь, что обе системы соответствуют базовым требованиям. На стороне сайта нужен «1С-Битрикс: Управление сайтом» с установленным модулем интернет-магазина (sale) и доступом по HTTPS — обмен по незащищённому соединению сегодня считается небезопасным и часто блокируется настройками по умолчанию.
На стороне 1С потребуется актуальная версия конфигурации с поддерживаемым модулем обмена с сайтом. Для «1С: Управление торговлей» модуль обмена либо встроен, либо устанавливается отдельным расширением — зависит от релиза конфигурации. Проверьте также, что сервер 1С (или компьютер, где запущен клиент при файловой базе) имеет доступ в интернет к адресу сайта.
Сверьте версию модуля обмена с релизом вашей 1С — несовместимость даёт ошибки формата при загрузке.
Проверьте, что сайт открывается по https:// и сертификат действителен.
Создайте на сайте отдельного пользователя для обмена с правами только на выгрузку заказов.
Выпишите статусы заказов в Битрикс и решите, каким состояниям в 1С они соответствуют.
Настройка обмена на стороне сайта
В административном разделе Битрикс перейдите в настройки интеграции с 1С: «Магазин → Настройки → Интеграция с 1С» (путь может незначительно отличаться в зависимости от версии). Здесь задаются ключевые параметры выгрузки заказов.
Основные настройки, которые нужно заполнить:
- Выгружать только оплаченные заказы — включайте, если в 1С должны попадать только подтверждённые продажи. Для большинства магазинов опцию оставляют выключенной, чтобы менеджеры видели все заказы.
- Выгружать заказы только с разрешённой доставкой — аналогичный фильтр по отгрузке.
- Выгружать заказы начиная с заказа № — позволяет не тащить в 1С старые тестовые заказы.
- Сайт, заказы которого выгружать — актуально при многосайтовости.
- Заменять валюту при выгрузке — если в 1С валюта документов отличается от валюты сайта.
Отдельно создайте пользователя, от имени которого 1С будет обращаться к сайту. Не используйте учётную запись администратора: пользователю обмена достаточно прав на экспорт заказов. Это ограничит ущерб в случае компрометации пароля, который хранится в настройках 1С.
Настройка на стороне 1С
В 1С откройте настройку обмена с сайтом: в «Управлении торговлей» это обычно раздел «Администрирование → Обмен с сайтами» либо «CRM и маркетинг → Обмен с сайтом» в зависимости от релиза. Создайте новый узел обмена и укажите параметры подключения.
- 1Создайте узел обмена с сайтом и укажите адрес: https://ваш-сайт/bitrix/admin/1c_exchange.php
- 2Введите логин и пароль пользователя обмена, созданного на сайте
- 3Нажмите «Проверить соединение» — 1С должна успешно авторизоваться
- 4На вкладке обмена заказами задайте соответствие статусов, способ загрузки контрагентов и организацию
- 5Настройте расписание автоматического обмена или включите режим реального времени
- 6Выполните первый обмен вручную и проверьте результат в журнале
Ключевой блок настройки — соответствие данных. Определите, как 1С будет искать контрагентов: по ИНН и КПП для юридических лиц, по телефону или email для физических. Неверный выбор критерия поиска — главная причина дублей контрагентов. Для номенклатуры убедитесь, что товары на сайте и в 1С связаны одинаковыми идентификаторами (обычно связь устанавливается при первой выгрузке каталога из 1С на сайт).
Режим реального времени включается отдельной настройкой: сайт сам инициирует обращение к 1С при создании или изменении заказа. Это требует, чтобы 1С была доступна извне (через публикацию на веб-сервере) — для файловых баз и закрытых сетей такой режим часто недоступен, и тогда остаётся обмен по расписанию с интервалом от нескольких минут.
Проверка результата после запуска
После первого сеанса обмена создайте тестовый заказ на сайте и проследите его путь. В 1С должен появиться документ «Заказ покупателя» с корректным составом, контрагентом и суммами. На сайте у заказа должен измениться признак выгрузки, а в статусе — отразиться обработка, если настроена обратная передача статусов.
Как проверить результат
Заказ покупателя создан, товары и суммы совпадают с сайтом
Заказ не появился или создан с пустым составом — смотрите журнал обмена
Покупатель привязан к существующему контрагенту или создан один новый
На каждый заказ создаётся новый дубль контрагента
Тот же заказ не загружается повторно без изменений
Заказ дублируется при каждом сеансе — сбит признак выгрузки
После обработки в 1С статус на сайте обновляется
Статус не меняется — проверьте маппинг статусов в узле обмена
Журнал обмена — первый инструмент диагностики. В 1С ошибки загрузки фиксируются в журнале регистрации и в отчёте о результатах обмена, на стороне Битрикс — в логах модуля обмена. Типовые сообщения об ошибках указывают на конкретный проблемный элемент: не найдена номенклатура, не удалось записать контрагента, ошибка формата XML.
Типичные ошибки и ограничения обмена
Большинство проблем интеграции сводится к нескольким повторяющимся сценариям. Их знание экономит часы диагностики.
Отдельно учтите ограничение по конфликтам изменений: типовой обмен не умеет «сливать» правки. Если менеджер изменил состав заказа в 1С, а покупатель в тот же момент — в личном кабинете на сайте, при следующем сеансе победит одна из версий. Примите регламент: после передачи в 1С заказ редактируется только в 1С, а на сайте — только до выгрузки.
Перед запуском обмена в боевом режиме выгрузите каталог товаров именно из 1С на сайт, а не наоборот. Тогда идентификаторы номенклатуры изначально совпадут, и заказы будут корректно привязываться к товарам без ручного сопоставления.
Что делать, если заказы не приходят в 1С
Диагностику начинайте с простого: проверьте, выполняется ли сеанс обмена вообще. Запустите обмен вручную из узла обмена в 1С и посмотрите на результат. Если соединение не устанавливается — проблема в доступности сайта, авторизации или SSL-сертификате. Если сеанс проходит, но заказы не загружаются — проблема в фильтрах или формате данных.
Как выбрать действие
Если типовая диагностика не помогает, включите расширенное логирование обмена: в настройках узла можно указать сохранение файлов обмена на диск. Открыв XML-файл, вы увидите, что именно передал сайт, и сможете сопоставить это с тем, что загрузила 1С.
Что важно запомнить
Заказы из Битрикс в 1С передаются штатным модулем обмена в формате CommerceML по расписанию или в реальном времени. Успех интеграции определяется тремя вещами: корректным маппингом контрагентов и номенклатуры, согласованными статусами и тестовым обменом на копии базы перед боевым запуском.
Частые вопросы
Как часто можно запускать обмен заказами?
Технических ограничений на частоту нет: при небольшом числе заказов интервал в 5–15 минут не создаёт заметной нагрузки. Если нужна мгновенная передача, используйте режим реального времени, но убедитесь, что 1С доступна для входящих подключений с сайта.
Передаются ли в 1С оплаты и отгрузки?
Да, типовой обмен передаёт документы оплаты и отгрузки вместе с заказом, если это включено в настройках узла обмена. В 1С на их основе создаются соответствующие документы, связанные с заказом покупателя.
Что будет, если заказ изменили на сайте после выгрузки?
При следующем сеансе обмена Битрикс передаст заказ повторно, и 1С обновит существующий документ, если он ещё не проведён по цепочке продажи. Если по заказу уже созданы отгрузки или счета, обновление может быть заблокировано — тогда правки вносятся вручную в 1С.
Можно ли передавать заказы из Битрикс24, а не из «Управления сайтом»?
Да, для Битрикс24 существует отдельная интеграция с 1С через коннектор, синхронизирующий счета, сделки и товары. Механизм отличается от обмена CommerceML и настраивается в разделе интеграций Битрикс24.
Почему контрагент создаётся дублем, хотя он уже есть в 1С?
Критерий поиска контрагента в настройках обмена не срабатывает: например, поиск настроен по ИНН, а у физического лица ИНН не заполнен. Настройте несколько критериев поиска (телефон, email) и приведите данные покупателей к единому формату.
Безопасно ли хранить пароль от сайта в настройках 1С?
Риск минимален, если для обмена создан отдельный пользователь с узкими правами только на выгрузку заказов и используется HTTPS. Никогда не указывайте в настройках обмена учётную запись администратора сайта.