Skip to main content

How to Integrate with Omnisend

Connect Omnisend via OAuth, sync loyalty properties to your contacts, and choose which loyalty events to send, with a full tag reference and troubleshooting.

Overview

Connecting CWILL Loyalty with Omnisend lets you trigger Omnisend automations from loyalty events like points earned, tier upgrades, and expiring rewards — and use loyalty data such as points balance and tier name to personalize your email, SMS, and push messages.

Two types of data flow into Omnisend once you're connected:

  • Events — real-time loyalty activity (points earned, reward redeemed, tier upgraded…). In Omnisend these arrive as Custom events and can be used to trigger automation workflows.

  • Customer properties — profile attributes (points balance, tier name, referral link…) kept in sync on your Omnisend contacts. In Omnisend these show up as Custom properties and can be used for segments and personalization.

Setup takes 3 steps:

  1. Connect Omnisend

  2. Sync data

  3. Pick the loyalty events to send in Event settings


Before You Start

  • You need the Growth plan or above.

  • We only update contacts that already exist in Omnisend. The sync matches your loyalty members against your existing Omnisend contact list by email address and fills in their loyalty properties. It never adds new contacts — loyalty members who aren't already in your Omnisend list are skipped, so this integration won't grow your contact count or your bill.


Step 1: Connect Omnisend

CWILL Loyalty connects to Omnisend through OAuth. You don't need to create, copy, or store an API key — you just approve the connection once inside Omnisend.

How to connect:

  1. In CWILL Loyalty admin, go to Integrations

  2. Under Email marketing integrations, open Omnisend

  3. Click Connect

  4. You'll be redirected to Omnisend

  5. Review the permissions and click Allow

  6. You'll be redirected back to CWILL Loyalty

Permissions requested: Read & write contacts,events and brand.


Step 2: Sync Data

After connecting, click Sync data on the Omnisend page. This fills in the loyalty properties on the contacts you already have in Omnisend.

Wait until you see "Sync successful. Customer properties is now up to date." — that's it.

💡 You only need to sync once. From then on, loyalty properties stay up to date automatically whenever a value changes in CWILL Loyalty.


Step 3: Pick the Loyalty Events to Send

Events are what trigger your Omnisend automations. You choose which ones to send in Event settings.

  1. Click Event settings — the button with the gear icon in the top-right corner of the Omnisend page. (You can also reach it from the Integrations page, next to the Email marketing integrations heading.)

  2. In the Loyalty event settings window, tick the events you want to send:

Tick to enable

Extra setting

Points earned

Reward redeemed

Tier upgraded

Referral share

Referral completed

Birthday reward available

Points expiring - Last Chance

When the points are expiring in ___ days

Points expiring - Warning

When the points are expiring in ___ days

Reward expiring - Last Chance

When the reward is expiring in ___ days

Reward expiring - Warning

When the reward is expiring in ___ days

  1. For the four expiring events, tick the box and a day field appears underneath. Enter how many days ahead the reminder should go out — any whole number from 1 to 999. The typical setup is a longer Warning (for example 30 days) and a shorter Last Chance (for example 3 days).

  2. Click Save.

⚠️ These settings are shared across all your connected email marketing platforms. The loyalty events are produced by CWILL Loyalty, not by any one email app, so Event settings is a single list — what you tick here is sent to Klaviyo, Omnisend, and Cartsee alike. Turning an event off here turns it off everywhere. That's also why the button lives on the Email marketing integrations group rather than on one platform's page.

⚠️ Note: All events are off by default — turn on only the ones you plan to use, to keep your Omnisend account clean.


Events

Events are sent to Omnisend in real time and appear as Custom events in the automation trigger dropdown.

The short names you tick in Event settings arrive in Omnisend with a CWILL Loyalty - prefix, so they're easy to find in a long trigger list. For example, ticking Points earned produces the Omnisend custom event CWILL Loyalty - Points earned.

Event in Omnisend

When it's sent

CWILL Loyalty - Points earned

When a customer successfully earns points.

CWILL Loyalty - Reward redeemed

When a customer redeems points for a reward coupon.

CWILL Loyalty - Tier upgraded

When a customer's loyalty tier is upgraded.

CWILL Loyalty - Points expiring - Warning

Sent 30 days before expiry by default, at 10:00 AM in your store's time zone. You can change the number of days in Event settings.

CWILL Loyalty - Points expiring - Last chance

The final reminder before points expire, sent at 10:00 AM in your store's time zone. You can change the number of days in Event settings.

CWILL Loyalty - Reward expiring - Warning

