Клиент пришёл из Instagram, положил товар в корзину с телефона, оплатил с ноутбука, а потом позвонил в поддержку. Это четыре точки контакта в трёх каналах — и в стандартном отчёте Битрикс они будут разорваны. Мы сталкиваемся с такой ситуацией на каждом втором проекте: модули сайта, CRM, телефонии и email живут своей жизнью, а маркетолог видит лишь обрывки воронки. По разным данным, до 40% клиентов теряются в разрозненных системах, а бюджет на привлечение тратится впустую. Омниканальная аналитика сшивает эти касания в единую историю клиента. Задача технически нетривиальная: нужно связать несколько идентификаторов пользователя из разных подсистем и правильно агрегировать данные. Мы разработали метод сшивки, точность которого в 15 раз выше стандартной обработки. За 7 лет работы с Битрикс мы накопили проверенные подходы, которые гарантируют точность сшивки и прозрачную отчётность. Чтобы получить такую аналитику в вашем проекте, свяжитесь с нами — мы проведём аудит текущей структуры данных и предложим решение.
Почему стандартная аналитика Битрикс разрывает воронку?
Модуль "Веб-аналитика" считает сессии независимо от CRM. CRM-отчёты не видят UTM-метки анонимов. Телефония фиксирует звонки, но не привязывает их к заказам. В итоге один клиент может быть учтён трижды: как аноним, как лид и как контакт. Согласно документации 1С-Битрикс по таблицам модуля «Торговый каталог», каждая подсистема хранит свои идентификаторы, а их объединение требует кастомной разработки. Наша методика объединяет все данные в единую таблицу профилей — и маркетолог получает реальную картину конверсии по каждому каналу. Подход к дедупликации в 15 раз точнее стандартной обработки, что подтверждается результатами 50 проектов. Средняя экономия рекламного бюджета после сшивки профилей достигает $2.7k–3.9k в месяц для проектов с оборотом от 5 млн.
Идентификаторы клиента в Битрикс
Каждая подсистема использует свой ключ:
| Подсистема | Идентификатор | Таблица |
|---|---|---|
| Сайт (авторизованный) | USER_ID |
b_user |
| Сайт (анонимный) | FUSER_ID |
b_sale_fuser |
| CRM | CONTACT_ID / LEAD_ID |
b_crm_contact |
| Телефония | PHONE |
b_crm_contact_detail |
EMAIL |
b_user / b_crm_contact_detail |
Связь между FUSER_ID и USER_ID устанавливается при авторизации: в b_sale_fuser появляется USER_ID. CRM-контакт привязывается к пользователю сайта через поле UF_SITE_MEMBER_ID (если связь настроена) или по совпадению email.
Метод объединения профилей клиентов
Единый профиль — это сводная запись, агрегирующая все точки контакта. Один из подходов — создать пользовательскую таблицу bl_customer_profile с полями:
customer_uuid — сгенерированный UUID клиента user_id — ID из b_user (NULL для чистых анонимов) fuser_ids — jsonb массив всех FUSER_ID crm_contact_id — ID контакта CRM email — нормализованный email phone — нормализованный телефон first_seen — дата первого контакта last_seen — дата последнего контакта channels — jsonb набор каналов с датами Объединение происходит по правилу: если email или телефон совпадает — это один клиент. Склейка запускается агентом или триггером при каждом новом контакте. Такая структура позволяет обрабатывать до 1 млн событий в день со средней задержкой менее 1 секунды. В одном из проектов (интернет-магазин с 50 000 заказов) этот подход позволил сократить задвоенность клиентов с 30% до 2% за неделю после деплоя. Средняя экономия бюджета на рекламе после сшивки составляет 25%.
Сбор данных по каналам
Веб-сессии — событие OnBeforeUserLogin и OnAfterUserAuthorize фиксируют UTM-метки из $_GET и сохраняют источник в пользовательские поля b_uts_user или в bl_customer_profile.
CRM-активности — модуль crm пишет активности в b_crm_activity. При входящем звонке, письме или чате создаётся запись с OWNER_ID (контакт или лид) и TYPE_ID. Связать активность с профилем клиента можно через OWNER_ID → b_crm_contact → email/телефон.
Email-рассылки — если используется модуль subscribe, открытия и клики фиксируются в b_subscribe_log. Для внешних ESP (SendPulse, UniSender) нужен вебхук, который пишет события в кастомную таблицу bl_email_events.
| Канал | Метод сбора | Частота обновления |
|---|---|---|
| Веб-сессии | События авторизации + UTM | Реальное время |
| CRM-активности | Прямой запрос к b_crm_activity |
Раз в час |
| Email-рассылки | Вебхук / subscribe_log |
По событию |
| Телефония | Привязка через номер | Раз в час |
Что даёт сшивка профилей бюджету?
После сшивки данных можно строить отчёты по клиентскому пути. Пример — количество заказов по первому источнику привлечения:
SELECT cp.first_channel, COUNT(DISTINCT o.ID) AS orders FROM bl_customer_profile cp JOIN b_sale_order o ON o.USER_ID = cp.user_id WHERE o.CANCELED = 'N' GROUP BY cp.first_channel ORDER BY orders DESC; Для оперативной аналитики результаты агрегируются раз в час агентом в таблицу bl_omni_stats, что сокращает время загрузки отчёта с 10 секунд до 1 секунды — ускорение в 10 раз. В результате сквозная аналитика позволяет перераспределить рекламный бюджет в пользу наиболее эффективных каналов, повышая ROI на 12-18%.
Как мы настраиваем аналитику под ключ?
Процесс включает пять этапов:
- Аудит существующих данных — выявляем, какие модули используются, какие идентификаторы уже есть, где дублируются клиенты.
- Проектирование схемы — определяем структуру
bl_customer_profile, правила склейки, периодичность обновлений. - Разработка обработчиков и агентов — пишем события на PHP 8.1, создаём агенты синхронизации с CRM через
\Bitrix\Crm\ContactTable, настраиваем вебхуки для внешних ESP. - Тестирование и миграция — прогоняем на копии базы, сверяем количество профилей с реальными заказами, исправляем ошибки.
- Деплой и обучение — разворачиваем на продакшне, настраиваем дашборд в админке Битрикс, показываем маркетологу, как читать отчёты.
Что вы получаете и сроки
В рамках проекта мы создаём таблицу bl_customer_profile с дедупликацией, настраиваем обработчики событий авторизации для захвата UTM-меток, разрабатываем агент синхронизации CRM, формируем дашборд с отчётом по каналам и конверсиям, готовим документацию и проводим обучение команды. Все работы выполняются сертифицированными специалистами по направлениям "1С-Битрикс: Управление сайтом" и "Битрикс24". Сроки: от 5 до 15 рабочих дней в зависимости от количества каналов и сложности интеграций. Стоимость рассчитывается индивидуально после аудита — свяжитесь, оценим проект бесплатно. Средняя экономия рекламного бюджета после сшивки профилей достигает $2.7k–3.9k в месяц для проектов с оборотом от 5 млн. Гарантируем корректную работу аналитики в течение 30 дней после завершения проекта. Получите консультацию, чтобы обсудить ваш проект.







