Перейти к содержимому
N1
Интеграции · Tilda · UTM · мониторинг

Tilda → Bitrix24: заявки, UTM и мониторинг без потерь

Клиент: Онлайн-школа, NDA Категория: Интеграции Стек: PHP 8, Tilda webhooks, Bitrix24 REST, cron, уведомления Bitrix24 Срок: внедрялось поэтапно
Проблема

Регистрации с Tilda попадали в Bitrix24 почти без источника, поэтому рекламу оценивали вслепую. Однажды сломанный хук стоил школе 450 регистраций — и этого никто не заметил вовремя.

Ограничения

Tilda сама решает, повторять ли отправку, а сломанный приём не видно со стороны. Контакты уже задублированы, UTM за прошлые месяцы есть только в выгрузках, а слияние контактов необратимо.

Что сделал
  • Идемпотентный приём заявок по tranid: повтор не создаёт дубль, а при ошибке приёмник отвечает 502, чтобы Tilda повторила отправку
  • UTM-метки собираются из полей формы, cookie и referrer; исправлена порча кириллицы в метках и названиях
  • Почасовое слияние дублей контактов по телефону с предохранителем на число слияний за прогон; без явного аргумента — только отчёт
  • Разовое восстановление UTM из CSV-выгрузок: заполняются только пустые поля, уже заполненные данные не перезаписываются
  • Мониторинг интеграций каждые 15 минут: тишина от Tilda в рабочее время, очередь ChatApp, зависшие задания — с уведомлениями прямо в Bitrix24
Архитектура
Tilda → Идемпотентный приёмник → UTM и дедупликация → Bitrix24 REST → Мониторинг каждые 15 минут
Результат

После восстановления источник есть у 2932 сделок Tilda из 4284 — вместо 115. Остановка приёма заявок теперь видна в течение 15 минут в самом Bitrix24, а не через месяц в отчёте.

Что можно переиспользовать
Идемпотентный приёмник вебхуков с ответом 502 для повтора Сбор UTM из формы, cookie и referrer Healthcheck интеграций с уведомлениями в Bitrix24