При інтеграції LiveChat оператори часто скаржаться на затримки: віджет вантажиться 5 секунд, дані клієнта не потрапляють у CRM, а історія замовлень відсутня. Ми проектуємо установку так, щоб віджет завантажувався за 1–2 секунди і не впливав на Core Web Vitals. Розбираємося, як уникнути цих проблем, використовуючи правильну установку, LiveChat API та webhooks. Наш досвід — понад 50 проєктів, від лендінгів до високонавантажених інтернет-магазинів з кастомною логікою. Типове рішення не підходить для складних сайтів. Розглянемо кожен етап налаштування: від асинхронного завантаження до передачі даних у CRM через webhooks. Також торкнемося типових помилок при маршрутизації чатів і дамо готовий код для ідентифікації клієнта.
Як гарантувати швидкість завантаження віджета без втрати LCP?
Віджет LiveChat підключається через JavaScript-трекер. За замовчуванням скрипт вантажиться синхронно, що збільшує LCP і FID. Рішення — завантажувати його асинхронно і відкласти ініціалізацію до події load. Згідно з офіційною документацією LiveChat, такий підхід знижує час до інтерактивності на 30%. Код нижче робить саме це:
<script>
window.__lc = window.__lc || {};
window.__lc.license = YOUR_LICENSE_NUMBER;
;(function(n,t,c){function i(n){return e._h?e._h.apply(null,n):e._q.push(n)}
var e={_q:[],_h:null,_v:"2.0",on:function(){i(["on",c.call(arguments)])},
once:function(){i(["once",c.call(arguments)])},
off:function(){i(["off",c.call(arguments)])},
get:function(){if(!e._h)throw new Error("[LiveChatWidget] You can't use getters before load.");
return i(["get",c.call(arguments)])},call:function(){i(["call",c.call(arguments)])},
init:function(){var n=t.createElement("script");
n.async=!0,n.type="text/javascript",
n.src="https://cdn.livechatinc.com/tracking.js",t.head.appendChild(n)}};
!n.__lc.asyncInit&&e.init(),n.LiveChatWidget=n.LiveChatWidget||e}(window,document,[].slice))
</script>
Зверніть увагу: скрипту присвоєно атрибут async, а виклик init() відбувається всередині замикання, не блокуючи подію DOMContentLoaded. Додатково можна видалити невикористовувані CSS-стилі віджета через tree-shaking — у LiveChat це робиться через налаштування консолі.
Чому стандартна установка не передає дані в CRM?
Без додаткових налаштувань LiveChat не знає, хто ваш клієнт. Оператор бачить лише «Відвідувач 123». Щоб передати ім'я, email, номер замовлення тощо, використовуйте JavaScript API одразу після ідентифікації користувача на сайті:
// Ідентифікація
LiveChatWidget.call('set_customer_name', user.name);
LiveChatWidget.call('set_customer_email', user.email);
// Кастомні дані (видимі оператору)
LiveChatWidget.call('set_session_variables', {
'Order ID': orderId,
'Cart Total': cartTotal + ' ₴',
'User Plan': user.plan
});
// Сховати/показати
LiveChatWidget.call('hide');
LiveChatWidget.call('minimize');
Ці змінні автоматично підтягуються в картку клієнта. Для інтеграції з CRM (наприклад, з Бітрікс24) використовуйте REST API LiveChat для створення тікетів або синхронізації угод. Приклад:
// Створити тікет через REST API
Http::withBasicAuth('[email protected]', $personalAccessToken)
->post('https://api.livechatinc.com/v3.5/cases', [
'subject' => "Звернення з сайту",
'customer' => ['email' => $email, 'name' => $name],
'properties' => [
'source' => ['type' => 'email', 'url' => 'https://shop.ru/contact']
]
]);
Цей підхід кращий за готовий модуль LiveChat для CRM, оскільки ви контролюєте структуру даних і можете передавати будь-які властивості.
Як автоматизувати передачу даних через webhooks?
LiveChat підтримує webhooks на події: новий чат, закриття чату, нове повідомлення, оцінка оператора. Це зручно для логування або передачі даних у CRM у реальному часі. Для налаштування достатньо додати URL вашого endpoint у консолі LiveChat → Integrations → Webhooks. Webhooks обробляються за 200–500 мс, що дозволяє синхронізувати дані без затримок. Ми налаштовували webhooks для передачі даних в AmoCRM і HubSpot — час відгуку не перевищує 1 секунди.
Розгорнутий приклад коду для ідентифікації клієнта
// Повна ідентифікація з кастомними змінними
function identifyCustomer(user) {
LiveChatWidget.call('set_customer_name', user.name);
LiveChatWidget.call('set_customer_email', user.email);
LiveChatWidget.call('set_session_variables', {
'Order ID': user.orderId,
'Cart Total': user.cartTotal + ' ₴',
'User Plan': user.plan,
'UTM Source': user.utmSource
});
}
Порівняння способів інтеграції LiveChat
| Спосіб | Швидкість впровадження | Гнучкість | Вплив на продуктивність | Вартість |
|---|---|---|---|---|
| Готова HTML-вставка | 1 година | Низька | Середнє (синхронне завантаження) | Безкоштовно |
| Асинхронний скрипт + JS API | 2–4 години | Висока | Мінімальний | Безкоштовно |
| REST API + webhooks | 2–5 днів | Повна | Не впливає | Оплата за запити |
Готовий код — найшвидший, але не вирішує проблем з продуктивністю та інтеграцією. Асинхронний скрипт з JS API — оптимальний для 90% проєктів. Повна кастомна інтеграція через API та webhooks дає максимум контролю, але потребує більше часу.
Порівняння інтеграцій з CRM: Бітрікс24, AmoCRM, HubSpot
| CRM | Тип інтеграції | Час налаштування | Особливості |
|---|---|---|---|
| Бітрікс24 | Готовий модуль + REST API | 1–3 дні | Підтримка угод, лідів, чатів. Обмежена кастомізація. |
| AmoCRM | Webhooks + кастомна розробка | 2–4 дні | Повний контроль полів, автоматизація за подіями. |
| HubSpot | REST API + webhooks | 2–5 днів | Складне налаштування, але потужна аналітика. |
Процес інтеграції: що входить у роботу
- Аудит поточної версії та навантаження — перевіряємо сумісність, швидкість завантаження, поточні скрипти.
- Проектування схеми даних — які поля передавати з сайту в чат, як синхронізувати з CRM.
- Установка віджета — з оптимізацією під Core Web Vitals (LCP, CLS, INP).
- Налаштування маршрутизації — за продуктами, мовами, статусом відвідувача.
- Інтеграція з CRM та webhooks — тестові сценарії, логування, резервні канали.
- Тестування під навантаженням — імітація 50 одночасних чатів.
- Документація та передача — API-специфікація, конфіги, доступи.
Економія бюджету на підтримку — до 30%, вартість інтеграції окупається за 2–3 місяці за рахунок прискорення роботи операторів. Замовте аудит вашого сайту — ми оцінимо сумісність за 1 день.
Типові помилки при інтеграції онлайн-чату на сайт
- Ігнорування асинхронного завантаження: призводить до зростання LCP на 30–50%.
- Передача даних лише через URL-параметри: не всі CRM їх підтримують.
- Відсутність fallback-маршрутизації: при збої webhook-ів дані втрачаються.
- Використання застарілих версій API: LiveChat API v3.5 рекомендується, v2.x — deprecated.
Що ви отримаєте після інтеграції
Після завершення робіт:
- Робочий віджет чату з мінімальним впливом на Core Web Vitals.
- Автоматичну передачу всіх кастомних даних у LiveChat та CRM через webhooks.
- Налаштовану маршрутизацію по відділах (продажі, підтримка, техпідтримка).
- Повну документацію: схему даних, endpoint-и, конфіги.
- Навчання операторів (1 година).
- Підтримку 30 днів після здачі.
Отримайте консультацію з інтеграції — напишіть нам, і ми підберемо оптимальне рішення. Зв'яжіться з нами, щоб обговорити ваш проєкт.







