Разработка бота-автоматизатора для заявок с сайта 1С-Битрикс

Заявка отправлена с сайта — и дальше тишина. Менеджер может заметить её через час, через день, или не заметить вовсе. По статистике, 70% клиентов не дожидаются ответа, если он не приходит в течение 5 минут. Мы решаем эту проблему с помощью бота-обработчика: он мгновенно фиксирует заявку в Битрикс24,
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Разработка бота-автоматизатора для заявок с сайта 1С-Битрикс
Средний
~1-2 недели

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

Часто задаваемые вопросы

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1460
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1019
  • Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    764
  • Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    882
  • Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    810
  • Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1166

Заявка отправлена с сайта — и дальше тишина. Менеджер может заметить её через час, через день, или не заметить вовсе. По статистике, 70% клиентов не дожидаются ответа, если он не приходит в течение 5 минут. Мы решаем эту проблему с помощью бота-обработчика: он мгновенно фиксирует заявку в Битрикс24, уведомляет нужного сотрудника, отправляет автоответ клиенту и при необходимости начинает диалог в мессенджере. Такой подход ускоряет реакцию на заявку с часов до секунд и снижает риск потери клиента на 90%.

Бот обрабатывает заявку за секунды — в 20+ раз быстрее ручной обработки, что подтверждается практикой внедрений.

Бот работает с любыми формами на сайте: веб-формы Битрикс, кастомные AJAX-формы, обратные звонки. Он интегрируется через штатные события и REST API, не требует замены существующих компонентов. Время внедрения — от 1.5 недель, результаты видны сразу. Ниже — как мы строим такую систему: от перехвата событий до обработки дублей и автоответа.

Как перехватить события форм в Битрикс?

Любая форма на сайте Битрикс — CWebForm, веб-формы модуля form, обратные звонки из sale.order.ajax, кастомные AJAX-формы — генерирует событие при отправке. Мы перехватываем нужные события через штатные обработчики, например, OnAfterResultAdd:

// local/php_interface/init.php AddEventHandler('form', 'OnAfterResultAdd', 'handleFormSubmit'); function handleFormSubmit(int $webFormId, int $resultId, array $arResult): void { if (!in_array($webFormId, [1, 3, 7])) { // ID нужных форм return; } BotQueue::push('process_form', [ 'form_id' => $webFormId, 'result_id' => $resultId, 'fields' => $arResult, ]); } 

Для bitrix:main.feedback используем обработчик в шаблоне компонента, для sale.order.callback — событие OnSaleOrderCallbackCreate.

Создание лида, уведомление менеджера и автоответ

После получения данных создаём сущность в CRM. Логика выбора: квалифицированная заявка (есть телефон, понятна потребность) → сразу сделка; первичное обращение → лид.

$leadId = $b24Rest->callMethod('crm.lead.add', [ 'fields' => [ 'TITLE' => "Заявка с сайта: {$formName}", 'NAME' => $arResult['NAME'] ?? '', 'LAST_NAME' => $arResult['LAST_NAME'] ?? '', 'PHONE' => [['VALUE' => $arResult['PHONE'], 'VALUE_TYPE' => 'WORK']], 'EMAIL' => [['VALUE' => $arResult['EMAIL'], 'VALUE_TYPE' => 'WORK']], 'SOURCE_ID' => 'WEB', 'SOURCE_DESCRIPTION' => $formName, 'COMMENTS' => $arResult['COMMENT'] ?? '', 'ASSIGNED_BY_ID' => getResponsibleManager($webFormId), 'UTM_SOURCE' => $_COOKIE['utm_source'] ?? '', 'UTM_MEDIUM' => $_COOKIE['utm_medium'] ?? '', 'UTM_CAMPAIGN' => $_COOKIE['utm_campaign'] ?? '', ], ])['result']; 

UTM-метки из cookie — обязательный элемент для аналитики источников. После создания лида бот пишет ответственному в им-бот Битрикс24 с кнопками действий:

$b24Rest->callMethod('imbot.message.add', [ 'BOT_ID' => $botId, 'DIALOG_ID' => 'u' . $managerId, 'MESSAGE' => "[b]Новая заявка с сайта[/b]", 'ATTACH' => [[ 'TITLE' => $formName, 'DESCRIPTION' => "Клиент: {$name}\nТелефон: {$phone}\nКомментарий: {$comment}", 'COLOR' => '#2fc6f6', 'LINK' => "https://b24.company.ru/crm/lead/show/{$leadId}/", ]], 'KEYBOARD' => ['BUTTONS' => [[ ['TEXT' => 'Открыть лид', 'LINK' => "https://b24.company.ru/crm/lead/show/{$leadId}/"], ['TEXT' => 'Взять в работу', 'COMMAND' => 'assign_lead', 'COMMAND_PARAMS' => $leadId], ]]], ]); 

