Разработка интеграции Битрикс24 с маркетплейсами
Интеграция Битрикс24 с Ozon, Wildberries или Яндекс Маркет нужна компаниям, которые используют CRM для управления клиентами и хотят видеть заказы с маркетплейсов в едином пространстве. Типичная проблема: менеджер работает в Битрикс24, но данные о заказах смотрит в личном кабинете маркетплейса в другой вкладке. Интеграция убирает этот разрыв.
Что интегрируется и зачем
Битрикс24 — это в первую очередь CRM и инструменты командной работы, а не полноценная e-commerce платформа. Поэтому интеграция с маркетплейсами решает конкретные задачи:
Заказы → CRM. Каждый заказ с маркетплейса создаётся как сделка (crm.deal.add) или лид в Битрикс24. Менеджер видит заказ, обрабатывает его, звонит клиенту — всё внутри CRM. Статусы синхронизируются в обе стороны.
Уведомления. При поступлении нового заказа или изменении его статуса — уведомление ответственному менеджеру через im.notify.system.add или через задачу/дело в CRM.
Аналитика. Данные о продажах с маркетплейсов попадают в отчёты CRM. Можно видеть воронку по источникам, сравнивать маркетплейсы между собой.
Коммуникации. Сообщения покупателей из маркетплейса (там, где маркетплейс предоставляет API для переписки, как Ozon) — в ленте активности сделки в Битрикс24.
Архитектура: промежуточный сервис
Битрикс24 и маркетплейс — два независимых API. Прямого способа соединить их нет. Нужен промежуточный сервис (middleware), который:
- Слушает webhook'и от маркетплейса (новые заказы, изменения статусов)
- Переводит данные маркетплейса в формат Битрикс24 REST API
- Создаёт/обновляет сущности в Битрикс24 через REST
- Обратно: при изменении статуса сделки в Битрикс24 — обновляет статус заказа на маркетплейсе
Этот сервис — отдельное приложение, которое можно:
- Развернуть как собственный сервер (PHP/Node.js/Python)
- Оформить как приложение для маркетплейса Битрикс24 (тогда оно доступно другим пользователям)
- Использовать готовые no-code коннекторы типа n8n/Make (для простых сценариев)
Для серьёзной нагрузки (сотни заказов в день) нужен собственный сервис с очередью и retry-логикой.
Маппинг данных: сделка vs заказ
Данные заказа на маркетплейсе не совпадают с полями сделки в Битрикс24. Нужен маппинг:
| Поле заказа маркетплейса | Поле в Битрикс24 CRM |
|---|---|
| order_id | UF_CRM_DEAL_* (пользовательское поле) или TITLE |
| buyer name / email | crm.contact (поиск или создание) |
| product list | crm.deal.productrows.set |
| total_price | OPPORTUNITY |
| status | STAGE_ID (маппинг статусов) |
| marketplace name | SOURCE_ID или пользовательское поле |
| created_at | DATE_CREATE |
| delivery address | CONTACT.ADDRESS или пользовательское поле |
Маппинг статусов — отдельная задача. Статусы маркетплейса и стадии воронки Битрикс24 нужно явно сопоставить в конфигурации интеграции.
Работа с контактами: дедупликация
Один покупатель может размещать заказы с разных маркетплейсов и прямо на сайте. При создании контакта в Битрикс24 нужно проверять дубли через crm.duplicate.find.by.comm (поиск по email/телефону). Если контакт уже есть — привязывать сделку к нему, а не создавать нового.
На маркетплейсах персональные данные покупателей часто скрыты (WB не раскрывает email, Ozon — только по запросу). В таком случае в качестве идентификатора используется внешний ID покупателя на маркетплейсе, который хранится в пользовательском поле контакта.
Синхронизация статусов
Обратная синхронизация (Битрикс24 → маркетплейс) нужна, когда менеджер меняет стадию сделки и это должно отражаться в кабинете маркетплейса. Это работает через:
- Подписку на событие
ONCRMDEALUPDATEв Битрикс24 - При изменении
STAGE_ID— проверку, является ли сделка заказом с маркетплейса (по пользовательскому полюUF_MARKETPLACE_SOURCE) - Вызов соответствующего API маркетплейса для обновления статуса
Для WB это /api/v3/orders/{orderId}/status, для Ozon — /v3/posting/fbs/status/set. Не все статусы доступны для изменения извне — маркетплейсы разрешают переводить заказ только в определённые статусы из определённых состояний.
Товарный каталог: нужна ли синхронизация
Часть компаний хочет не только заказы, но и синхронизацию каталога: товары из Битрикс24 (или с сайта на Битрикс) должны автоматически выгружаться на маркетплейс. Это отдельная, более объёмная задача (см. интеграцию 1С-Битрикс с маркетплейсами).
В контексте Битрикс24 каталог товаров (crm.product.*) часто используется для CRM-продуктов, а не как полноценный e-commerce каталог. Если каталог ведётся именно там — синхронизация возможна, но требует нетривиального маппинга на атрибуты маркетплейса.
Сроки разработки
| Сценарий | Срок |
|---|---|
| Один маркетплейс, только заказы → лиды/сделки в CRM | 3–5 недель |
| Один маркетплейс, двусторонняя синхронизация статусов | 5–8 недель |
| Два маркетплейса, общая интеграция с CRM и уведомлениями | 8–12 недель |
| Полный цикл: заказы + каталог + аналитика, несколько маркетплейсов | 14–20 недель |
Готовые решения и их ограничения
На маркетплейсе Битрикс24 есть несколько приложений-коннекторов для Ozon и WB. Они закрывают базовые сценарии и стоят существенно меньше разработки с нуля. Ограничения: фиксированная логика маппинга, невозможность добавить нестандартные поля, зависимость от обновлений вендора приложения.
Кастомная разработка оправдана, когда: специфическая логика обработки заказов, интеграция с несколькими системами одновременно (маркетплейс + 1С + склад), требования к надёжности выше, чем может обеспечить готовое приложение.







