Carrot Quest и 1С-Битрикс: полная настройка трекинга и автоматизации

На одном из проектов — интернет-магазин электроники с 15 000 товаров и 3000 ежедневных посетителей, обрабатывающий около 200 заказов в день — мы заметили, что Carrot Quest идентифицирует только 20% авторизованных сессий. Остальные визиты оставались анонимными, хотя пользователи были залогинены. Прич
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Carrot Quest и 1С-Битрикс: полная настройка трекинга и автоматизации
Средний
~1-2 недели

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

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

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

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1460
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1019
  • Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    764
  • Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    882
  • Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    809
  • Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1165

На одном из проектов — интернет-магазин электроники с 15 000 товаров и 3000 ежедневных посетителей, обрабатывающий около 200 заказов в день — мы заметили, что Carrot Quest идентифицирует только 20% авторизованных сессий. Остальные визиты оставались анонимными, хотя пользователи были залогинены. Причина — отсутствие вызова carrotquest.identify() после авторизации. Стандартный сниппет в шаблоне не передавал email и ID. После внедрения корректной идентификации с хэш-верификацией количество идентифицированных сессий выросло до 95%, и триггерные цепочки начали работать. За счёт этого конверсия в чат-диалог увеличилась на 40%, а средний чек заказа — на 12%. Документация Carrot Quest подтверждает, что идентификация с хэшем является обязательным условием для верификации данных. В результате кампания по автоматизации маркетинга принесла дополнительно $4.5k–6.5k выручки в месяц.

Проблемы, которые решаем

Carrot Quest — не просто чат, а платформа для аналитики и автоматизации. Но без интеграции с Битрикс вы теряете:

  • Связь между поведением на сайте и CRM-данными.
  • Возможность сегментировать пользователей по реальным покупкам.
  • Триггерные сообщения, основанные на событиях воронки.

Мы решаем эти проблемы через полноценную интеграцию: от установки трекинг-кода до серверных событий. Carrot Quest в связке с Битрикс работает эффективнее, чем любой отдельный чат — конверсия в диалог выше в 2-3 раза. Наша команда специализируется на интеграциях Битрикс более 7 лет и реализовала свыше 50 проектов по настройке Carrot Quest.

Как настроить трекинг событий из 1С-Битрикс?

Установка трекинг-кода и идентификация. Код Carrot Quest вставляется в шаблон перед </body>. Ключевая операция — carrotquest.identify(). Без неё все события анонимны.

(function(){ /* стандартный сниппет Carrot Quest */ })(); carrotquest.connect('YOUR_API_KEY'); <?php if ($USER->IsAuthorized()): $userId = $USER->GetID(); $userEmail = $USER->GetEmail(); $userName = $USER->GetFullName(); $hash = hash_hmac('sha256', $userId, 'YOUR_SECRET_KEY'); ?> carrotquest.identify({ '$user_id': <?= json_encode($userId) ?>, '$email': <?= json_encode($userEmail) ?>, '$name': <?= json_encode($userName) ?>, '$phone': <?= json_encode(getUserPhone($userId)) ?>, 'orders_count': <?= getUserOrdersCount($userId) ?>, 'total_spent': <?= getUserTotalSpent($userId) ?>, }, <?= json_encode($hash) ?>); <?php endif; ?> 

Хэш HMAC-SHA256 верифицирует данные на стороне Carrot Quest и предотвращает подстановку чужого ID. Шаги по настройке идентификации:

  1. Получить API-ключ и секретный ключ из личного кабинета Carrot Quest.
  2. Вставить сниппет трекинга в шаблон сайта.
  3. Добавить вызов identify() для авторизованных пользователей с передачей user_id, email и хэша.
  4. Проверить в консоли браузера, что вызов успешен.

Отправка событий из каталога. Carrot Quest ценен как аналитическая платформа, когда получает события из всей воронки. Примеры:

// Просмотр карточки товара carrotquest.track('Просмотр товара', { product_id: <?= $arResult['ID'] ?>, product_name: <?= json_encode($arResult['NAME']) ?>, price: <?= $arResult['CATALOG_PRICE_1'] ?? 0 ?>, category: <?= json_encode($sectionName) ?>, }); 
// Добавление в корзину carrotquest.track('Товар добавлен в корзину', { product_id: productId, product_name: productName, price: price, quantity: quantity, }); 
// Оформление заказа carrotquest.track('Заказ оформлен', { order_id: <?= $orderId ?>, total_price: <?= $orderTotal ?>, items_count: <?= $itemsCount ?>, payment_method: <?= json_encode($paymentMethod) ?>, }); 

