How it works

Follow these 4 simple steps to start syncing loyalty points to contact profiles for better email personalization

yotpo logo icon

Referrals Points Changed

App connector: Yotpo Loyalty • Time to complete: 2 minutes
Why this matters: This step detects when a customer's loyalty points balance changes in Yotpo, capturing the exact moment when points are earned, redeemed, or adjusted so the workflow can sync the updated balance.

The trigger activates automatically whenever Yotpo processes a points change for any customer - whether they earned points from a purchase, referral, or review, or spent points on rewards. You'll need to install the webhook URL that MESA provides into your Yotpo loyalty program settings to establish the connection. This step captures the customer's email address and current points balance, then passes this data to the next step for processing. No other configuration is needed since the trigger responds to all points changes across your entire customer base.

List Contact

App connector: Omnisend • Time to complete: 0 minutes (Auto-configured)
Why this matters: This step searches your Omnisend contact database to find the specific customer whose points balance changed, ensuring the workflow updates the correct contact record.

The step automatically queries Omnisend using the customer email address from the Yotpo trigger to locate their contact profile. It searches through up to 100 contacts with the matching email address and retrieves their contact details, including the unique contact ID needed for the update step. The search runs automatically using the email address captured in step 1, so no manual configuration is required. If multiple contacts share the same email (which is rare), the workflow will process the first match found.

Filter

App connector: Filter • Time to complete: 0 minutes (Auto-configured)
Why this matters: This step verifies that exactly one matching contact was found in Omnisend before attempting to update their points balance, preventing errors when contacts don't exist or when multiple matches occur.

The filter checks that the contact search returned exactly one result by comparing the number of contacts found to the value "1". If the condition passes (meaning one contact was found), the workflow proceeds to update that contact's loyalty points. If zero contacts are found, it means the customer doesn't exist in Omnisend yet, and if multiple contacts are found, it indicates a data issue that should be resolved manually. This safety check ensures the workflow only updates valid, unique contact records.

omnisend logo icon

Update Contact

App connector: Omnisend • Time to complete: 0 minutes (Auto-configured)
Why this matters: This step saves the customer's current Yotpo loyalty points balance as a custom property in their Omnisend contact profile, enabling you to create targeted email campaigns based on points levels.

The update step automatically adds or modifies the "yotpo_loyalty_points" custom property in the matched contact's Omnisend profile with their current points balance from Yotpo. The contact ID comes from the search results in step 2, while the points value comes from the original Yotpo trigger. Once updated, you can use this points data in Omnisend to segment customers, personalize email content with their points balance, or trigger campaigns when customers reach certain points thresholds. The custom property will be visible in the contact's profile and available for all campaign targeting.

Make it your own

Customize this workflow even further:

Add points expiration tracking
Connect additional steps to calculate and store points expiration dates, then trigger automated emails when customers' points are about to expire.
Segment high-value loyalty members
Extend the workflow to automatically tag contacts with "VIP Member" or "Gold Tier" labels in Omnisend when their points balance reaches specific thresholds.
Create points milestone campaigns
Chain together conditions to trigger different email sequences when customers hit 500, 1000, or 2500 points, celebrating their loyalty journey.
Track points earning patterns
Store points history data in MESA Tables to analyze how customers earn points over time and identify your most engaged loyalty members.

Frequently asked questions

What happens if a customer doesn't exist in Omnisend yet?
The workflow will skip the update step since the filter only allows it to proceed when exactly one matching contact is found. You'll need to ensure customers are added to Omnisend first, either by using Paths or through another workflow that syncs new customers.
Can I customize the name of the custom property that stores the points balance?
Yes, in the Update Contact step you can change "yotpo_loyalty_points" to any custom property name that makes sense for your campaigns, like "loyalty_points" or "rewards_balance". Just make sure to use the same name consistently in your Omnisend segments and campaigns.
Will this workflow sync historical points balances for existing customers?
No, this workflow only syncs points when they change going forward. To sync existing points balances, you'd need to trigger a points change for each customer in Yotpo (like a small adjustment) or use Time Travel to run a backfill.
What is a template?
Templates are pre-made workflows by our team of experts. Instead of building a workflow from scratch, these have all the steps needed to complete the task.
Can I personalize a template?
Yes! Every step can be customized to meet your exact requirements. Additionally, you can even add more steps and make it more sophisticated.
Are templates free?
Yes! Our entire library containing hundreds of templates are free to use and customize to your exact needs.

Ready to start syncing loyalty points to contact profiles for better email personalization?

Join thousands who've automated their work and saved an average of 3.5 hours every week.

Start with this template — It's free
7-day free trial • 5 min setup • Cancel anytime