Skip to main content

Webhooks Setup

Webhooks notify your application when a legal entity or document changes. Use them for updates, then call the corresponding GET endpoint to read the latest resource.

Create a public HTTPS endpoint. For sandbox testing, you can use external service like: https://webhook.site, to receive and inspect test events.

1. Create a webhook

POST /event-destinations

{
"event": "legal_entity.synchronized",
"target": "https://your-domain.example/webhook",
"delivery": "webhook"
}

2. Confirm the configuration

Response:

{
"eventId": "019ffeec-b9a7-7d3d-abac-2be663ec3de6",
"event": "legal_entity.synchronized",
"delivery": "webhook",
"target": "https://your-domain.example/webhook",
"authType": "none",
"authKey": null,
"authToken": null,
"createdAt": "2026-08-14T06:19:14+00:00",
"updatedAt": "2026-08-14T06:19:14+00:00"
}

Or with a call to GET /event-destinations/{eventId} API endpoint.

3. Validate the received event

All the messages sent to your endpoint are sent with a POST request, like:

{
"eventId": "019e91b7-f799-7df7-a469-4824b2656b0e",
"eventType": "legal_entity.synchronized",
"tin": "1758250844",
"name": "Legal Entity Name",
"status": "ACTIVE"
}

We manage to send the messages to your endpoints with a queue: if your endpoint fails (we don't get a 200 response) then the webhook will retry 15 times every 300 seconds with a back-off rate of 1.25 for a total of about 10 hours.

If you want to disable endpoints during an operation, you can send header X-DisableEndpoints: true. This header takes effect when sending a new customer invoice or when importing customer or supplier invoices.