> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omneo.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks

> HTTP callbacks that Omneo sends to external systems when events occur.

Webhooks are HTTP callbacks that Omneo sends to a configured endpoint when specific events occur on the platform. They are the primary mechanism for keeping external systems in sync with Omneo data in real time.

## What webhooks do

When a webhook is configured for an event, Omneo sends an HTTP POST request to the specified URL every time that event fires. The request body contains the Event Context for that event type.

## Common webhook events

| Event                 | Description                       |
| --------------------- | --------------------------------- |
| `profile.created`     | A new profile was created         |
| `profile.updated`     | A profile's data changed          |
| `transaction.created` | A new transaction was recorded    |
| `reward.created`      | A reward was issued to a profile  |
| `benefit.created`     | A benefit was issued to a profile |
| `tier.achieved`       | A profile achieved a new tier     |
| `profile.merged`      | Two profiles were merged          |

## Webhook payload

The webhook body is the **Event Context** for the triggering event. Contexts include additional data beyond the standard API response, for example, a transaction context includes the profile's aggregations and current incentive state, reducing the need for callback calls to fetch additional data.

## Configuring webhooks

Webhooks are configured in CX Manager under **Settings > Webhooks**, or via the Webhooks API. Each webhook requires:

* **URL**: the endpoint to receive the POST request
* **Events**: which events to subscribe to

Each webhook can also carry a **Condition**, a JSON Logic rule that must pass before the event is delivered, and an **Extra data template**, a Twig template that merges additional fields into the payload. See the [Webhooks dev guide](/dev-guides/webhooks/webhooks) for how to use both.

## Webhooks vs Targets

|                | Webhooks                       | Targets                             |
| -------------- | ------------------------------ | ----------------------------------- |
| Payload format | Standard Omneo Event Context   | Custom Twig template                |
| Primary use    | System-to-system sync          | Formatted comms platform data       |
| Invocation     | Automatic on configured events | Via reaction action (`target.send`) |

Use webhooks when you need the full event context delivered to your system. Use Targets when you need a specifically shaped payload for a comms platform.

## Delivery reliability

Each event is delivered once. Omneo does not retry failed deliveries, so ensure your endpoint returns a 2xx response to acknowledge receipt and reconcile against the API if you need guaranteed processing. See the [Webhooks dev guide](/dev-guides/webhooks/webhooks#delivery-behaviour) for delivery details.
