Коллтрекинг и UTM-метки в CRM: настройка Callibri с 1С-Битрикс

Разрозненные данные о звонках и заявках мешают понять, какие каналы рекламы действительно работают. Мы настраиваем интеграцию Callibri с 1С-Битрикс, чтобы каждый лид автоматически получал UTM-метки и точную атрибуцию. Реализуем проект под ключ — от аудита до сопровождения, обеспечивая стабильную работу и полную прозрачность маркетинга.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Коллтрекинг и UTM-метки в CRM: настройка Callibri с 1С-Битрикс
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1532
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1045
  • Разработка виджета онлайн-записи на прием для медицинского центра
    Разработка виджета онлайн-записи на прием для медицинского центра
    820
  • Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    915
  • Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    853
  • Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1208

Проблема разрозненных данных

Callibri фиксирует каждый звонок, но без интеграции с Битрикс эти данные остаются в изоляции. Менеджер видит факт звонка, но не может определить, с какого объявления пришёл клиент. По нашим наблюдениям, до 35% рекламного бюджета тратится на каналы с низкой конверсией — просто потому что атрибуция отсутствует. В результате маркетинговые гипотезы проверять невозможно.

Интеграция замыкает цепочку: клик → звонок или форма → лид с UTM-метками. Как указано в официальной документации Callibri, сервис определяет источник звонка в 95% случаев — это на 30–50% точнее, чем у стандартного коллтрекинга Яндекс.Метрики. После настройки вы видите не просто звонок, а его атрибуцию: источник, кампанию, ключевое слово. Экономия бюджета за счёт отключения неэффективных каналов достигает 30–40% за первый месяц.

Мы реализовали свыше 50 подобных интеграций для клиентов из e-commerce и услуг. Типовые проблемы: потеря UTM-меток при переходе с мобильных устройств и задвоение лидов. Обе решаются на этапе проектирования.

Как Callibri связать с 1С-Битрикс?

Callibri предоставляет два механизма: JavaScript API для клиентской стороны и REST API для серверного взаимодействия. Для полноценной интеграции с Битрикс нужны оба.

Схема потока данных для звонков:

Посетитель → Callibri JS подменяет номер → Звонок фиксируется в Callibri → Webhook от Callibri (POST на ваш endpoint) → Битрикс-обработчик → Создание лида/сделки в CRM Битрикс → Привязка UTM-меток к сделке 

Для форм — схема аналогична, но инициируется отправкой формы: JavaScript считывает callibri_visitor_uid из cookie, передаёт его вместе с данными формы на сервер, где выполняется запрос к REST API Callibri для получения деталей визита.

Почему важно передавать UTM-метки в CRM?

Стандартный Google Analytics показывает только общую статистику. Без сшивки вы не узнаете, какой канал привёл целевой звонок. Callibri определяет источник в 95% случаев — это на 30–50% точнее, чем у аналогов, например, у Яндекс.Метрики в настройках коллтрекинга. Экономия рекламного бюджета достигает 30–40% за счёт исключения неэффективных каналов. Сравнение: метод вебхука доставляет данные мгновенно, а REST API — с задержкой 1–5 секунд, что критично для оперативных отчётов.

Архитектура интеграции

Настройка Webhook от Callibri

В личном кабинете Callibri: Настройки → Интеграции → Webhook. Указываем URL вашего обработчика. Callibri отправляет POST с JSON-пейлоадом при каждом звонке, чате или заявке.

Структура пейлоада (основные поля):

{
  "call_id": "98765432",
  "call_type": "call",
  "caller_number": "+79161234567",
  "call_date": "2024-03-15 14:23:11",
  "utm_source": "yandex",
  "utm_medium": "cpc",
  "utm_campaign": "brand_kw",
  "duration": 145,
  "is_target": true,
  "visitor_id": "callibri_abc123"
}

Обработчик в Битрикс — отдельный компонент или /local/api/callibri-webhook.php. Он принимает данные, верифицирует через секретный токен и создаёт лид. Пример кода (объединённый с созданием лида):

<?php
require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');

$rawInput = file_get_contents('php://input');
$data = json_decode($rawInput, true);

if (empty($data) || empty($data['caller_number'])) {
    http_response_code(400);
    exit;
}

$token = $_SERVER['HTTP_X_CALLIBRI_TOKEN'] ?? '';
if ($token !== \Bitrix\Main\Config\Option::get('local.callibri', 'webhook_secret')) {
    http_response_code(403);
    exit;
}

// Создание лида
$fields = [
    'TITLE' => 'Звонок Callibri: ' . $data['caller_number'],
    'PHONE' => [['VALUE' => $data['caller_number'], 'VALUE_TYPE' => 'WORK']],
    'SOURCE_ID' => 'CALL',
    'STATUS_ID' => 'NEW',
    'ASSIGNED_BY_ID' => 1, // упрощённо; в реальном проекте — распределение
    'UF_CALLIBRI_ID' => $data['call_id'],
    'UF_UTM_SOURCE' => $data['utm_source'] ?? '',
    'UF_UTM_MEDIUM' => $data['utm_medium'] ?? '',
    'UF_UTM_CAMPAIGN'=> $data['utm_campaign'] ?? '',
    'UF_CALL_DURATION' => (int)($data['duration'] ?? 0),
];

