Why webhooks?
- Real-time — Notifications delivered within seconds
- Reliable — Automatic retries if your server is temporarily unavailable
- Secure — HMAC SHA-256 signature on every request
How it works
Webhook payload structure
Every webhook event has the same envelope format:| Field | Type | Description |
|---|---|---|
id | string | Unique event identifier |
type | string | Event type (e.g., payment.succeeded) |
created_at | string | ISO 8601 timestamp |
data | object | The event payload (varies by event type) |
Configuring webhooks
- Go to Dashboard → Settings → Webhooks
- Click Add Endpoint
- Enter your endpoint URL (must be HTTPS in production)
- Select which events to subscribe to
- Save — your webhook secret is displayed once
Retry behavior
If your endpoint doesn’t return a2xx response, Simiz retries the delivery automatically with increasing delays. After several failed attempts, the webhook is marked as failed. You can manually retry from the Dashboard.
Best practices
- Always verify signatures — See the Signature Verification page
- Respond quickly — Return
200 OKbefore processing - Handle duplicates — Use the event
idfor idempotent processing - Use HTTPS — Webhook URLs must use HTTPS in production
- Log everything — Store raw payloads for debugging
Event Catalog
Browse all available webhook events.
Signature Verification
Learn how to verify webhook signatures.

