Create test inbox

PaymentKits guide · 5 min read

Handle duplicate webhook deliveries without duplicate work

A concise pattern for logical-event deduplication, retry safety and observable delivery records.

Keep delivery and event separate

Record each delivery attempt, but perform business work only once per provider event identity.

Return stable responses

A durable acknowledgement can still be followed by a duplicate. Make the receiver idempotent using an event key.

Test the boundary

Use a synthetic duplicate fixture before relying on a provider retry in production.