Налаштування обміну товарних позицій Бітрикс24 та 1С
Коли менеджер виставляє комерційну пропозицію або рахунок у Бітриксі24, він вибирає товари з каталогу CRM. Цей каталог — окрема сутність, ніяк не пов'язана з 1С за замовчуванням. Актуальні ціни, залишки, нові позиції — все це потрібно синхронізувати вручну або налаштувати автоматичний обмін.
Каталог товарів у CRM Бітрикса24
CRM-каталог зберігається у таблицях b_crm_product (позиції) та b_crm_product_section (розділи). Це не той же каталог, що використовується у модулі інтернет-магазину sale — це окрема структура, специфічна для CRM. Доступ через REST: crm.product.list, crm.product.get, crm.product.add, crm.product.update.
Кожний товар має поля: NAME, PRICE, CURRENCY_ID, DESCRIPTION, XML_ID. Поле XML_ID — ключове для синхронізації: саме через нього встановлюється відповідність між позицією у CRM та номенклатурою у 1С.
Напрямок обміну
Зазвичай обмін йде в одну сторону: 1С → Бітрикс24. 1С є головною системою для номенклатури та цін, CRM отримує оновлення. Зворотний обмін (менеджер додав товар у CRM — з'явився у 1С) зустрічається рідко та вимагає додаткової бізнес-логіки.
Що передається з 1С у Бітрикс24:
| Дані | Коментар |
|---|---|
| Назва товару | Як відображається у КП та рахунку |
| Артикул / XML_ID | Ідентифікатор для сопоставлення |
| Ціна (одна або кілька типів цін) | Роздріб, опт, дилер |
| Одиниця виміру | шт, кг, м тощо |
| Розділ/група | Структура каталогу |
| Ознака активності | Зняті з продажу товари |
Залишки у CRM-каталог зазвичай не передаються — вони потрібні у каталозі інтернет-магазину, а не у CRM.
Механізм синхронізації
Варіант 1: REST API. Скрипт або сервіс на стороні 1С (через зовнішній компонент обміну) викликає методи Бітрикса24:
-
crm.product.listз фільтром заXML_ID— перевірити, чи існує товар. -
crm.product.update— оновити ціну та дані існуючого. -
crm.product.add— додати новий товар.
Пакетні операції виконуються через batch-запити REST API (до 50 методів в одному запиті), що прискорює синхронізацію великих каталогів.
Варіант 2: Штатний модуль 1С-Бітрикс24. Використовується CommerceML-вивантаження з 1С. У цьому випадку синхронізується каталог інтернет-магазину (якщо він є), а CRM-каталог може заповнюватися з нього через додатковий скрипт — компонент обміну створює/оновлює записи у b_crm_product на основі даних з b_iblock_element.
Типи цін
Якщо у 1С кілька типів цін (роздріб, опт), у Бітриксі24 CRM також можна зберігати кілька цін через властивості товару або через прайс-листи модуля каталогу. Для CRM-угод використовується лише базова ціна товару — менеджер змінює її вручну у позиції. Якщо потрібні автоматичні типи цін у CRM, потрібна доробка.
Періодичність обміну
- Каталог та ціни — раз на день достатньо для більшості бізнесів. Якщо ціни змінюються кілька разів на день — кожні 1-2 години.
-
Запуск — через агенти Бітрикса (
\CAgent::AddAgent) або cron.
Налаштування обміну товарних позицій займає 4-8 годин при чистому каталозі з коректними XML_ID у 1С.







