Пошаговый цикл обработки входящего события
Вся цепочка начинается с действия пользователя или фоновой службы, например с проведения документа в учетной базе. Система фиксирует изменение статуса и генерирует стандартизированный пакет сведений в формате JSON.
Затем сервис формирует сетевой запрос и направляет его по заранее указанному сетевому адресу внешней системы. Сервер-получатель принимает пакет, проверяет электронную подпись и подтверждает доставку служебным кодом ответа.
Если проверка безопасности прошла успешно, запускается внутренний сценарий обработки полученных данных в принимающей программе.
Такой порядок действий занимает доли секунды, обеспечивая практически бесшовную синхронизацию удаленных баз данных.
Пример фиксации оплаты и смены статуса заказа
Представим условную компанию, продающую оборудование через интернет-каталог. Клиент оплачивает выставленный счет через платежный шлюз банка, после чего запускается обмен информацией между сервисами.
Последовательность выполнения операций выглядит следующим образом:
- Банковский шлюз подтверждает списание средств и формирует сетевой пакет.
- Отправка вебхука с номером заказа и подтверждением платежа в учетную систему компании.
- Проверка подлинности входящего сообщения учетной базой и обновление статуса на Оплачено.
- Автоматическая отправка уведомления кладовщику о готовности заказа к комплектации.
Ограничения технологии и возможные сбои
Если принимающий сервер временно перегружен или проводит технические работы, соединение прервется по тайм-ауту. Без механизма повторной отправки со стороны источника событие будет утеряно, а заказ зависнет в неоплаченном статусе.
Другая сложность — дублирование пакетов при нестабильной связи, когда подтверждение не успевает дойти до отправителя, и система посылает уведомление повторно.
Именно поэтому архитектура обмена должна предусматривать защиту от повторной обработки одного и того же пакета данных.
Надежные приемники всегда сверяют неповторяющийся идентификатор входящего события перед внесением изменений в базу.
Правила построения надежных связок
При проектировании обмена требуйте реализации механизма проверки повторов, чтобы повторно пришедший пакет не создавал дубль документа. Также обязательно ведите журнал входящих пакетов с фиксацией времени и кода ответа.
Контроль за очередью сообщений позволяет вовремя обнаружить сетевые проблемы до того, как они повлияют на работу торговых точек.
Регулярная сверка итоговых реестров за сутки помогает выявить любые пропущенные уведомления и устранить расхождения.
Как с этим работает Coagent
Платформа Coagent работает с почтой, Telegram, таблицами и 1С по правилам вашей компании. Рутину берёт агент, а подтверждение остаётся за человеком.
Запросите у технической службы схему повторной отправки сообщений при сбоях во внешних интеграциях.