Інтеграція CRM: Bitrix24, amoCRM, Salesforce, HubSpot
Менеджер по продажам ведить угоди в CRM, а заявки з сайту падають на пошту. Він їх вручну переносить. Втрачає половину. Забуває перезвонити. Це не проблема менеджера — це архітектурна дира між сайтом та процесами компанії.
Інтеграція CRM закриває цей розрив: заявки з форм, чатів, дзвінків, e-commerce падають прямо у воронку, угоди створюються автоматично, менеджер отримує сповіщення через 30 секунд після відправки форми, а не через 3 години.
Bitrix24: REST API та события
Bitrix24 — найпоширеніша CRM на російському ринку. REST API доступний через OAuth 2.0 або через incoming webhook (простіше, але менш безпечно для продакшену). Основні сутності: lead (ліід), deal (угода), contact, company.
Створення ліда: POST /rest/crm.lead.add з набором полів. Привязка до воронки (тип угоди): SOURCE_ID. Додавання коментаря: crm.timeline.comment.add. Отслідкування змін у реальному часі — через Event Handlers: реєструємо хук через event.bind, Bitrix24 відправляє POST на наш endpoint при зміні статусу угоди.
Складність Bitrix24 — кастомні поля. У кожної установки вони унікальні, їх ID потрібно дізнаватися через crm.lead.fields. Повна синхронізація полів між сайтом та CRM вимагає або ручного маппінгу, або механізму автоматичного виявлення.
amoCRM: сучасний REST
amoCRM (тепер Kommo для міжнародного ринку) має чистіший API. OAuth 2.0 з refresh token, JSON API, передбачувані endpoint. Воронки — pipelines, угоди — leads, контакти — contacts.
Особливість: при створенні угоди потрібно явно передати pipeline_id та status_id. Без них угода попадає у дефолтну воронку, що часто не те, що потрібно. Теги для класифікації джерел лідів — через _embedded.tags. Webhook для вхідних подій — налаштовується в ЛК, підтримує add, update, delete, status, note.
Що робити з Salesforce та HubSpot
Salesforce — enterprise вибір. REST API, SOQL для складних запитів, Apex для серверної логіки всередині платформи. Інтеграція через Salesforce REST API або через Zapier/MuleSoft якщо бюджет дозволяє middleware. Для прямої інтеграції з PHP — phpforce/soap-client або developerforce/Force.com-Toolkit-for-PHP. Головна складність — маппінг кастомних об'єктів та полів, яких у кожного enterprise інстансу сотні.
HubSpot — популярний у SaaS-компаній та міжнародного B2B. HubSpot API v3 — REST, хороший SDK для PHP та Node.js (@hubspot/api-client). Contacts, Companies, Deals — стандартні об'єкти. Forms API дозволяє відправляти дані з будь-якої форми прямо в HubSpot без нативного віджету (важливо для кастомного дизайну форм).
Архітектура інтеграції
Очередь — обов'язково. Синхронний запит до API CRM прямо з обробника форми — погана ідея. API може бути недоступен 2 секунди, користувач чекає. Правильна схема: форма сабмітується → зберігаємо в БД → ставимо job в очередь → повертаємо 200 користувачу одразу → worker асинхронно відправляє в CRM → при помилці — retry з експоненціальним backoff.
Дедупліцірування. Один і той же контакт може заповнити форму двічі. CRM не повинна створювати два дублюючих ліда. Перевірка перед створенням: пошук по email через crm.duplicate.findByComm (Bitrix24) або contacts/search (HubSpot), якщо знайдено — додаємо задачу/коментар до існуючого, не створюємо новий.
Двостороння синхронізація. Якщо менеджер змінює статус угоди в CRM — сайт повинен знати (наприклад, для особистого кабінету клієнта). Webhooks від CRM → endpoint на сайті → оновлення статусу в БД → сповіщення клієнта. Важливо: перевіряти підпис webhook та відповідати 200 OK швидко (до 5 секунд), інакше CRM вважає доставку невдалою.
Строки
| Сценарій | Строк |
|---|---|
| Одна CRM, передача лідів з форм | 1–2 тижні |
| Двостороння синхронізація + статусы | 3–5 тижнів |
| Кілька CRM + маппінг кастомних полів | 4–8 тижнів |
Вартість розраховується індивідуально після аудиту поточних процесів та структури даних у CRM.







