Інтеграція веб-форм 1С-Бітрікс з CRM Бітрікс24

Інтеграція веб-форм 1С-Бітрікс з CRM Бітрікс24 Ми часто бачимо одну й ту саму біль: на сайті налаштована зручна форма зворотного зв'язку, але менеджери працюють в Бітрікс24, а заявки приходять на пошту. Дані губляться, воронка продажів не будується, аналітика відсутня. Наприклад, співробітник зап
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Інтеграція веб-форм 1С-Бітрікс з CRM Бітрікс24
Середній
~1-2 тижні

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

Часті запитання

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1462
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    764
  • Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    810
  • Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1166

Інтеграція веб-форм 1С-Бітрікс з CRM Бітрікс24

Ми часто бачимо одну й ту саму біль: на сайті налаштована зручна форма зворотного зв'язку, але менеджери працюють в Бітрікс24, а заявки приходять на пошту. Дані губляться, воронка продажів не будується, аналітика відсутня. Наприклад, співробітник заповнює форму, а менеджер дізнається про нього через годину — лід застарів. Без автоматичної передачі лідів кожен дзвінок або заявка — ручна робота, а конкуренти вже в CRM. Оцінки показують: втрати заявок можуть сягати 30%. Наша компанія наша команда спеціалізується на інтеграціях 1С-Бітрікс та Бітрікс24 вже понад 5 років, виконала 100+ проектів.

Стандартний модуль веб-форм 1С-Бітрікс (bitrix:main.feedback, bitrix:form.result.new) зберігає результати в таблиці b_form_result і відправляє сповіщення на пошту. Без інтеграції з CRM дані залишаються в базі сайту — менеджери не бачать їх в Бітрікс24, історія комунікацій не будується. Згідно з офіційною документацією 1С-Бітрікс, подія OnAfterResultAdd модуля form дозволяє перехопити дані результату до відправки сповіщення.

Чому нативні веб-форми кращі за CRM-форми?

CRM-форми Бітрікс24 простіші в налаштуванні, але їх розміщення на сторонньому домені (b24-cdn.bitrix24.by) негативно впливає на SEO та швидкість завантаження. Крім того, ви не можете кастомізувати зовнішній вигляд під дизайн сайту без iframe-обгортки. Нативна веб-форма залишається на вашому домені, передає всі UTM-мітки та cookie, а стилі повністю контролюються шаблоном сайту. За нашим досвідом, конверсія таких форм вища на 20–30%, тобто нативні форми конвертують у 1.3 рази краще, ніж CRM-форми.

Як налаштувати інтеграцію: 6 кроків

  1. Аудит поточних форм і CRM — визначаємо, які форми відправляють дані, і які поля потрібні в CRM.
  2. Створення обробника — підписуємося на подію OnAfterResultAdd в init.php.
  3. Мапінг полів — налаштовуємо відповідність полів форми та полів ліда в конфігураційному масиві.
  4. Створення користувацьких полів — через REST API crm.userfield.add для нестандартних даних.
  5. Дедуплікація — перевіряємо існуючих лідів за email/телефоном перед створенням.
  6. Тестування та деплой — перевіряємо передачу, файли та бізнес-процеси.

Обробник результату веб-форми

Бітрікс надає подію OnAfterResultAdd модуля form. Підписуємося в init.php:

