Skip to main content

Overview

Webhooks provide an asynchronous alternative to the 90-second long-polling model used by the standard payment endpoint. Instead of waiting for a terminal response, you can receive payment results via HTTP callbacks to your server. When to use webhooks:
  • Your integration cannot handle 90-second HTTP timeouts
  • You prefer event-driven architecture
  • You need to process payments asynchronously
Endpoint URLs must be publicly reachable. When you create an endpoint, the system sends a validation ping to verify connectivity. Endpoints that fail this ping test cannot be created.

Endpoint Limits

Each group can configure up to 16 webhook endpoints. This limit applies across all event type subscriptions.

Managing Webhook Endpoints

Create Endpoint

Register a new webhook endpoint to receive payment notifications.

Request Body

string
required
The HTTPS URL where webhook payloads will be delivered. Must be publicly accessible.Example: "https://api.yourcompany.com/webhooks/payments"
string[]
required
Array of event types to subscribe to.Values: payment.completed, payment.failed, payment.cancelled, payment.timeout
string
Human-readable description for this endpoint.Example: "Production payment notifications"
object
Custom key-value pairs to associate with this endpoint.

Request Example

Response (201 Created)

The secret is only returned when creating the endpoint. Store it securely for signature verification. You cannot retrieve it later.

Code Example


List Endpoints

Retrieve all webhook endpoints for your group.

Response (200 OK)

Code Example


Get Endpoint

Retrieve a specific webhook endpoint by ID.

Path Parameters

string
required
The unique identifier of the webhook endpoint.

Response (200 OK)


Update Endpoint

Update an existing webhook endpoint’s configuration.

Path Parameters

string
required
The unique identifier of the webhook endpoint.

Request Body

string
Updated HTTPS URL for webhook delivery. A validation ping is sent to verify the new URL.
string[]
Updated array of event types to subscribe to.
string
Updated description for this endpoint.
string
Endpoint status. Set to disabled to pause webhook delivery without deleting the endpoint.Values: active, disabled
object
Updated custom metadata.

Request Example

Response (200 OK)

Code Example


Delete Endpoint

Remove a webhook endpoint. This action is permanent.

Path Parameters

string
required
The unique identifier of the webhook endpoint.

Response (204 No Content)

No response body is returned on successful deletion.

Code Example


Error Codes


Next Steps

Receiving Webhooks

Handle webhook payloads and verify signatures

HTTP Endpoints

Use webhookMode in payment requests

Authentication

HMAC signature computation

Data Types

Webhook data type reference