Webhooks
Receive real-time notifications when events occur in your Tiquo account.Overview
Webhooks allow your application to:- React to events in real-time
- Sync data with external systems
- Trigger automated workflows
- Maintain data consistency
How Webhooks Work
- Event Occurs - Something happens in Tiquo
- Webhook Triggered - Tiquo sends HTTP POST
- Your Server Receives - Process the event
- Acknowledge - Return 2xx status
Setting Up Webhooks
1
Create Endpoint
Set up an HTTPS endpoint on your server
2
Register Webhook
Go to Settings → Webhooks → Add Webhook
3
Configure Events
Select which events to receive
4
Save Signing Secret
Copy the signing secret for verification
5
Test
Use the test button to verify setup
Available Events
Customer Events
| Event | Description |
|---|---|
customer.created | New customer created |
customer.updated | Customer profile updated |
customer.deleted | Customer deleted |
Order Events
| Event | Description |
|---|---|
order.created | New order/booking created |
order.updated | Order updated |
order.confirmed | Order confirmed |
order.completed | Order completed |
order.cancelled | Order cancelled |
Payment Events
| Event | Description |
|---|---|
payment.succeeded | Payment processed |
payment.failed | Payment failed |
payment.refunded | Payment refunded |
Loyalty Events
| Event | Description |
|---|---|
loyalty.points_earned | Points added |
loyalty.points_redeemed | Points used |
loyalty.tier_changed | Customer tier changed |
Webhook Payload
Standard Format
Headers
| Header | Description |
|---|---|
X-Tiquo-Signature | HMAC signature |
X-Tiquo-Timestamp | Unix timestamp |
X-Tiquo-Event | Event type |
Content-Type | application/json |
Verifying Webhooks
Always verify webhook signatures:Responding to Webhooks
Success Response
Return2xx status code:
Failure Handling
If you return non-2xx or timeout:- Tiquo retries the webhook
- Exponential backoff: 1m, 5m, 30m, 2h, 12h
- Maximum 5 retries
- Failed webhooks visible in dashboard
Best Practices
Respond Quickly
Respond Quickly
Return 200 immediately, process async:
Handle Duplicates
Handle Duplicates
Webhooks may be sent multiple times. Use
id for idempotency:Log Everything
Log Everything
Log webhook receipts for debugging:
Use HTTPS
Use HTTPS
Always use HTTPS endpoints for webhooks.
Testing Webhooks
Test Button
Use the dashboard test button:- Go to Settings → Webhooks
- Click Test next to your webhook
- Check your endpoint receives it
Local Development
Use a tunnel for local testing:Webhook Logs
View webhook history:- Go to Settings → Webhooks
- Click webhook to see logs
- View deliveries and responses