← Блог

§ БЛОГ · ПРАКТИКА

Вебхуки без двойных списаний: идемпотентность за 12 строк

Ключ = хэш тела + idempotency-key от клиента, TTL 24–72 часа. Повторная доставка от провайдера отрабатывает как no-op с тем же HTTP 200 и внутренним счётчиком «дубликат».

Если внешний API не идемпотентен, оборачивайте вызов в собственный слой с локом по бизнес-ключу заказа — иначе ретраи вебхука превратятся в двойные списания.