Налаштування обміну контрагентами між 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 дні залежно від обсягу.