Sent 30 days before the coupon expires by default, at 10:00 AM in your store's time zone. You can change the number of days in Event settings.

CWILL Loyalty - Reward expiring - Last chance

The final reminder before a coupon expires, sent at 10:00 AM in your store's time zone. You can change the number of days in Event settings.

CWILL Loyalty - Birthday reward available

When a customer becomes eligible to claim their birthday reward. Sent at 10:00 AM in your store's time zone on the first eligible day of the claim window. If a customer updates their birthday and hasn't claimed this year's reward yet, the event fires again on the new eligible date.

CWILL Loyalty - Referral share

When a referred friend submits their email address and the referral enters a pending state. This event is sent to the referred friend.

CWILL Loyalty - Referral completed

When a referral is successfully completed and the referrer earns their reward. This event is sent to the referrer.


Event Properties

Each event carries extra data you can use in trigger filters, conditional splits, and message personalization. In Omnisend these appear as custom fields on the event.

CWILL Loyalty - Points earned

Property

Type

Omnisend syntax

Description

Example

points_added

number

[[event.points_added]]

Points earned in this action

50

earn_action

text

[[event.earn_action]]

Source of the points. One of: Sign up reward, Place an order, Referral reward, Birthday reward, Subscribe to newsletter, Share on X, Share on Facebook, Follow on Instagram, Follow on TikTok, Points import, Points reset, Leave a review, Leave a review with photos, Visit website reward, Subscribe to YouTube, Visit a URL reward, Custom action, Edit balance, Flow reward

Place an order

activity_title

text

[[event.activity_title]]

Label shown in the customer's activity feed

Earned points for purchase

CWILL Loyalty - Reward redeemed

Property

Type

Omnisend syntax

Description

Example

reward_code

text

[[event.reward_code]]

Coupon code issued to the customer

CWL-123456

reward_name

text

[[event.reward_name]]

Name of the reward

$10 off

reward_expiry_date

date

[[event.reward_expiry_date]]

Expiry date of the coupon

2025-09-15

points_spent

number

[[event.points_spent]]

Points deducted for this redemption

200

reward_redeemed_date

text

[[event.reward_redeemed_date]]

Timestamp of the redemption

2025-07-10T14:32:00Z

reward_terms

list

[[event.reward_terms]]

Terms and conditions of the coupon

["Min spend $50", "single use"]

CWILL Loyalty - Tier upgraded

Property

Type

Omnisend syntax

Description

Example

current_vip_tier

text

[[event.current_vip_tier]]

Tier the customer has been upgraded to

Gold

previous_vip_tier

text

[[event.previous_vip_tier]]

Tier the customer was on before the upgrade

Silver

CWILL Loyalty - Points expiring — Warning / Last chance

Both events carry the same properties.

Property

Type

Omnisend syntax

Description

Example

expiring_points

number

[[event.expiring_points]]

Number of points about to expire

320

points_expiry_date

date

[[event.points_expiry_date]]

Date those points expire

2025-08-31

expiring_days_before

number

[[event.expiring_days_before]]

Days remaining until expiry

7

CWILL Loyalty - Reward expiring — Warning / Last chance

Both events carry the same properties.

Property

Type

Omnisend syntax

Description

Example

reward_code

text

[[event.reward_code]]

Coupon code

CWL-123456

reward_name

text

[[event.reward_name]]

Name of the reward

$10 off

reward_expiry_date

date

[[event.reward_expiry_date]]

Date the coupon expires

2025-09-15

expiring_days_before

number

[[event.expiring_days_before]]

Days remaining until expiry

3

⚠️ Note: You don't need to add expiring_days_before as a trigger filter in Omnisend. This value is already controlled by the day setting in Event settings — the event only fires on the day you configured, so an extra filter would just make the workflow harder to maintain.

CWILL Loyalty - Birthday reward available

Property

Type

Omnisend syntax

Description

Example

birthday_points

number

[[event.birthday_points]]

Birthday reward points value

100

birthday_date

date

[[event.birthday_date]]

Customer's birthday date

2025-08-15

CWILL Loyalty - Referral share

Sent to the referred friend.

Property

Type

Omnisend syntax

Description

Example

customer_name

text

[[event.customer_name]]

Name of the referrer

Jane Smith

customer_email

text

[[event.customer_email]]

Email of the referrer

friend_reward_points

number

[[event.friend_reward_points]]

Points awarded to the referred friend

50

friend_reward_name

text

[[event.friend_reward_name]]

Coupon name issued to the referred friend

10% off first order