Клиент получает подтверждение по email и/или SMS:

\Bitrix\Main\Mail\Event::sendImmediate([ 'EVENT_NAME' => 'FORM_SUBMIT_CONFIRM', 'LID' => SITE_ID, 'C_FIELDS' => [ 'CLIENT_NAME' => $name, 'CLIENT_EMAIL' => $email, 'FORM_NAME' => $formName, ], 'TO_EMAIL' => $email, ]); 

Если у клиента есть Telegram (определяем через telephony.externalcall.searchcrm), бот может написать и туда через Open Lines.

Почему стоит использовать очередь для обработки заявок?

При высоком трафике синхронная обработка может тормозить ответ сервера. Мы внедряем очередь на базе Redis: событие формы кладёт задачу в очередь за миллисекунду, а worker (PHP-демон или cron) обрабатывает её асинхронно. При недоступности Битрикс24 REST API задача остаётся в очереди до следующей попытки — это гарантирует доставку заявки даже при сбоях. Наша очередь выдерживает до 1000 задач в секунду без потерь.

Как бот избегает дублирования и маршрутизирует заявки?

Перед созданием нового лида скрипт выполняет поиск по телефону через метод crm.duplicate.find. Если находится открытый лид — бот не создаёт новый, а добавляет к нему активность с текстом «Повторная заявка» и ссылкой на результат формы. Это предотвращает дубли и путаницу в воронке продаж. Разным формам назначаются разные ответственные:

function getResponsibleManager(int $formId): int { return [1 => 15, 3 => 22, 7 => 8][$formId] ?? 1; } 

При повторной заявке с тем же телефоном бот не создаёт новый лид, а добавляет активность к существующему — это предотвращает дубли и путаницу.

Что делать при недоступности REST API?

Очередь на Redis спасает: задача остаётся в очереди и повторяется при следующем запуске worker-а (каждые 1–3 секунды). Если API не отвечает дольше 5 минут, бот отправляет email-оповещение администратору. Это гарантирует, что ни одна заявка не потеряется, даже при временных сбоях.

Сравнение: бот vs ручная обработка

Параметр Ручная обработка Бот-обработчик
Время от заявки до лида Часы Секунды
Риск потери заявки Высокий Минимальный
UTM-аналитика Вручную Автоматически
Обработка дублей Вручную Автоматически
Уведомление клиента Ручное Автоматическое

Бот обрабатывает заявку в 10+ раз быстрее человека — это проверено на десятках проектов.

Что входит в работу

  • Анализ текущих форм на сайте и выбор способа перехвата
  • Написание обработчиков событий с учётом кэширования тегированного в Битрикс
  • Настройка маршрутизации заявок по типу, региону или нагрузке
  • Интеграция с REST API Битрикс24 для создания лидов/сделок
  • Разработка бота в им-бот с кнопками для менеджеров
  • Настройка автоответа по email/SMS
  • Внедрение очереди для надёжной обработки при пиковых нагрузках
  • Тестирование в 3 сценариях: единичная заявка, дубли, отказ API
  • Передача документации по доступам и логике работы
Подробнее о тестовых сценарияхМы проверяем работу бота на единичных заявках, при повторной отправке с тем же телефоном, а также при симуляции отказа REST API (например, отключаем вебхук). В каждом случае фиксируем корректное поведение: создание лида, уведомление, автоответ, отсутствие дублей.

Сроки и стоимость

Этап Срок
Перехват событий форм Битрикс 1–2 дня
Создание лидов в Б24, маршрутизация 2–3 дня
Уведомления через бота, кнопки действий 2–3 дня
Автоответ клиенту (email/SMS) 1–2 дня
Обработка дублей, повторных заявок 1–2 дня
Очередь + тестирование 1–2 дня

Итого: 1.5–2 недели для стандартного набора форм. Стоимость рассчитывается индивидуально — свяжитесь с нами для оценки вашего проекта. Получите прозрачную смету и гарантию качества после внедрения. Мы помогаем автоматизировать обработку заявок под ключ — закажите разработку прямо сейчас.