Налаштування динамічного коллтрекінгу на 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування динамічного коллтрекінгу на 1С-Бітрікс
Проста
~1 робочий день
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • 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
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування динамічного колтрекінгу на 1С-Бітрікс

Динамічний колтрекінг вирішує одну конкретну проблему: яке рекламне оголошення або канал привів клієнта, який зателефонував. Без нього у звіті по рекламі видно кліки та конверсії на сайті, але дзвінки випадають із картини. У e-commerce і сфері послуг, де 40–60% заявок надходить по телефону, це робить аналітику марною.

Принцип роботи: кожному відвідувачу показується унікальний підмінний номер телефону з пулу. Система колтрекінгу зіставляє номер із візитом і фіксує UTM-мітки, джерело, ключове слово. Після дзвінка номер повертається в пул.

Вибір провайдера та встановлення скрипта

Основні провайдери на ринку: Callibri, CoMagic, Roistat, Ringostat, Mango Office. У кожного — свій JS-скрипт і API. Архітектурно всі вони працюють однаково: вставляєте скрипт у <head>, він підміняє телефони на сторінці за CSS-селектором або через span із data-атрибутом.

Для Бітрікс скрипт додаємо через стандартний механізм Bitrix\Main\Page\Asset:

// /local/php_interface/init.php
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
    'main',
    'OnEpilog',
    function () {
        if (\Bitrix\Main\Application::getInstance()->getContext()->getRequest()->isAdminSection()) {
            return;
        }

        $asset = \Bitrix\Main\Page\Asset::getInstance();
        $asset->addString(
            '<script type="text/javascript">
                (function(w,d,n,t){
                    // Код скрипта провайдера колтрекінгу
                    w[n] = w[n] || function(){(w[n].q=w[n].q||[]).push(arguments)};
                    t = d.createElement("script");
                    t.async = 1;
                    t.src = "https://tracker.callibri.ru/callibri.js";
                    d.head.appendChild(t);
                })(window,document,"callibri");
                callibri("setCounter", "YOUR_COUNTER_ID");
            </script>',
            true // у head
        );
    }
);

Додавання через OnEpilog гарантує, що скрипт не потрапить у кеш сторінок Бітрікс і не буде вставлений двічі при AJAX-навігації.

Розмітка телефонів на сайті

Для коректної підміни телефон має бути розмічений. Рекомендований спосіб — data-атрибути на span:

<!-- Замість -->
<span class="phone">+7 (495) 123-45-67</span>

<!-- Використовуємо -->
<span class="calltracking-phone"
      data-original-phone="+74951234567"
      data-phone-display="+7 (495) 123-45-67">
    +7 (495) 123-45-67
</span>

Скрипт провайдера знаходить елементи за класом або атрибутом і замінює вміст. Якщо телефон виводиться через компоненти Бітрікс (шапка, картка товару), правку робимо в шаблоні компонента — зазвичай header.php або власний шаблон.

Для сайтів із кількома телефонами (основний, відділ продажів, сервіс) — кожному можна призначити окремий пул номерів через групи підміни. Налаштовується в особистому кабінеті провайдера.

Налаштування пулу номерів

Розмір пулу визначає точність відстеження. Розрахунок: якщо на сайті одночасно 20 відвідувачів і середня тривалість сесії 3 хвилини, потрібно мінімум 20 номерів. Провайдери дають рекомендацію виходячи з трафіку.

Для Бітрікс-сайтів із кешуванням є нюанс: якщо сторінка закешована на рівні Бітрікс (керований кеш або nginx), скрипт колтрекінгу може завантажитися із затримкою або не завантажитися зовсім при вимкненому JS. Рішення — телефон у HTML ставити як fallback, а підміна відбувається через JS вже після завантаження.

Передача даних у Google Analytics / Яндекс.Метрику

Провайдери колтрекінгу вміють передавати дзвінки як події в GA4 і Метрику. Для цього в налаштуваннях провайдера вказуємо ID лічильників. Додатково — прокидання User ID для зшивки сесій:

// Після ініціалізації лічильника GA4
callibri('onCallStart', function(callData) {
    gtag('event', 'phone_call_start', {
        'call_id'     : callData.callId,
        'utm_source'  : callData.utmSource,
        'utm_campaign': callData.utmCampaign,
    });
});

callibri('onCallEnd', function(callData) {
    gtag('event', 'phone_call_end', {
        'call_id'  : callData.callId,
        'duration' : callData.duration,
        'is_target': callData.isTarget,
    });
});

Перевірка коректності підміни

Після встановлення потрібно перевірити, що підміна працює для всіх каналів. Чеклист:

  • Відкрити сайт з UTM-мітками ?utm_source=yandex&utm_medium=cpc — телефон має змінитися
  • Відкрити без UTM (прямий захід) — має відображатися дефолтний номер із пулу
  • Перевірити закешовані сторінки: після прогріву кешу bitrix:cache телефон все одно має підмінятися
  • Переконатися, що телефон в og:image і Schema.org (якщо є) — статичний, не підмінюваний
  • Перевірити мобільну версію — click-to-call має вести на підмінний номер

Склад робіт

  • Реєстрація акаунта у провайдера, формування пулу номерів
  • Встановлення JS-скрипта в шаблон Бітрікс через Asset API
  • Розмітка телефонів у шаблонах компонентів
  • Налаштування груп підміни (якщо кілька телефонів)
  • Інтеграція з GA4 / Яндекс.Метрикою через події
  • Тестування підміни по всіх джерелах трафіку

Терміни: базове налаштування (один телефон, один пул) — 3–5 робочих днів. Складні схеми з кількома телефонами, групами та інтеграцією в CRM — 1–2 тижні.