Битрикс24 и RetailCRM — обе полноценные CRM, поэтому первый вопрос интеграции не «как связать», а «кто за что отвечает». Без чёткого разделения ролей две системы начинают дублировать сущности и конфликтовать за право менять статус. Правильная связка распределяет функции и обменивается только нужными данными.
Зачем связывать две CRM
Ситуация встречается чаще, чем кажется: компания ведёт корпоративные процессы, задачи и телефонию в Битрикс24, а обработку розничных заказов интернет-магазина — в RetailCRM, заточенной под e-commerce. Связка нужна, чтобы:
- заказы из RetailCRM попадали в Битрикс24 как сделки для сквозной аналитики и KPI;
- клиентская база была единой, без дублей контактов;
- статусы и оплаты синхронно отражались в обеих системах;
- руководство видело общую воронку, а операционка оставалась в профильной CRM.
Разделение ролей — главное решение
До технической настройки договоритесь, какая система за что отвечает. Типовые схемы:
| Данные | Мастер | Комментарий |
|---|---|---|
| Розничные заказы | RetailCRM | Обработка, статусы, склад |
| Сделки/воронка B2B | Битрикс24 | Менеджерские процессы |
| Единая клиентская база | Одна из систем | Вторая — читает |
| Аналитика продаж | Битрикс24 | Сводная воронка |
Чаще RetailCRM остаётся мастером розничных заказов и статусов, а в Битрикс24 они зеркалируются сделками только для отчётности — без обратной правки. Возможна и обратная схема, когда головной системой выступает Битрикс24, а RetailCRM отвечает лишь за операционную обработку розницы. Универсально верного варианта нет — выбор зависит от того, где реально работают менеджеры и где руководство смотрит цифры. Главное, чтобы для каждой сущности мастер был ровно один.
На чём строится обмен
Интеграция двух облачных CRM делается по их REST API — прямого готового коннектора «из коробки» между ними обычно нет, поэтому пишется прослойка.
- Битрикс24 REST: входящий вебхук с правами на CRM, методы
crm.deal.*,crm.contact.*. - RetailCRM API v5: apiKey, методы
/orders,/customers,/orders/history. - Прослойка обмена: сервис/скрипт, который слушает вебхуки одной системы и пишет в другую, ведёт маппинг и лог.
Коннектор должен уметь принимать вебхуки с двух сторон, сопоставлять сущности по перекрёстным идентификаторам и вести журнал обмена с указанием направления и результата. Отдельно продумайте защиту эндпоинтов: вебхуки принимайте только с доверенных адресов и по секретному токену, чтобы посторонний не смог инициировать создание сделок или изменение статусов.
Порядок настройки
Рекомендуемая последовательность:
- Зафиксировать роли и направление каждого потока данных.
- Создать доступы: вебхук Битрикс24 и apiKey RetailCRM.
- Свести справочники: статусы RetailCRM ↔ стадии сделок Битрикс24, типы оплаты и доставки.
- Настроить поток заказ → сделка (создание/обновление в Битрикс24).
- Настроить синхронизацию клиентов с дедупликацией.
- Прогнать тест по нескольким заказам в обе стороны.
Состав заказа и суммы сделки
Чтобы сводная аналитика в Битрикс24 была достоверной, из заказа RetailCRM в сделку нужно перенести не только статус, но и деньги с составом.
- Сумму заказа записывайте в поле сделки (
OPPORTUNITY), учитывая скидки и доставку по согласованному правилу. - Товарные позиции переносите через
crm.deal.productrows, сопоставляя товары по артикулу. - Валюту и налоги фиксируйте одинаково в обеих системах, иначе суммы в отчётах разойдутся.
Клиенты и защита от дублей
Главная техническая боль связки двух CRM — дубли контактов, ведь у каждой системы свой ID.
- Ключ сопоставления — телефон в нормализованном виде (E.164) и/или email.
- Храните перекрёстные ID: ID контакта Битрикс24 в поле клиента RetailCRM и наоборот.
- Перед созданием всегда ищите существующего клиента по ключу.
- Определите правило разрешения конфликтов: чьё поле «главнее» при расхождении.
Статусы и обратный поток
Синхронизация статусов работает по вебхукам и history, с учётом мастера.
| Событие RetailCRM | Действие в Битрикс24 |
|---|---|
| Новый заказ | Создать сделку в нужной воронке |
| Смена статуса заказа | Перевести стадию сделки |
| Оплата заказа | Отметить в сделке, зафиксировать сумму |
Если мастер — RetailCRM, обратную правку статусов из Битрикс24 отключают, чтобы не возникало циклической перезаписи. Каждое изменение логируется с указанием источника события. Чтобы вебхук об изменении, которое пришло из соседней системы, не спровоцировал ответное обновление и бесконечный цикл, помечайте такие операции служебным признаком и пропускайте их при обратной отправке.
Итог
Интеграция Битрикс24 и RetailCRM — это в первую очередь управленческое решение о ролях, и только потом техника. Определите мастера для заказов, сделок и клиентов, свяжите системы через REST API и прослойку-коннектор, сведите справочники и защититесь от дублей контактов перекрёстными ID. Одностороннее зеркалирование статусов надёжнее двусторонней правки.
Мы в B2Bsite проектируем и внедряем связки двух CRM без конфликтов: распределяем роли, пишем коннектор с логами и дедупликацией, сводим справочники и статусы. Поможем выстроить схему, где каждая система делает своё, а данные остаются едиными.
Частые вопросы
Зачем компании сразу две CRM?
Обычно Битрикс24 ведёт корпоративные процессы, задачи и телефонию, а RetailCRM — розничные заказы интернет-магазина. Связка нужна для единой клиентской базы и сводной аналитики.
Какая система должна быть мастером?
Чаще RetailCRM остаётся мастером розничных заказов и статусов, а Битрикс24 получает их зеркалом в виде сделок для отчётности. Роли фиксируют до начала интеграции.
Есть ли готовый коннектор между ними?
Прямого коробочного обмена обычно нет, поэтому пишется прослойка на REST API обеих систем — вебхук Битрикс24 и API v5 RetailCRM.
Как не наплодить дубли клиентов?
Сопоставлять по нормализованному телефону и email, хранить перекрёстные ID в обеих системах и всегда искать существующего клиента перед созданием нового.
Почему нельзя править статусы в обе стороны?
Если обе системы считают себя мастером, они начинают циклически перезаписывать статусы. Поэтому обратную правку от немастера отключают, оставляя одностороннее зеркалирование.
Как синхронизируются статусы заказов?
Через вебхуки и метод history мастер-системы: новый заказ создаёт сделку, смена статуса переводит стадию, оплата фиксируется в сделке. Все события логируются с источником.
Где размещать логику обмена?
Удобнее в отдельном сервисе-коннекторе, а не внутри одной из CRM. Так обмен проще логировать, масштабировать и обновлять независимо от систем.
Поможем с настройкой и поддержкой Интеграции и связки систем
Поможем с настройкой, доработкой и поддержкой Интеграции и связки систем.