friend_reward_code

text

[[event.friend_reward_code]]

Coupon code issued to the referred friend

CWL-123456

CWILL Loyalty - Referral completed

Sent to the referrer.

Property

Type

Omnisend syntax

Description

Example

customer_reward_name

text

[[event.customer_reward_name]]

Reward name issued to the referrer

$15 off

friend_email

text

[[event.friend_email]]

Email of the referred friend

customer_reward_points

number

[[event.customer_reward_points]]

Points awarded to the referrer

100

customer_reward_code

text

[[event.customer_reward_code]]

Coupon code issued to the referrer

CWL-123456


What Gets Synced — Customer Properties

These properties are written to your existing Omnisend contacts and updated automatically whenever the value changes in CWILL Loyalty. Use the Omnisend syntax column to reference them in messages and segment conditions.

Property

Type

Omnisend syntax

Description

Example

cwloy_state

text

[[contact.custom_properties.cwloy_state]]

Membership status: member / guest / exclude

member

cwloy_birthday

date

[[contact.custom_properties.cwloy_birthday]]

Customer's birthday. Defaults to 1970 as the year if no year was provided

1970-08-15

cwloy_points_balance

number

[[contact.custom_properties.cwloy_points_balance]]

Current redeemable points balance

480

cwloy_points_expiry_date

date

[[contact.custom_properties.cwloy_points_expiry_date]]

Expiry date of the customer's points

2025-08-31

cwloy_tier_name

text

[[contact.custom_properties.cwloy_tier_name]]

Name of the customer's current loyalty tier

Gold

cwloy_next_tier_name

text

[[contact.custom_properties.cwloy_next_tier_name]]

Name of the next tier, based on tier order in the CWILL Loyalty admin

Platinum

cwloy_tier_expiration_date

date

[[contact.custom_properties.cwloy_tier_expiration_date]]

Date on which the customer's current tier expires

2026-01-01

cwloy_tier_rewards

list

[[contact.custom_properties.cwloy_tier_rewards]]

Perks and benefits of the customer's current tier

["Free shipping", "2x points"]

cwloy_referral_url

text

[[contact.custom_properties.cwloy_referral_url]]

Customer's unique referral link

cwloy_last_earn_date

date

[[contact.custom_properties.cwloy_last_earn_date]]

The date the customer last earned points

2025-07-02

cwloy_last_redeem_date

date

[[contact.custom_properties.cwloy_last_redeem_date]]

The date the customer last redeemed points

2025-07-10

💡 Tip — always set a fallback. Properties can be empty (a customer with no tier yet, for example). Add a default so your email doesn't show a blank space:

[[contact.custom_properties.cwloy_tier_name | default: "Member"]]

💡 Tip — formatting dates. Omnisend can reformat date values for you:

[[contact.custom_properties.cwloy_points_expiry_date | date: "%B %d, %Y"]] → August 31, 2025


Things to Keep in Mind

  1. Event settings are shared across email platforms. One list, applied to every connected email marketing app. If you also use Klaviyo or Cartsee, ticking or unticking an event changes what they receive too.

  2. Turning an event off stops new sends, but keeps past data. Events already received stay in Omnisend; workflows using that trigger simply stop firing.

  3. The connection is tied to one Omnisend account. Authorizing from a different account replaces the existing connection rather than adding a second one.


Troubleshooting

1. I connected successfully but no loyalty properties appear on my Omnisend contacts.

Click Sync data on the Omnisend page. Properties are created on the first sync and updated automatically afterwards. If a specific customer still has nothing, check that they exist in your Omnisend contact list under the same email address — the sync skips loyalty members who aren't already in Omnisend.

2. The sync failed.

Check that the badge still shows Connected — if the authorization expired, reconnect first. Then click Sync data again. If it keeps failing, contact support with the time you tried.

3. My event isn't in the Omnisend trigger dropdown.

Confirm the event is ticked under Event settings and that you clicked Save. Then refresh the Omnisend workflow builder — custom events only appear after Omnisend has received them at least once.

4. My personalization tag shows up as plain text in the email.

You're most likely using the wrong bracket style or a typo'd property name. Use [[event.points_added]] for event data and [[contact.custom_properties.cwloy_points_balance]] for profile data.

5. A customer's points balance in Omnisend is out of date.

Properties sync automatically on every loyalty action. If a value looks stale, click Sync data to force a refresh for all customers.

6. The banner says my connection has expired.

Click Connect on the Omnisend card and approve again in Omnisend. Your event settings and sync history are preserved.

Did this answer your question?