Настройка омниканальной аналитики клиентов 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка омниканальной аналитики клиентов 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка омниканальной аналитики клиентов 1С-Битрикс

Клиент пришёл из Instagram, положил товар в корзину с телефона, оплатил с ноутбука, а потом позвонил в поддержку. Это четыре точки контакта в трёх каналах — и в стандартном отчёте Битрикс они будут разорваны. Омниканальная аналитика сшивает эти касания в единую историю клиента. Задача технически нетривиальная: нужно связать несколько идентификаторов пользователя из разных подсистем.

Идентификаторы клиента в Битрикс

Каждая подсистема использует свой ключ:

Подсистема Идентификатор Таблица
Сайт (авторизованный) USER_ID b_user
Сайт (анонимный) FUSER_ID b_sale_fuser
CRM CONTACT_ID / LEAD_ID b_crm_contact
Телефония PHONE b_crm_contact_detail
Email 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 или телефон совпадает — это один клиент. Склейка запускается агентом или триггером при каждом новом контакте.

Сбор данных по каналам

Веб-сессии — событие OnBeforeUserLogin и OnAfterUserAuthorize фиксируют UTM-метки из $_GET и сохраняют источник в пользовательские поля b_uts_user или в bl_customer_profile.

CRM-активности — модуль crm пишет активности в b_crm_activity. При входящем звонке, письме или чате создаётся запись с OWNER_ID (контакт или лид) и TYPE_ID. Связать активность с профилем клиента можно через OWNER_IDb_crm_contact → email/телефон.

Email-рассылки — если используется модуль subscribe, открытия и клики фиксируются в b_subscribe_log. Для внешних ESP (SendPulse, UniSender) нужен вебхук, который пишет события в кастомную таблицу bl_email_events.

Аналитические запросы

После сшивки данных можно строить отчёты по клиентскому пути. Пример — количество заказов по первому источнику привлечения:

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.

Что настраиваем

  • Таблицу bl_customer_profile с механизмом склейки дублей по email/телефону
  • Обработчики событий авторизации для захвата UTM-меток и канала
  • Агент синхронизации CRM-контактов с профилями сайта через API \Bitrix\Crm\ContactTable
  • Дашборд в административном разделе с отчётом по каналам и конверсии по источникам