Интеграция 1С-Битрикс с сервисами сквозной аналитики
Рекламный бюджет тратится, заявки приходят, но сколько из них дошли до продажи — неизвестно. Яндекс.Метрика показывает конверсии на сайте, CRM хранит сделки, 1С фиксирует оплаты — а связи между ними нет. Сквозная аналитика замыкает цепочку: клик по рекламе → заявка на сайте → сделка в CRM → оплата в 1С. Для Битрикс это задача интеграции нескольких систем, и именно на стыках всё ломается.
Архитектура передачи данных
Сквозная аналитика строится на идентификации пользователя на всех этапах воронки. Техническая цепочка:
-
Рекламная система (Яндекс.Директ, Google Ads) — присваивает
yclid/gclidпри клике - Сайт на Битрикс — сохраняет метку в cookie и передаёт в форму заявки или заказ
- CRM / сервис аналитики — получает заявку с меткой, привязывает к рекламному источнику
- 1С — фиксирует оплату, данные возвращаются в сервис аналитики для расчёта ROI
Основные сервисы: Roistat, Calltouch, CoMagic (UIS), Callibri. Каждый имеет свой JS-трекер для сайта и API для передачи данных об офлайн-конверсиях.
Установка трекера на Битрикс
Трекер — JS-скрипт, который собирает данные о визите: источник трафика, UTM-метки, yclid/gclid, страницы просмотра, время на сайте. Скрипт устанавливается через header.php шаблона сайта или через модуль управления вставками (Настройки → Настройки продукта → Авторизация → Вставки).
Для Roistat скрипт создаёт cookie roistat_visit с номером визита. Этот номер — ключ всей интеграции: он должен попасть в заказ Битрикс и далее в CRM.
Передача номера визита в заказ. Два варианта:
-
Свойство заказа. Создаём свойство заказа типа «Строка» (
sale.order.property) с кодомROISTAT_VISIT. При оформлении заказа скрипт на фронте считывает cookie и подставляет значение в скрытое поле формы. На бэкенде — обработчикOnSaleOrderBeforeSaved, который дублирует значение в свойство заказа. -
UTM-свойства. Битрикс умеет сохранять UTM-метки через модуль
sale(настройки → свойства заказа → автозаполнение UTM). Номер визита аналитики передаётся как дополнительная UTM-метка.
Интеграция с CRM Битрикс24
Если CRM — Битрикс24, данные о лидах и сделках передаются через REST API. Сервисы аналитики (Roistat, Calltouch) имеют готовые интеграции: в настройках указываете URL портала Б24 и токен. Сервис:
- Забирает лиды/сделки через
crm.lead.list/crm.deal.list - Сопоставляет по номеру телефона, email или номеру визита (если передан в UF-поле)
- Получает статусы сделок для расчёта конверсий по стадиям
Для коробочного Битрикс с модулем crm (не Б24) готовых интеграций нет — пишется кастомный обработчик, который отправляет данные о заказах в API сервиса аналитики.
Передача офлайн-конверсий из 1С
Оплата в 1С — это финальная точка воронки. Чтобы сервис аналитики знал, что рекламный клик привёл к реальным деньгам, нужно передать данные об оплате обратно.
Схема:
- Заказ в Битрикс содержит номер визита аналитики (свойство
ROISTAT_VISIT) - При обмене с 1С номер визита передаётся как реквизит документа (добавляется в маппинг CommerceML или REST)
- При проведении оплаты в 1С — обработчик отправляет POST-запрос в API сервиса аналитики:
POST /api/push-offline-salesс данными{visit_id, revenue, order_id, date}
Для Roistat API-метод — POST https://cloud.roistat.com/api/v1/project/add-orders. Для Calltouch — POST /api/calls-service/RestAPI/orders/upload.
Альтернатива прямой интеграции из 1С — промежуточный webhook: Битрикс ловит событие OnSalePayOrder, запрашивает у 1С статус оплаты через REST API и отправляет в сервис аналитики. Это проще, если в 1С нет разработчика.
Подмена номера телефона (коллтрекинг)
Calltouch и CoMagic подменяют номер телефона на сайте — каждый посетитель видит уникальный номер, звонок по которому привязывается к визиту. На Битрикс это работает через JS-трекер, который заменяет номер в DOM.
Подводные камни:
- Композитный кеш. HTML-страница закеширована, JS-трекер подменяет номер после загрузки. Если номер вставлен как текст в шаблоне — подмена сработает. Если номер — картинка или SVG — нет.
-
Кеш компонентов. Номер телефона в компоненте
bitrix:main.includeкешируется — трекер должен искать номер по CSS-классу или data-атрибуту, а не по тексту. -
Мобильное приложение. Если сайт обёрнут в PWA через модуль
mobileapp— трекер может не загрузиться.
Сроки и объём
| Этап | Работы | Срок |
|---|---|---|
| Установка трекера + передача визита в заказ | JS, свойство заказа, обработчик | 2–3 дня |
| Интеграция с CRM (Б24) | Настройка готового коннектора, маппинг полей | 1–2 дня |
| Передача офлайн-конверсий из 1С | Доработка обмена, обработчик API | 3–5 дней |
| Коллтрекинг + тестирование | Подмена номера, проверка с композитным кешем | 1–2 дня |
Сквозная аналитика на Битрикс — это не «поставить скрипт». Это цепочка из четырёх-пяти систем, где потеря идентификатора визита на любом этапе обнуляет всю затею. Критически важно протестировать полный путь: от клика по объявлению до отражения оплаты в дашборде аналитики.







