> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://academy.zrupay.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to configure Webhooks

# What is a Webhook?

A webhook is an HTTP notification that Zru sends to your server each time a relevant event occurs in your environment: a payment is completed, a subscription is charged, an authorization is created, etc.

Configuring webhooks allows your system to react to events in real time without needing to poll the API.

# How to configure a Webhook

- Go to **Developers** in the left side menu.
- Select the **"Webhooks"** tab.
- Click **"Add webhook"**.
- Enter a **Name** to identify the webhook (for example: "CRM notifications").
- Enter the **URL** of your endpoint (the address to which we will send notifications).
- In **Notification types**, choose which events you want to receive. They are grouped into nine categories you can expand: **Transactions**, **Subscriptions**, **Authorizations**, **Sales**, **Transfers**, **Customers**, **Wallets**, **IBAN** and **Checkout**.
- Use the **Enabled** toggle to activate or deactivate the webhook on creation.
- Click **"Create"**.

> 🧐 Each category shows a counter with the types you have selected out of the total, and has a **Select all** option to check them in one go.

> 🧐 Next to each event name you will see its **technical identifier** (for example `transaction_confirmation_error`). That is the value you will receive in the notification, so you can use it to build your integration.

> ✋ You must choose at least one notification type to create the webhook.

# Actions available on Webhooks

Once created, the webhook appears in the list with its **Name**, its **URL**, the **Type** (the identifiers of the events it is subscribed to) and whether it is **Enabled**. From the header you can filter by status and export the list to CSV.

# Verifying delivery

From **Developers** ▶︎ **Notifications** you can see all notifications sent to your endpoint and the responses returned, making it easy to debug any delivery issues.

# Webhook security

Each notification includes a signature header you can use to verify that the request genuinely comes from Zru. See our [API documentation](https://docs.zrupay.com/) for details on how to validate signatures.

> 🧐 Notifications are always signed with the environment's **Default key**. You can learn more in [this guide](https://academy.zrupay.com/en/article/public-key-and-secret-key-1przt32/).