Настройка обратной связи с передачей в CRM Битрикс24
Форма обратной связи на сайте отправляет письмо администратору — и этим всё заканчивается. Нет задачи менеджеру, нет истории в CRM, нет SLA на ответ. Настройка прямой передачи в Битрикс24 решает задачу за 4–6 часов.
Варианты компонентов обратной связи
В 1С-Битрикс обратная связь реализуется через:
-
bitrix:main.feedback— стандартный компонент, простая форма. -
bitrix:form.result.new— расширенный модуль веб-форм с полями любого типа. - Кастомный компонент или Ajax-форма на React/Vue.
Для всех вариантов подход один: перехватываем момент успешной отправки и вызываем REST API Битрикс24.
Настройка через компонент main.feedback
Компонент bitrix:main.feedback использует событие OnBeforeEventAdd (модуль main). Подписываемся в init.php:
AddEventHandler('main', 'OnBeforeEventAdd', function(&$eventName, &$lid, &$fields) {
if ($eventName !== 'FEEDBACK') return;
$b24WebhookUrl = COption::GetOptionString('my_module', 'b24_webhook');
$http = new \Bitrix\Main\Web\HttpClient();
$leadData = [
'TITLE' => 'Обратная связь с сайта',
'NAME' => $fields['NAME'] ?? '',
'PHONE' => [['VALUE' => $fields['PHONE'] ?? '', 'VALUE_TYPE' => 'WORK']],
'EMAIL' => [['VALUE' => $fields['EMAIL'] ?? '', 'VALUE_TYPE' => 'WORK']],
'COMMENTS' => $fields['MESSAGE'] ?? '',
'SOURCE_ID'=> 'WEB',
];
$http->post($b24WebhookUrl . 'crm.lead.add.json',
json_encode(['fields' => $leadData]));
});
Что создавать в CRM: лид или сделку
- Лид — если обращение от нового или неизвестного клиента. Менеджер квалифицирует, конвертирует в контакт/сделку.
-
Сделка — если клиент уже есть в базе (определяем по телефону/email через
crm.duplicate.findByComm). - Активность (звонок/письмо) — если нужно просто зафиксировать факт обращения к существующему контакту.
Для сайтов с большим потоком новых обращений правильнее создавать лиды. Для B2B с ограниченной базой клиентов — сразу сделки или активности.
Уведомление ответственного
После создания лида через REST автоматически запускается уведомление ответственному в Битрикс24 (если в портале настроены уведомления CRM). Дополнительно можно поставить задачу:
$b24->call('tasks.task.add', ['fields' => [
'TITLE' => 'Ответить на обращение: ' . $leadData['NAME'],
'RESPONSIBLE_ID' => $assignedId,
'DEADLINE' => date('c', strtotime('+2 hours')),
'UF_CRM_TASK' => ['L_' . $leadId], // привязка к лиду
]]);
Хранение настроек вебхука
URL вебхука Битрикс24 храним в настройках модуля через COption (таблица b_option), не хардкодим в коде. Интерфейс редактирования — в разделе «Настройки → Настройки продукта → Настройки модулей».
Базовая настройка передачи обратной связи для одной формы — 4–6 часов включая тестирование.