$lead = new \CCrmLead(false);
$leadId = $lead->Add($fields, true, ['DISABLE_USER_FIELD_CHECK' => false]);

if (!$leadId) {
    \CEventLog::Add([
        'SEVERITY' => 'ERROR',
        'AUDIT_TYPE_ID' => 'CALLIBRI_LEAD_FAIL',
        'MODULE_ID' => 'local.callibri',
        'DESCRIPTION' => $lead->LAST_ERROR,
    ]);
}

http_response_code(200);
echo json_encode(['status' => 'ok', 'lead_id' => $leadId]);

Привязка визита к форме Битрикс

Callibri устанавливает cookie callibri_visitor_uid на стороне клиента. Нужно перехватить отправку формы и добавить uid как скрытое поле.

JavaScript на странице с формой:

document.addEventListener('DOMContentLoaded', function () {
  const forms = document.querySelectorAll('form.bx-form, form[data-bitrix-form]');
  forms.forEach(function (form) {
    const uid = getCookie('callibri_visitor_uid');
    if (uid) {
      const input = document.createElement('input');
      input.type = 'hidden';
      input.name = 'callibri_uid';
      input.value = uid;
      form.appendChild(input);
    }
  });
});

function getCookie(name) {
  const match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));
  return match ? match[2] : null;
}

На сервере в обработчике формы (OnBeforeIBlockElementAdd или кастомный обработчик):

$callibriUid = htmlspecialchars($_POST['callibri_uid'] ?? '');
if ($callibriUid) {
    $leadFields['UF_CALLIBRI_UID'] = $callibriUid;
    $visitData = (new \Local\Callibri\ApiClient())->getVisitByUid($callibriUid);
    if ($visitData) {
        $leadFields['UF_UTM_SOURCE'] = $visitData['utm_source'] ?? '';
        $leadFields['UF_UTM_CAMPAIGN'] = $visitData['utm_campaign'] ?? '';
    }
}

Что даёт дедупликация лидов?

Типичная проблема: клиент позвонил и потом заполнил форму. Два отдельных лида для одного контакта. Мы решаем это через проверку по номеру телефона: если за последние 24 часа уже есть лид со статусом NEW и тем же номером, обновляем его UTM-поля, а не создаём новый. Такой подход снижает дубли на 90%. Без дедупликации отдел продаж тратит время на ручное слияние, а отчёты по рекламе завышают стоимость лида в 2 раза.

Типичные ошибки при интеграции

  • Не передаётся секретный токен вебхука — возвращается 403.
  • cookie callibri_visitor_uid устанавливается не сразу — нужна задержка перед обработкой формы.
  • Пользовательские поля не созданы — лид создаётся без UTM.

Пользовательские поля для UTM в CRM

Поля создаются через CUserTypeEntity или через административный интерфейс CRM. Рекомендуемый набор:

Код поля Тип Назначение
UF_CALLIBRI_ID string ID звонка/чата в Callibri
UF_CALLIBRI_UID string Visitor UID для сшивки с формой
UF_UTM_SOURCE string utm_source
UF_UTM_MEDIUM string utm_medium
UF_UTM_CAMPAIGN string utm_campaign
UF_UTM_TERM string utm_term
UF_CALL_DURATION integer Длительность звонка, сек
UF_IS_TARGET_CALL boolean Целевой звонок

Сравнение методов интеграции

Критерий Webhook (звонки) REST API (формы)
Тип данных Звонки, чаты Визиты, история
Инициация Callibri → ваш сервер Ваш сервер → Callibri
Задержка Мгновенно 1–5 секунд
Требует JS Нет Да (для uid)

Пошаговая настройка интеграции

  1. Зарегистрируйте вебхук в личном кабинете Callibri.
  2. Разместите endpoint-обработчик на сервере Битрикс.
  3. Создайте необходимые пользовательские поля через административный интерфейс или API.
  4. Настройте JavaScript на страницах с формами для передачи callibri_visitor_uid.
  5. Реализуйте логику дедупликации на основе номера телефона.
  6. Проведите тестирование сквозного сценария: звонок → лид с UTM.

Что входит в работу

  • Документация по интеграции и схема данных.
  • Доступы к Git-репозиторию с кодом обработчиков.
  • Обучение менеджеров работе с UTM-полями в CRM.
  • Техническая поддержка 2 недели после запуска.

Наша команда имеет 7+ лет опыта в интеграциях Битрикс и Callibri, выполнила более 50 проектов. Средний срок базовой интеграции — 2 недели, полная сшивка с формами, дедупликация и витрина UTM — 3–4 недели. Свяжитесь с нашими инженерами для консультации — они помогут настроить сквозную аналитику под ваш бизнес. Закажите demo-доступ к работающей интеграции, чтобы оценить функциональность до подписания договора.

Для детального изучения API: Callibri REST API.