Перейти к содержимому

← Все статьи блога

Как настроить исходящий вебхук Bitrix24 в n8n: лид в workflow за один вечер

Автор: Алексей Доронин

Маркетолог скопировал Production URL в исходящий вебхук Bitrix24, а workflow в n8n ещё не активировал - «Listen for test» молчит. Потом активировал, но в теле «пусто»: ждал JSON, а Bitrix прислал form-urlencoded. Повесил Telegram и ИИ до ответа - лиды «пропадали» на всплеске. За один вечер вы поднимете маршрут «новый лид -> сигнал в n8n -> полный лид в CRM-обработке» с быстрым ACK и проверкой токена.

Это не обзор всех интеграций Bitrix24 и не OAuth-приложение. Один маршрут для владельца малого бизнеса или ops, который уже крутит n8n (как в гайде по настройке webhook в n8n), но боится REST-приложений. Важно: Webhook - адрес сигнала «событие случилось», без полной анкеты. Итог вечера - лид в Executions, не «пустой» workflow.

Свежий факт из официальных docs Bitrix24 (июль 2026): у event handler нет retries. Если n8n не ответил или вернул ошибку, событие не перешлют. В блогах часто пишут «Bitrix ретраит» - опирайтесь на apidocs, а не на чужой опыт. Медленный ответ ещё и снижает приоритет handler в очереди. Не стоит вешать AI до ACK: сначала 200, потом тяжёлое - так вы получите стабильный приём.

Разведите входящий и исходящий вебхук - это две разные двери

ishodyashchij-vebhuk-bitrix24-v-n8n-inline-01-1 Как настроить исходящий вебхук Bitrix24 в n8n: лид в workflow за один вечер

Боль: путают «входящий» и «исходящий» и тратят вечер на мёртвую связку. Решение: запомните направление.

Тип в Bitrix24 Кто кого зовёт Зачем в этом гайде
Исходящий вебхук Bitrix -> n8n Сигнал ONCRMLEADADD: «создали лид, вот ID»
Входящий вебхук n8n -> Bitrix REST Догрузка: crm.lead.get по ID (TITLE, телефон, UTM)
REST-приложение + OAuth Сложная установка Не нужно для вечернего маршрута лида

На практике исходящий даёт только сигнал. Полный лид вы сами забираете входящим. Если на портале demo исходящий не работает; на коробке (on-prem) нужна активная лицензия - иначе не ждите POST. Избегайте демо-портала - лучше сразу портал с лицензией.

Поднимите Webhook в n8n с ответом сразу, не после Telegram

ishodyashchij-vebhuk-bitrix24-v-n8n-inline-02-1 Как настроить исходящий вебхук Bitrix24 в n8n: лид в workflow за один вечер

Боль: workflow крутит AI и чаты, пока Bitrix ждёт ответ - очередь душит handler, события теряются. Решение: Response Mode = Immediately (или Using «Respond to Webhook» сразу после триггера).

  1. Создайте workflow, добавьте узел Webhook.
  2. Method: POST. Path, например, bitrix-lead-add.
  3. Respond: Immediately (или Respond to Webhook node с кодом 200 сразу после Webhook).
  4. Скопируйте Test URL для первого прогона.
  5. Не включайте Raw Body: Bitrix шлёт application/x-www-form-urlencoded, n8n сам разложит поля.

Схема вечера:
Bitrix ONCRMLEADADD -> n8n Webhook (ACK сразу) -> проверка application_token -> HTTP crm.lead.get (входящий вебхук) -> Set TITLE/PHONE -> опционально Telegram менеджеру

Типичная ошибка: Respond = «When Last Node Finishes» и длинная цепочка до ответа. Для Bitrix это опасно именно из-за официального «No retries». В community n8n советуют early respond + idempotency при ретраях - у Bitrix ретраев нет, ACK критичен сильнее: второго шанса не будет. Убедитесь: Respond = Immediately, иначе handler молчит на всплеске.

