Set up your webhook endpoint
To receive webhook events in your application, create and register a webhook endpoint on your side.
You can either register a single webhook endpoint to handle all events, or register a different endpoint for each type of event.
Listen only to the events you are interested in
Identify the events you need and subscribe only to those.
Remove events that are not useful or no longer needed.
Create a webhook endpoint
Create an HTTP or HTTPS endpoint capable of receiving webhook requests through a POST method.
Your webhook endpoint must:
- accept
POSTrequests with aContent-Type: application/jsonpayload - return a
200 OKresponse immediately (no response body required)
If your endpoint is unavailable or does not respond correctly, the webhook delivery mechanism will retry the request. Delivery is retried up to 5 times with increasing intervals between attempts.
Test your webhook endpoint
During initial development, use a Sandbox webhook, where you can manually trigger simulated events to verify that your
endpoint behaves correctly.
You can also simulate success and failure scenarios using the Sandbox dialogs.
Dynamic webhook URL (templates / formatting)
Payment webhooks
We support webhook URL formatting where you can insert the following placeholders:
- tenantSlug
- pointOfSale
- environment
For instance, you can create the following webhook URL:
https://my.server.com/webhook/{tenantSlug}?pos={pointOfSale}&environment={environment}
where:
- tenantSlug = 'myTenant' - your tenant slug
- pointOfSale = '123457890' - the POS ID (for payment webhooks)
- environment = 'production' | 'sandbox'
the called URL would be:
https://my.server.com/webhook/myTenant?pos=123457890&environment=production
This allows you to have a single webhook endpoint that can listen to multiple webhook events from different sources.
Account information webhooks
We support webhook URL formatting where you can insert the following placeholders:
- tenantSlug
- inquiryId
- environment
For instance, you can create the following webhook URL:
https://my.server.com/webhook/{tenantSlug}?inq={inquiryId}&environment={environment}
where:
- tenantSlug = 'myTenant' - your tenant slug
- inquiryId = 'ABCDEFGHIJK' - the ID of the selected inquiry
- environment = 'production' | 'sandbox'
the called URL would be:
https://my.server.com/webhook/myTenant?inq=ABCDEFGHIJK&environment=production
Ensure the resulting URL is valid!