Webhooks — проста ідея, складна експлуатація
У реальності webhooks приходять повторно, із затримками, інколи не приходять зовсім. Без дисципліни ви отримуєте дублікати платежів/замовлень і хаос у підтримці.
1) Безпека
- Підпис (HMAC) і перевірка часу/nonce.
- IP allowlist де доречно.
2) Ідемпотентність
Один і той самий event може прийти 2–10 разів. Зберігайте event id, робіть дедуп і обробку “один раз”.
3) Ретраї і черги
Приймання → запис → асинхронна обробка. Це захищає від піків і робить систему стійкою до тимчасових помилок.
4) Delivery log
Журнал доставок: payload, статуси, час, помилки, кореляційні id. Це економить години дебагу.
Підсумок
Надійні webhooks — це верифікація + ідемпотентність + черги/ретраї + журнал. Тоді інтеграції стають передбачуваними.