Создайте исходящий вебхук на ONCRMLEADADD и сохраните токен

ishodyashchij-vebhuk-bitrix24-v-n8n-inline-03-1 Как настроить исходящий вебхук Bitrix24 в n8n: лид в workflow за один вечер

Боль: Handler URL вставлен не туда, событие не то, токен потеряли. Решение: один event - OnCrmLeadAdd / ONCRMLEADADD.

  1. В Bitrix24: Приложения -> Разработчикам -> Другое -> Исходящий вебхук (EN: Developer resources -> Other -> Outgoing webhook).
  2. Выберите событие создания лида: OnCrmLeadAdd / ONCRMLEADADD.
  3. В Handler URL вставьте Test URL из n8n (пока workflow в режиме Listen for test).
  4. Сохраните и скопируйте Application Token - он генерируется автоматически.
  5. Токен положите в Credentials / переменную n8n, не в публичный чат.

В реальном проекте маркетолог сначала вставил Production URL при выключенном workflow - Bitrix стучал в никуда. Рекомендуем Listen + Test URL, проверьте Executions, затем Activate и Production URL. Не делайте прод URL вслепую.

Прочитайте form-urlencoded и сверьте application_token до CRM-логики

Боль: в n8n «пустое тело», ищут JSON; либо любой POST с улицы запускает workflow. Решение: читайте поля event, data.FIELDS.ID, auth.application_token.

По docs Event Handler content-type событий - application/x-www-form-urlencoded. ONCRMLEADADD почти не шлёт полный объект лида: в основном ID в data.FIELDS.ID плюс блок auth. Исходящий webhook request не содержит user OAuth tokens - это не «вход от имени менеджера», а сигнал портала.

  1. Listen for test -> создайте тестовый лид в Bitrix24.
  2. В Executions откройте item: должны быть event=ONCRMLEADADD и ID лида.
  3. Добавьте IF или Code: auth.application_token равен токену из карточки исходящего вебхука.
  4. Если токен чужой - остановите ветку (и при кастомном Respond to Webhook отдайте 403 до бизнес-логики).
  5. Повторите ручной POST с левым токеном: workflow не должен идти в crm.lead.get.

Ключ токена может быть auth.application_token или вложенным form-полем - смотрите ключи в первом execution, не копируйте чужой скрин.

Рекомендация безопасности из Bitrix: сверяйте application_token (и при необходимости member_id) до любой записи в CRM, таблицу или Telegram. Публичный URL без проверки - дырка. Советуем резать чужой токен до crm.lead.get - так вы сможете закрыть дыру до прода.

Догрузите лид входящим вебхуком crm.lead.get и отдайте менеджеру

Боль: сигнала мало - нет телефона, TITLE, источника. Решение: второй вебхук (входящий) с правом CRM и HTTP Request.

  1. В Bitrix создайте входящий вебхук с правом на CRM (секрет уже в URL - не светите его в открытых репозиториях).
  2. В n8n после проверки токена добавьте HTTP Request: метод входящего вебхука crm.lead.get, ID из data.FIELDS.ID.
  3. Set/Code: замапьте TITLE, PHONE, SOURCE_ID / UTM, если есть в ответе.
  4. Опционально: Telegram или Slack менеджеру с именем и телефоном - это хвост, не ядро (отдельный гайд про бота не обязателен).
  5. Для критичных воронок заложите nightly reconciliation: crm.lead.list за сутки, сравнить с логами n8n - компенсация официального no retries.

Community-ноды вроде gustavojosemelo/n8n-nodes-bitrix24 тоже умеют ONCRMLEADADD. Для вечера хватит Webhook + HTTP. Делайте простой стек, не AmoCRM-OAuth. Результат - TITLE и телефон после get.

Пройдите чек-лист: тестовый лид, Production URL, чужой токен

Боль: на тесте всё зелёное, на проде тишина или дыра в безопасности. Решение: жёсткий чек-лист перед продакшеном.

