Перейти к содержимому
N1
Интеграции · Kafka · Azure AD · событийный обмен

Событийная интеграция Bitrix24 через Kafka

Клиент: NDA Категория: Интеграции Стек: Node.js, Kafka (kafkajs), Bitrix24 REST, Azure AD, Telegram-алерты Срок: 2–5 недель
Проблема

Точечные HTTP-вызовы к внешней системе не масштабировались и не оставляли истории событий: при сбое обмен просто терялся, а на сбои узнавали постфактум от клиентов.

Ограничения

Нужно было матчить события с сущностями CRM по бизнес-ключу (а не по внутреннему ID), не терять события при падении обработчика, оповещать о сбоях быстро и держать доступы сотрудников в CRM синхронными с корпоративным каталогом.

Что сделал
  • HTTP-приёмник, публикующий события в Kafka-топик
  • Kafka-консьюмер, находящий или создающий сделку в CRM по бизнес-ключу
  • Кастомные поля для данных о залоге и заёмщике прямо на карточке сделки
  • Синхронизация учётных записей сотрудников с Azure AD
  • Telegram-алерты со ссылкой на карточку сделки при ошибках обработки события
  • Эволюция схемы события без остановки обмена
Архитектура
External system HTTP → Kafka producer Kafka topic Consumer Bitrix24 REST Azure AD Telegram-алерты с deep link
Результат

Обмен стал событийным и переживаемым: сбой в обработчике не теряет событие и не молчит — есть retry и алерт, а не тишина.

Что можно переиспользовать
Producer HTTP → Kafka Consumer с матчингом по бизнес-ключу Схема алертинга в Telegram при сбоях обработки