Інтеграція Бітрікс24 з Tableau
Керівник просить звіт по воронці продажів за квартал. Менеджер вивантажує дані з Б24 в Excel, чистить дублі, будує зведену таблицю, вручну рахує конверсію по етапах. Через два дні дані застаріли — потрібно повторювати. У Б24 є вбудована аналітика, але для складних зрізів (когортний аналіз, перехресні звіти по каналах і менеджерах, динаміка LTV) її недостатньо. Tableau вирішує це завдання, але дані туди ще потрібно доставити. Ми за 10+ років зробили десятки таких інтеграцій — знаємо всі підводні камені. Наприклад, один з клієнтів з 50 000 угод на рік витрачав на ручні звіти 2 робочих дні на тиждень — після автоматизації час скоротився до 1 години.
Чому варто обрати зв'язку Бітрікс24 + Tableau?
Tableau — лідер BI-платформ, а Бітрікс24 містить багату CRM-модель. Разом вони дають гнучкість, недоступну штатним звітам: когорти, перехресні фільтри, прогнозування. Але Tableau не має нативного конектора до Б24 — потрібен проміжний прошарок.
Як влаштована архітектура інтеграції?
Tableau підключається до Б24 через проміжне сховище:
Б24 REST API → ETL-скрипт → PostgreSQL/MySQL → Tableau Desktop/Server → дашборд
ETL-скрипт (на Python, Node.js або PHP) витягує дані з Б24 через REST API, трансформує і завантажує в реляційну базу. Tableau підключається до цієї бази як до звичайного джерела даних.
Альтернативний варіант — Tableau Web Data Connector (WDC). Це JavaScript-додаток, який Tableau викликає для отримання даних. WDC звертається до middleware, який запитує дані з Б24 REST API і повертає їх у форматі, зрозумілому Tableau. Підходить для невеликих обсягів, але для серйозної аналітики проміжна база надійніша.
Які дані витягуємо з Бітрікс24?
Б24 REST API надає доступ до основних сутностей CRM і не тільки:
| Сутність | Метод API | Ключові поля |
|---|---|---|
| Ліди | crm.lead.list |
Статус, джерело, UTM-мітки, сума, відповідальний, дата створення |
| Угоди | crm.deal.list |
Стадія, воронка, сума, дата закриття, контакт, компанія |
| Контакти | crm.contact.list |
ПІБ, компанія, тип, джерело |
| Компанії | crm.company.list |
Назва, галузь, виручка, тип |
| Товарні позиції | crm.item.productrow.list |
Товар, кількість, ціна, знижка, прив'язка до угоди |
| Активності | crm.activity.list |
Тип (дзвінок, лист, зустріч), дата, тривалість |
| Завдання | tasks.task.list |
Статус, виконавець, дедлайн, витрачений час |
| Телефонія | voximplant.statistic.get |
Тривалість, тип, запис, прив'язка до CRM |
Кастомні поля (UF_CRM_*) вивантажуються автоматично — ETL-скрипт запитує список полів через crm.deal.fields і включає їх у вивантаження.
Як працює ETL-процес?
Extract. Скрипт викликає REST API з пагінацією. Б24 віддає максимум 50 записів за запит для більшості методів. При 10 000 угодах — 200 запитів. З урахуванням ліміту 2 запити в секунду — 100 секунд. Для прискорення використовуємо batch-запити (до 50 викликів в одному batch), що скорочує час у десятки разів.
Інкрементальне вивантаження: після першого повного завантаження скрипт запитує лише записи, змінені після останнього запуску (фільтр >DATE_MODIFY). Це скорочує обсяг даних і час виконання.
Transform. Дані з Б24 приходять у специфічному форматі:
- Стадії угод — у вигляді кодів (
C1:NEW,C1:WON). Скрипт підставляє людські назви з довідника (crm.status.list). - Множинні поля (телефони, email) — масиви об'єктів. Скрипт розгортає їх в окремі колонки або рядки.
- Дати — у форматі ISO 8601 з таймзоною порталу. Конвертуються в UTC.
- Зв'язки (контакт → компанія → угода) — денормалізуються: до кожної угоди додаються поля контакту та компанії.
Load. Дані записуються в PostgreSQL (або MySQL). Структура таблиць:
| Таблиця | Вміст |
|---|---|
crm_deals |
Угоди з денормалізованими полями |
crm_leads |
Ліди |
crm_activities |
Активності з прив'язкою до угод |
crm_products |
Товарні позиції |
dim_stages |
Довідник стадій |
dim_sources |
Довідник джерел |
dim_users |
Співробітники (відповідальні, менеджери) |
Структура "факт + довідник" — стандартна для BI. Tableau будує зв'язки між таблицями і дозволяє створювати будь-які зрізи.
Дашборди в Tableau
Типові дашборди, які будуємо на даних Б24:
Воронка продажів. Конверсія між етапами, середній цикл угоди, сума по стадіях. Фільтри: період, менеджер, воронка, джерело. Горизонтальна воронка з абсолютними числами та відсотками конверсії.
Аналітика менеджерів. Кількість угод, сума закритих, середній чек, конверсія з ліда в угоду, середній час на етапі. Ранжування менеджерів за KPI. Drill-down до конкретних угод.
Джерела лідів. ROI по каналах: UTM-мітки → ліди → угоди → сума. Порівняння каналів за конверсією та середнім чеком. Динаміка по місяцях.
Когортний аналіз. Ліди, згруповані за місяцем створення, з відстеженням конверсії в угоду та оплату в наступні місяці. Показує, чи покращується якість лідів і робота відділу продажів.
Активність. Дзвінки, листи, зустрічі по днях і менеджерах. Кореляція активності із закритими угодами. Виявлення патернів: скільки дотиків потрібно для закриття угоди.
Як налаштувати автоматичне оновлення?
ETL-скрипт запускається за розкладом:
- Щогодини — інкрементальне вивантаження змінених записів. Дашборди в Tableau Server оновлюються автоматично за прив'язаним розкладом extract refresh.
- Щодня (ніч) — повне перезавантаження для гарантії консистентності.
- Вручну — кнопка в middleware для примусового оновлення перед важливою нарадою.
Tableau Server/Online підтримує scheduled extract refresh — автоматичне оновлення даних з підключеної бази в заданий час.
Що входить в роботу з інтеграції
- ETL-скрипт для вилучення даних з Б24 REST API в реляційну базу
- Структура проміжної бази даних, оптимізована для BI-аналітики
- Підключення Tableau до проміжної бази
- Набір типових дашбордів: воронка, менеджери, джерела, когорти, активність (від 5 до 10 штук)
- Налаштування розкладу автоматичного оновлення даних
- Інкрементальне вивантаження для мінімізації навантаження на Б24 API
- Документація по архітектурі та інструкція для адміністратора
- Консультація по кастомізації дашбордів протягом місяця
Як ми працюємо
- Аналітика — вивчаємо структуру даних у Б24, узгоджуємо набір дашбордів.
- Проектування — визначаємо схему проміжної БД та ETL-логіку.
- Реалізація — пишемо ETL-скрипт, налаштовуємо підключення, розробляємо дашборди.
- Тестування — звіряємо дані в Tableau з оригіналом у Б24, перевіряємо оновлення.
- Деплой — розгортаємо на вашому сервері або в хмарі, налаштовуємо розклад.
Терміни та вартість
Терміни — від 5 робочих днів для базового рішення, від 14 днів для комплексного. Вартість розраховується індивідуально. Окупність таких проєктів зазвичай становить 2–4 місяці за рахунок економії часу на звітах (до 40 годин на місяць). Отримайте консультацію по вашому проєкту — ми оцінимо обсяг і назвемо бюджет. Замовте впровадження, щоб перестати витрачати дні на ручні звіти.







