Configuration in Quickbutik
1
Access webhook settings
Log into your Quickbutik Control Panel and navigate to Settings → Webhooks
2
Add webhook URL
Enter your webhook endpoint URL where you want to receive notifications:
Your webhook URL must be publicly accessible and respond to GET requests. Use HTTPS in production for security.
3
Select events
Choose which events should trigger webhook notifications:
- Order events:
order.new
,order.done
,order.cancelled
- Product events:
product.add
,product.update
,product.delete
4
Test your webhook
Use the test function in the Quickbutik panel to verify your endpoint is working correctly
Development Setup
For local development, use a tool like ngrok to expose your local server:Production Deployment
For production environments, ensure your webhook endpoint is robust and scalable:Troubleshooting
Common Issues
Webhook not receiving events
Webhook not receiving events
Possible causes:
- Webhook URL is not publicly accessible
- Firewall blocking incoming requests
- Server not running or crashed
- Wrong endpoint path configured
- Test your endpoint with curl:
curl "https://your-domain.com/webhooks/quickbutik?event_type=test"
- Check server logs for errors
- Verify webhook URL in Quickbutik settings
- Use tools like ngrok for local testing
Getting timeout errors
Getting timeout errors
Possible causes:
- Webhook handler takes too long to respond
- Processing heavy operations synchronously
- Database or external API calls blocking response
- Always respond with 200 OK immediately
- Process webhook data asynchronously
- Use queue systems for heavy processing
- Implement timeout handling
Receiving duplicate events
Receiving duplicate events
Possible causes:
- Webhook endpoint responding slowly or with errors
- Network issues causing retries
- Processing failures triggering redelivery
- Implement idempotent processing
- Store processed webhook IDs to prevent duplicates
- Respond quickly with 200 OK
- Use database transactions for atomic operations
Missing webhook events
Missing webhook events
Possible causes:
- Endpoint was down during event
- Processing errors causing webhook to be marked as failed
- Rate limiting rejecting webhooks
- Implement reliable webhook processing with retries
- Monitor webhook endpoint uptime
- Use dead letter queues for failed webhooks
- Regularly poll API for missed events as backup