webhooks.md
Webhooks
Webhooks let you set up integrations that subscribe to automated notifications (events) on the Finix API. When an enabled event occurs, Finix sends an HTTP POST payload to the Webhook's configured URL.
Create a Webhook
- POST /webhooks: Create a Webhook to receive webhook events for specified entities (e.g., transfer, merchant) to a URL provided by you. When an enabled event occurs, Finix sends a POST request to this URL with the webhook event payload.
{% admonition type="info" %} The response includes a secret_signing_key. Store this value securely. It is used to verify that incoming payloads were sent by Finix. {% /admonition %}
Authentication
Set authentication.type to control how Finix authenticates requests to your endpoint:
- NONE (default) — No authentication header is sent
- BASIC — Provide authentication.basic.username and authentication.basic.password
- BEARER — Provide authentication.bearer.token
To learn how to add webhook authentication, see Creating Authenticated Webhooks.
Event Filtering
By default, a new Webhook subscribes to a standard set of events. Include enabled_events to override the default set of events and receive only specific entity/type combinations. See Webhook Events for supported entities and event types.
List Webhooks
- GET /webhooks: Retrieve a list of Webhook resources.
Fetch a Webhook
- GET /webhooks/{webhook_id}: Retrieve the details of an existing Webhook.
Update Webhook
- PUT /webhooks/{webhook_id}: Update an existing Webhook to:
- Enable or disable a Webhook. Disabled webhooks stop receiving events at the configured URL.
- Add authentication to a Webhook
- Override default event filters by specifying the list of events you are interested in receiving