Настройка обмена контрагентами между 1С и 1С-Битрикс
Синхронизация контрагентов — критичная задача для B2B-магазинов: зарегистрированный на сайте клиент-юрлицо должен автоматически появиться в 1С как контрагент со всеми реквизитами. Обратный сценарий тоже важен: существующий клиент 1С получает личный кабинет на сайте с историей заказов. Стандартный CommerceML передаёт данные покупателей в составе заказов, но для полноценного обмена справочником контрагентов этого недостаточно.
Что передаётся в стандартном обмене
В XML заказа блок <Контрагенты> содержит данные покупателя:
<Контрагент>
<Ид>USER_1C_ID</Ид>
<Наименование>ООО "Ромашка"</Наименование>
<ИНН>7701234567</ИНН>
<КПП>770101001</КПП>
<Роль>Покупатель</Роль>
<АдресРегистрации>
<Представление>г. Москва, ул. Ленина, 10</Представление>
</АдресРегистрации>
</Контрагент>
1С при обработке заказа находит или создаёт контрагента по ИНН. Если контрагент уже существует — обновляет реквизиты только при явном разрешении в настройках обмена.
Связка пользователя сайта с контрагентом 1С
Для B2B-сценариев важно хранить постоянную ссылку «пользователь сайта → контрагент в 1С». Хранится в пользовательском поле UF_1C_ID таблицы b_user. После первого обмена заказом 1С возвращает идентификатор (GUID) созданного контрагента, Битрикс сохраняет его в профиле пользователя.
Это позволяет при следующем заказе не создавать контрагента повторно, а привязывать заказ к существующему. Без этой связки в 1С накапливаются дубли контрагентов — особенно при заказах без авторизации.
Синхронизация индивидуальных цен
Если в 1С контрагенту назначена индивидуальная цена или скидка — её нужно применять при оформлении заказа на сайте. Два подхода:
Через тип цен. В 1С создать отдельный вид цен для каждой группы клиентов (розница, опт, дилер). На сайте — соответствующие типы цен, привязанные к группам пользователей. При синхронизации пользователь добавляется в нужную группу.
Через REST API при авторизации. При входе пользователя — запрос к 1С по UF_1C_ID для получения текущей скидки и применение её в сессии. Более гибко, но сложнее в реализации.
Выгрузка справочника контрагентов из 1С на сайт
Если нужно перенести существующую клиентскую базу из 1С на сайт (создать учётные записи для всех контрагентов), стандартный обмен это не делает — нужен отдельный скрипт импорта. Для каждого контрагента из 1С создаётся пользователь на сайте, ему отправляется письмо с ссылкой для установки пароля.
Сроки настройки
Настройка базовой связки контрагентов через заказы — 4–6 часов. С синхронизацией индивидуальных цен — 1–3 дня. Перенос клиентской базы из 1С на сайт — 1–2 дня в зависимости от объёма.







