Skip to main content
Version: 202502

Webhooks

You can specify multiple webhook URLs when creating your Checkout Intents, Payment Intents, Refunds, or Payouts. There is no way to specify webhook URLs from the dashboard; the list of webhooks must be provided on each resource creation that supports them.

Each valid URLs you provide will automatically be subscribed to all type of sub-statuses change. If you only need a subset of certain sub-status changes, you can filter it in your code as status and sub_status will always be present.

Authentication

When creating a Checkout Intent or Payment Intent, you can provide an optional webhook_secret which will be passed as a header named Orchestrapay-Webhook-Secret, so you can authenticate the request.

Frequency

We will attempt to send you each webhook in real-time and we will retry as long as we don't receive a 200 status code from your webhook endpoints.

Webhook payloads are sent to all the URLs you provided and we re-try each of them independently, we do not stop if one returns a 200 status code.

Payload

The core of the webhook payload has the same properties, albeit each status or sub-statuses may have additional properties.

You can find the exhaustive list of payloads in the Webhook Payloads page.