При обмене через CommerceML данные о товарах и заказах также могут передаваться в Carrot Quest для синхронизации каталога.

Почему важна идентификация пользователя через hash?

Без hash любой может подставить чужой ID и испортить статистику. Хэш-верификация — стандарт безопасности для обмена данными между Битрикс и Carrot Quest. Мы гарантируем, что профили будут принадлежать реальным пользователям. В одном из проектов после внедрения хэша количество ошибочных профилей снизилось с 15% до 0,5%.

Какие события стоит трекать в первую очередь?

Фокус на события, которые влияют на конверсию: просмотр товара, добавление в корзину, начало оформления заказа, успешный заказ. Также полезны события "поиск по сайту" и "просмотр категории". Для интернет-магазина это минимальный набор, позволяющий построить воронку и настроить триггеры на брошенные корзины. Добавьте также событие "возврат товара" — оно критично для сегментации.

Интеграция через PHP API Carrot Quest

Помимо JS-трекинга, Carrot Quest имеет REST API для серверной стороны. Это нужно, когда событие происходит вне браузера — например, изменение статуса заказа. Мы используем REST API Carrot Quest для отправки событий.

\Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSaleStatusOrder', function (\Bitrix\Main\Event $event) { $order = $event->getParameter('ENTITY'); $userId = $order->getUserId(); $userEmail = getUserEmail($userId); $statusId = $order->getField('STATUS_ID'); $payload = [ 'id' => $userEmail, 'id_type' => 1, 'event' => 'Статус заказа изменён', 'params' => [ 'order_id' => $order->getId(), 'new_status' => $statusId, ], ]; $ch = curl_init('https://api.carrotquest.io/v1/users/events'); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token YOUR_API_KEY', 'Content-Type: application/json']); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_exec($ch); curl_close($ch); } ); 

Сравнение JS и серверного трекинга:

Характеристика JS-трекинг Серверный API
Инициатор события Действие пользователя в браузере Серверные обработчики (смена статуса)
Зависимость от интернета Требуется загрузка страницы Выполняется на сервере
Атрибуты Доступны данные страницы Любые данные из БД
Event-воронка Просмотр, корзина, заказ Статусы, возвраты, подписки

Сегментация и триггерные цепочки

После идентификации можно обновлять атрибуты при каждом визите: last_visit, cart_value, loyalty_level. Это позволяет строить сегменты для триггерных сообщений. В интерфейсе Carrot Quest создаются цепочки без кода:

  • Пользователь просмотрел товар → не добавил в корзину за 30 минут → чат-сообщение.
  • Заказ доставлен → через 7 дней email с просьбой отзыва.
  • Пользователь не заходил 60 дней → скидочный купон.

Отладка трекинга

В консоли браузера carrotquest.track() и carrotquest.identify() выводят подтверждение в режиме разработки. В админ-панели Carrot Quest раздел «Аналитика → События» показывает данные в реальном времени.

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

  • Забыли вызвать carrotquest.identify() на страницах, где пользователь авторизуется через ajax.
  • Не передали hash — события уходят, но идентификация считается неверифицированной.
  • Используете один API-ключ для нескольких сайтов — данные смешиваются.
  • Не проверяете консоль на 404 ошибки скрипта Carrot Quest.

Этапы интеграции

Этап Описание Сроки
Аналитика и проектирование Определение воронки, список событий, атрибутов 1 день
Установка кода и идентификация Размещение сниппета, настройка identify() 1 день
Трекинг событий каталога Подключение просмотров, корзины, заказов 2-3 дня
Серверный API Обработка смены статусов через REST 1 день
Настройка триггеров Создание цепочек в интерфейсе Carrot Quest 1-2 дня

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

  • Установка и проверка трекинг-кода.
  • Идентификация пользователей с хэш-верификацией.
  • Трекинг событий (просмотр, корзина, заказ).
  • Серверный API для событий вне браузера.
  • Сегментация по атрибутам.
  • Документация по всем добавленным событиям.
  • Тестирование и исправление ошибок.

Сроки и стоимость

Сроки — от 5 до 10 дней в зависимости от количества событий. Стоимость рассчитывается индивидуально после анализа структуры вашего сайта. Свяжитесь с нами для расчёта стоимости интеграции — подберём оптимальный состав работ.

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