1
Collapse retries at ingestion
identifier dedup keys on the webhook-id header (then a provider event id), so most provider retries never become a second event. It’s load reduction, not a guarantee — the next two layers cover the rest.2
Deliver only what you verified
--require-verified forwards only events whose source was authenticated (the verified and authenticated states); an unattempted event is dropped by the filter, and a failed one is blocked outright. Your receiver can trust that a signed delivery is genuine.3
Dedup on webhook-id at the receiver
The forwarded event carries a stable
webhook-id. Record processed ids and short-circuit repeats — this is the layer that actually makes the consumer idempotent.