Retry Behaviour
How VerifiMe retries failed webhook deliveries
HTTP Response Semantics
VerifiMe honours HTTP response semantics when deciding whether and when to retry:
| Your response | VerifiMe behaviour |
|---|---|
| 2xx | Success - no retry |
| 4xx (except 408, 429) | Permanent failure - no retry. Fix the issue and contact VerifiMe support. |
| 408, 5xx, timeout | Transient failure - retried with automatic backoff |
429 or 503 + Retry-After header | Rate limited - VerifiMe waits the duration you specify before retrying |
429 or 503 without Retry-After | Transient failure - retried with automatic backoff |
Important: Returning a 4xx status (other than 408 and 429) permanently stops delivery for that event. Always return HTTP 200 for business logic issues such as unknown application references - reserve non-200 responses for genuine technical failures.
Automatic Backoff
For transient failures, VerifiMe re-attempts delivery after a 15-minute delay. After 5 failed attempts, delivery is abandoned and the VerifiMe team is notified for manual follow-up.
Retry-After Support
If your endpoint is temporarily unavailable or rate-limited, return 429 or 503 with a Retry-After header (integer seconds or RFC 1123 date). VerifiMe will delay the retry by exactly that duration, up to a maximum of 12 hours.