Success criteria - вы на финише, если:

  • Создан тестовый лид в Bitrix24 -> в n8n Executions есть success с event=ONCRMLEADADD и ID лида.
  • IF/Code сверил auth.application_token с токеном из карточки исходящего вебхука.
  • HTTP через входящий вебхук вернул TITLE и телефон.
  • Ответ Bitrix ушёл быстро (Immediately или ранний Respond to Webhook).
  • Повторный ручной POST с чужим токеном отклонён до crm.lead.get.

Fail-лист (часто ломается): неверный токен; workflow не Activate; в Bitrix всё ещё Test URL; включён Raw Body; Respond = Last Node без ACK; demo-портал без outbound; долгий AI до ответа.

  1. Activate workflow в n8n.
  2. В Bitrix замените Handler URL на Production URL.
  3. Создайте ещё один тестовый лид.
  4. Проверьте Executions: success, ID, TITLE после get.
  5. Сохраните скрин/лог первого продового успеха в свою wiki.

Что дальше: закрепите переменные токенов в Credentials; добавьте ветку fail -> алерт ops; при росте лидов - очередь на стороне n8n и сверка crm.lead.list. Чек-лист зелёный - маршрут готово: запустите ещё тестовый лид. Нужен разбор воронки под ваш стек - на calmopsai.com. Базовый приём webhook без Bitrix - в статье про n8n Webhook.

Материал проверен: эксперт Алексей Доронин (автоматизация бизнеса и ИИ).
Достоверность данных: факты по исходящему/входящему вебхуку, ONCRMLEADADD, form-urlencoded, application_token и официальному «No retries» сверены с apidocs Bitrix24 и docs.n8n.io на 28 июля 2026. Объёмы Wordstat в этом прогоне не верифицированы (API недоступен) - частотности не выдумывались.

Частые вопросы

Чем исходящий вебхук Bitrix24 отличается от входящего?

Исходящий: Bitrix сам стучит в ваш n8n URL при событии (например ONCRMLEADADD) и почти всегда шлёт только ID. Входящий: вы из n8n вызываете REST Bitrix (crm.lead.get и другие методы) по секретному URL. Для полного лида нужны оба.

Почему лиды «пропадают», если n8n отвечает медленно?

В официальных docs указано: retries нет. Ошибка или таймаут handler = событие не повторят. Плюс медленный ответ снижает приоритет в очереди. Ставьте Immediately / ранний Respond to Webhook, тяжёлое - после ACK.

Почему в n8n нет привычного JSON от Bitrix?

События идут как application/x-www-form-urlencoded. Не ждите красивого JSON body и не включайте Raw Body без нужды. Смотрите разобранные поля event, data.FIELDS.ID, auth.application_token в Executions.

Нужен ли self-hosted n8n ради персональных данных?

Если политика компании запрещает слать телефоны лидов во внешний SaaS - да, self-hosted (свой сервер) проще контролировать. Технически связка Webhook + HTTP работает и в n8n Cloud; выбор - про compliance, не про «обязательный Docker».

Можно ли обойтись без входящего вебхука?

Только если вас устраивает один ID без TITLE и телефона. На практике для алерта менеджеру и CRM-логики почти всегда нужен crm.lead.get через входящий вебхук или community-ноду с тем же REST.

Как создать вебхук в Bitrix24 для теста с n8n?

Приложения -> Разработчикам -> Исходящий вебхук -> событие OnCrmLeadAdd -> Handler = Test URL n8n -> Listen for test -> тестовый лид. После успеха Activate workflow и подставьте Production URL.

Bitrix24 шлёт дубли из-за ретраев?

Официально - нет: «No retries». Дубли чаще от двойного создания лида, повторного ручного POST или путаницы Test/Production. Для других систем с ретраями в n8n community советуют early respond + idempotency; для Bitrix главный риск - потеря события, а не flood повторов.

Telegram