AddEventHandler('form', 'OnAfterResultAdd', function($formId, $resultId, $fields) { // Тільки для потрібних форм $targetForms = [3, 7, 12]; // ID форм: заявка, консультація, партнерство if (!in_array($formId, $targetForms)) return; $answers = CFormResult::GetDataByID($resultId, [], $arrResult); $mapped = mapFormAnswers($formId, $answers); $b24 = new B24Sender(getenv('B24_WEBHOOK_URL')); $b24->sendLead($mapped); }); 

Мапінг полів форми в поля ліда

Поля веб-форми зберігаються в b_form_field, відповіді — в b_form_result_answer. Зв'язок через FIELD_ID. Мапінг налаштовується в конфізі:

$formMapping = [ 3 => [ // форма «Заявка на дзвінок» 'q_name' => 'NAME', 'q_phone' => 'PHONE', 'q_comment' => 'COMMENTS', 'utm_source'=> 'UTM_SOURCE', ], 7 => [ // форма «Партнерство» 'q_company' => 'COMPANY_TITLE', 'q_contact' => 'NAME', 'q_email' => 'EMAIL', 'q_direction' => 'COMMENTS', ], ]; 

Кейс з нашої практики: багатокрокова форма заявки

З нашої практики — наш клієнт, сайт IT-інтегратора, форма заявки на проєкт: 4 кроки (тип проєкту, бюджет, терміни, контакти). Стандартний модуль веб-форм зберігає всі відповіді в b_form_result_answer. Задача: створити кваліфікований лід в Бітрікс24 із заповненими полями та правильною воронкою.

Рішення: кроки 1–3 зберігаються в сесію, на кроці 4 відправляється повна форма. В обробнику OnAfterResultAdd збираємо всі поля, створюємо лід з нестандартними полями CRM:

$leadFields = [ 'TITLE' => 'Проєкт: ' . $answers['project_type'], 'OPPORTUNITY' => $answers['budget_from'], // бюджет — в суму ліда 'CURRENCY_ID' => 'RUB', 'UF_CRM_PROJECT_TYPE' => $answers['project_type'], 'UF_CRM_DEADLINE_WEEKS' => $answers['deadline'], // UF_CRM_* — користувацькі поля ліда в Б24 ]; 

Користувацькі поля (UF_CRM_*) попередньо створюємо в Бітрікс24 через crm.userfield.add. Після створення ліда — автоматично запускаємо бізнес-процес в Б24 через bizproc.workflow.start. Це гарантує, що жодна заявка не загубиться. Інтеграція через REST API працює в 10 разів швидше, ніж ручне перенесення даних.

Як передати файли з форми в CRM?

Якщо форма містить поле завантаження файлу (техзавдання, бриф), файл потрібно передати в Бітрікс24. REST API crm.lead.add не підтримує бінарне завантаження напряму — використовуємо disk.folder.uploadfile для завантаження в «Диск» Бітрікс24, потім прикріплюємо до ліда через crm.activity.add з типом DOCUMENT. Файл з'являється в картці ліда, менеджер одразу бачить вкладення.

Дедуплікація лідів

Одна й та сама компанія нерідко заповнює форму декілька разів. Перевіряємо за email та телефоном перед створенням:

$existing = $b24->call('crm.duplicate.findByComm', [ 'type' => 'EMAIL', 'values' => [$email], 'entity_type' => 'LEAD', ]); if (!empty($existing['result']['LEAD'])) { // Додаємо активність до існуючого ліда, не створюємо новий $b24->call('crm.activity.add', [...]]); } 

Що входить в роботу

Етап Тривалість Результат
Аудит поточних веб-форм та CRM 1–2 год Схема полів, список форм, вимоги
Налаштування обробника та мапінг 3–5 год Робочий обробник для 1 форми
Створення користувацьких полів в CRM 2–4 год Поля для нестандартних даних
Дедуплікація та логіка повторних звернень 4–6 год Захист від дублювання лідів
Передача файлів з форм 4–6 год Файли прикріплюються до ліда
Запуск бізнес-процесів за лідом 3–5 год Автоматична обробка заявок
Документація та навчання 1–2 год Інструкція для адміністратора
Приклад налаштування користувацьких полів Припустимо, потрібно передати тип проєкту та бажані терміни. Через REST API створюємо поля `UF_CRM_PROJECT_TYPE` (список) та `UF_CRM_DEADLINE_WEEKS` (число). В обробнику мапінг на ці поля.

Всі роботи виконуються з гарантією — ми відповідаємо за стабільність інтеграції та безперебійну передачу даних. Окупність інтеграції — від 2 до 4 місяців залежно від навантаження. Економія часу менеджерів — до 2 годин щоденно, що при середній зарплаті $15/год дає економію до $900 на місяць. Вартість базової інтеграції — від $500. Якщо у вас залишилися питання, зв'яжіться з нами — оцінимо проєкт за 1 день і запропонуємо оптимальне рішення. Замовте інтеграцію з гарантією якості. Ми — наша команда, з досвідом роботи понад 5 років та 100+ успішних інтеграцій.