Webhooks allow your system to receive real-time HTTP notifications whenever events occur in your BRZ account — such as incoming PIX payments, completed cash-outs, limit approvals, and more.
Instead of polling the API for status changes, you register a URL and the BRZ platform pushes event data to your server as soon as it happens.
Webhook endpoints require Bearer Token or API Key authentication with webhooks:read and/or webhooks:write scopes.
Register a new webhook to start receiving notifications:
Request fields:
Response:
The secret is returned only at creation time. Store it securely — you will need it to validate webhook signatures.
Every webhook delivery includes two headers for signature verification:
The signing process works as follows:
whsec_ prefix from the signing key (the secret returned at creation time)"." + raw request bodyx-webhook-signature headerAlways use the raw request body (not a parsed/re-serialized JSON) to compute the signature. Re-serializing may change field ordering and break validation.
Use ["*"] in the events field to subscribe to all events at once.
Every webhook delivery sends an HTTP POST to your URL with a JSON payload:
If your URL returns an error (HTTP status >= 400 or timeout), the system automatically retries with exponential backoff:
After all retries are exhausted, the delivery is marked as failed. You can manually resend it later.
Retrieve all registered webhooks:
Query parameters:
Retrieve details of a specific webhook, including status and last activity timestamps:
Update an existing webhook. All fields are optional — send only what you want to change:
Updatable fields:
Permanently remove a webhook. Pending deliveries for this webhook will be cancelled.
This action is irreversible. All pending deliveries for this webhook will be cancelled.
View the delivery history for your webhooks. Each delivery shows the event, status, payload sent, response received, attempt count, and timestamps.
Available filters:
Pagination:
Response includes: page, totalPages, total, limit, offset, and an array of deliveries with payload and response_body.
Retrieve details of a specific delivery, including the payload sent, HTTP response status, and number of attempts:
Manually resend a delivery that failed or was not delivered. Useful when:
The delivery will be re-queued and delivered on the next worker execution cycle.
secret from webhook creation to verify that requests are authentic.transaction_id or delivery_id to deduplicate notifications, as retries may deliver the same event more than once.["*"] to reduce noise and processing overhead.