> ## 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.

# Communications Extensions

> How Omneo syncs with email and SMS marketing platforms.

Omneo integrates with communications platforms to synchronise profile data, preferences, and incentive events, enabling personalised, permission-based customer communications.

## Supported platforms

Klaviyo, Emarsys, Salesforce Marketing Cloud (SFMC), Campaign Monitor, Bronto, Responsys, SendGrid, MailChimp, and others via generic webhook/Target integration.

## What comms extensions do

### Profile and preference sync

When a customer's profile or communication preferences change in Omneo, the update is pushed to the connected comms platform in real time. This ensures that:

* Opt-ins and opt-outs are honoured immediately
* Profile attributes (name, birthday, tier, reward balance) are current in your comms platform
* Segments based on Omneo data stay accurate

### Incentive notifications via Targets

Omneo's Target system sends formatted JSON payloads to comms platform endpoints when incentive events occur. This powers:

* Reward issuance emails ("You have \$50 to spend!")
* Reward expiry reminders ("Your reward expires in 14 days")
* Tier attainment congratulations ("You've reached Gold tier!")
* Benefit notifications ("Your birthday gift is ready")

### eReceipts

Post-purchase digital receipts are triggered via the comms extension when a transaction is created and an email address is on file.

## How comms extensions are configured

Comms integrations use a combination of:

1. **API credentials** for the comms platform (list ID, API key)
2. **Omneo Targets** configured with the comms platform's API endpoint and the Twig template for each notification type
3. **Reactions** that trigger the Targets on the relevant Omneo events
4. **Webhooks** for real-time profile sync

<Note>Content needed: per-platform Klaviyo and SFMC setup guides with example Target templates.</Note>
