Интеграция 1С-Битрикс с JivoSite
JivoSite — один из самых распространённых онлайн-чатов на российском рынке. Базовая установка занимает 5 минут: вставил виджет-скрипт и готово. Но есть уровень интеграции, который делает чат реально полезным для бизнеса: передача данных о пользователе из Битрикс в агентское окно Jivo, синхронизация контактов и обращений с CRM.
Уровни интеграции
Уровень 1 — базовый. Установка скрипта JivoSite на все страницы сайта. Для Битрикс это делается через административный интерфейс: Настройки → Настройки продукта → JS-фрагменты или через компонент bitrix:main.include в шаблоне сайта.
<!-- В шаблоне сайта, перед </body> -->
<script src="//code.jivosite.com/widget/{JIVO_ID}" async></script>
Уровень 2 — передача данных пользователя. Когда посетитель авторизован на сайте Битрикс, передаём в Jivo его имя, email, телефон — агент сразу видит, с кем разговаривает.
Уровень 3 — события и custom data. Передаём контекст: текущую страницу, товары в корзине, историю заказов — агент видит поведение клиента без переспрашивания.
Уровень 4 — интеграция с CRM Битрикс24. Обращения из Jivo автоматически создают лиды или контакты в Битрикс24 CRM.
Передача данных авторизованного пользователя
JivoSite предоставляет JavaScript API для передачи контактных данных:
// В шаблоне Битрикс, после авторизации пользователя
// Данные берутся из PHP и передаются в JS через data-атрибуты или переменные
<?php if ($USER->IsAuthorized()): ?>
<script>
jivo_api.setContactInfo({
name: "<?= htmlspecialchars($USER->GetFullName()) ?>",
email: "<?= htmlspecialchars($USER->GetEmail()) ?>",
phone: "<?= htmlspecialchars(getUserPhone($USER->GetID())) ?>",
description: "ID: <?= $USER->GetID() ?>, заказов: <?= getUserOrdersCount($USER->GetID()) ?>"
});
</script>
<?php endif; ?>
getUserPhone() и getUserOrdersCount() — ваши вспомогательные функции, которые делают запрос к b_user_field (или к b_sale_order) для получения нужных данных. Не делайте тяжёлые запросы прямо в шаблоне — кэшируйте результат в сессии или используйте кэш CPHPCache.
Передача данных о корзине и заказах
Jivo позволяет передавать произвольные пользовательские данные через jivo_api.setCustomData():
<?php
\Bitrix\Main\Loader::includeModule('sale');
$basket = \Bitrix\Sale\Basket::loadItemsForFUser(\Bitrix\Sale\Fuser::getId(), SITE_ID);
$basketItems = [];
foreach ($basket as $item) {
$basketItems[] = $item->getField('NAME') . ' × ' . (int)$item->getField('QUANTITY');
}
?>
<script>
jivo_api.setCustomData([
{
title: "Корзина",
content: "<?= htmlspecialchars(implode(', ', $basketItems) ?: 'пустая') ?>"
},
{
title: "Последний заказ",
content: "<?= htmlspecialchars(getLastOrderInfo($USER->GetID())) ?>"
}
]);
</script>
Это отображается в боковой панели агента Jivo — справа от чата — без необходимости спрашивать клиента.
Интеграция с CRM Битрикс24 через Jivo Webhook
JivoSite умеет отправлять webhook при завершении диалога. Цель: автоматически создавать лид или контакт в Битрикс24.
В настройках Jivo: Каналы → Настроить → Вебхуки → URL для завершения чата.
Обработчик в Битрикс24 (через REST API):
// /local/api/jivo-webhook.php
$data = json_decode(file_get_contents('php://input'), true);
$visitorName = $data['visitor']['name'] ?? 'Посетитель';
$visitorEmail = $data['visitor']['email'] ?? '';
$visitorPhone = $data['visitor']['phone'] ?? '';
$chatId = $data['id'] ?? '';
$chatUrl = $data['chat_url'] ?? '';
// Создаём лид в Битрикс24 через REST
$bitrix24Url = 'https://your-domain.bitrix24.ru/rest/{USER_ID}/{API_KEY}/';
$leadData = [
'fields' => [
'TITLE' => 'Чат JivoSite: ' . $visitorName,
'NAME' => $visitorName,
'EMAIL' => [['VALUE' => $visitorEmail, 'VALUE_TYPE' => 'WORK']],
'PHONE' => [['VALUE' => $visitorPhone, 'VALUE_TYPE' => 'WORK']],
'COMMENTS' => 'Источник: JivoSite. Чат: ' . $chatUrl,
'SOURCE_ID' => 'OTHER',
'SOURCE_DESCRIPTION' => 'JivoSite Chat #' . $chatId,
],
];
$ch = curl_init($bitrix24Url . 'crm.lead.add.json');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($leadData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
http_response_code(200);
echo json_encode(['status' => 'ok', 'lead_id' => $result['result'] ?? null]);
Синхронизация email и телефона с профилем Битрикс
Если клиент оставляет контакты в чате, их можно дописать в профиль пользователя Битрикс при следующей авторизации. Для этого Jivo передаёт данные в webhook, а вы сохраняете их в сессии или временной таблице с привязкой к идентификатору cookie-сессии Jivo (visitor_uid).
Кейс: интернет-магазин, 200+ чатов в день
Магазин электроники. Агенты тратили 2–3 минуты каждого чата на уточнение данных: «Какой у вас заказ? Как вас зовут?». После интеграции — агент открывает чат и сразу видит имя клиента, последние 3 заказа с суммами, текущую корзину, город по IP-геолокации.
| Метрика | До | После |
|---|---|---|
| Среднее время чата | 8 мин | 5.5 мин |
| Процент повторных обращений по одной проблеме | 18% | 9% |
| Конверсия из чата в заказ | 12% | 17% |
Состав работ
- Установка виджета в шаблон Битрикс
- Скрипт передачи данных авторизованного пользователя в
jivo_api - Передача данных корзины и истории заказов
- Настройка webhook для создания лидов в Битрикс24 CRM
- Тестирование во всех сценариях (гость, авторизованный, с заказами, без)
Сроки: базовая установка — 1–2 часа. Передача данных пользователя и корзины — 1–2 дня. Webhook с CRM Битрикс24 — ещё 1–2 дня.







