Интеграция редко бывает сложной в демонстрации и почти всегда сложна в жизни. Оплата прошла, а вебхук не дошёл. CRM ответила ошибкой, и заявка потерялась. Сервис изменил формат ответа, и обмен встал молча. Клиенту нужно, чтобы данные ходили в обе стороны и чтобы при сбое было понятно, где именно они застряли.
Подключаю платёжные системы с полным циклом: оплата, вебхуки статусов, возвраты, проверка подписи запроса. Обмен с CRM и учётными системами настраиваю в обе стороны, с очередью и повторами. Уведомления развожу по каналам: почта, Telegram, сообщения в интерфейсе. Каждый обмен пишу в журнал, чтобы по конкретному заказу было видно, что и когда ушло. Отказ внешнего сервиса обрабатываю отдельно, а не считаю его невозможным.
Заявки и платежи перестают теряться между системами, а разбор спорной ситуации занимает минуты: видно запрос, ответ и время. Сбой внешнего сервиса не роняет заказ, операция повторяется сама.