Overview
Whenever a payment event occurs (paid, expired, cancelled, refunded), Quickei sends an HTTP POST request to your configuredcallback_url with a JSON payload. The request includes an HMAC-SHA256 signature for verification.
Webhook Flow
Events
Payload Format
Headers
Signature Verification
Every webhook includes anX-Quickei-Signature header. Always verify the signature before processing the event.
- PHP
- Python
- Node.js
Retry Policy
If your endpoint does not return a200 status code, Quickei retries with exponential backoff:
After 3 failed attempts, the webhook is marked as failed. Check the API Logs in your Merchant Dashboard for delivery status.
Best Practices
Always verify signatures
Never process a webhook without verifying the
X-Quickei-Signature header. This prevents spoofed events.Return 200 quickly
Acknowledge the webhook immediately with a
200 response. Do heavy processing (email, inventory, etc.) asynchronously.Handle duplicates
Webhooks may be delivered more than once. Use the
order_id as an idempotency key to prevent double-processing.Use HTTPS only
Webhook URLs must use HTTPS. HTTP endpoints and private/localhost IPs are rejected.

