Webhook signatures share the HMAC canonicalization scheme used for
server-to-server requests. See Authentication.
Event types
Delivery
- Webhooks are
POSTed as JSON to your registered endpoint. - We retry with exponential backoff on non-2xx responses for up to 24 hours.
- Order is not guaranteed. Treat your handler as idempotent — keyed on
event_id.
Signature verification
Each webhook carries anX-Zennopay-Signature header. Verify it by
re-computing HMAC-SHA256 over the canonical request (see
Authentication) using the webhook signing secret issued
during onboarding (distinct from your API signing secret).