This integration lets you trigger Klaviyo flows from loyalty events (points earned/redeemed, referrals, VIP tier changes, birthdays, and more), build segments from those events, and insert loyalty data (points balance, VIP tier, referral link) directly into your email templates. You'll need an active Klaviyo account.
Key notes
- Event and property names are case-sensitive. Type them exactly as shown in this guide (for example,
EarnOrderNew, notearnOrderNew). - Using Stamped Reviews too? Review events are covered in a separate guide: Klaviyo + Stamped Reviews.
In This Guide
- How to Connect
- When Events Appear in Klaviyo
- Customer Events & Properties
- Creating a Segment to Filter for Tracking Events
- Common Use-case and Example
- Including Customer Properties Into The Email Template
- Common Use-case and Example of Customer Properties
How to Connect
- In the Stamped Dashboard, go to the following link: https://go.stamped.io/v3/#/settings/apps/klaviyo
- Click Install App.
- If you have an existing integration but haven't updated to OAuth yet, the button will say Refresh Your Klaviyo Access Token and appear like below with the Site ID and Private API Key Fields present.
- If you have an existing integration but haven't updated to OAuth yet, the button will say Refresh Your Klaviyo Access Token and appear like below with the Site ID and Private API Key Fields present.
- Once redirected to Klaviyo, give Stamped permission to access accounts, events, and profiles. This will complete the integration.
- Your Klaviyo Account is connected successfully with OAuth if you see the following, without the Site ID and Private API Key fields present.
What to expect: Once connected via OAuth (no Site ID/Private API Key fields showing), Stamped will begin sending loyalty events and properties to Klaviyo.
When Events Appear in Klaviyo
Klaviyo only lists an event (metric) after it has been received at least once. You can't select an event in a flow trigger or segment until it shows up.
To make setup easier, Stamped sends one sample of these events to the test profile testing@stamped.io when you first connect: EarnAccountNew, EarnAccountBirthday, EarnAccountAnniversary, EarnOrderNew, EarnOrderCount, EarnOrderAmount, SpendRewardRedeemed, PurchasedWithReward, CouponExpired, PointsExpired, VIPTierUpdated, EarnReview, EarnPhotoReview. Stamped also fills in every stamped_ profile property on that profile, so the properties are available in Klaviyo's property picker right away.
All other events (marked "No" under Sample sent on connect in the events table) appear the first time a real customer triggers them. This includes referral, social, newsletter, video review, NPS, Q&A, refund, and birthday-set events. If your account was connected before sample events were introduced, no samples were sent, so every event appears only after it first happens.
To make an event appear sooner, trigger it yourself with a test customer. For example, sign up for your loyalty program with a test email, enter a birthday, or send yourself a referral.
Customer Events & Properties
Here are two things Stamped sends to Klaviyo, used differently:
- Events (e.g. spendRewardRedeemed) — used to trigger flows and build segments (something the customer did).
- Customer properties (e.g. stamped_rewards_points) — stored on the customer profile and used to personalise email content (e.g. inserting their live points balance).
Earning — Account & Milestones
| Event | Description | Properties | Trigger |
|---|---|---|---|
| EarnAccountNew | New account creation reward | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any customer/create activity |
| EarnAccountBirthday | Account birthday reward | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any milestones/birthday activity |
| EarnAccountAnniversary | Account anniversary reward | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any milestones/anniversary activity |
| BirthdaySet | This event fires when the user sets a birthday | ["birthday"] | Birthday set in merchant space |
Earning — Orders & Purchases
| Event | Description | Properties | Trigger |
|---|---|---|---|
| earnOrderNew | Order earning activity based on making a purchase | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with orderDebit source action and interactionType = makePurchase OR interactionType = amountSpent |
| earnOrderCount | Order earning activity based on number of lifetime orders | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with orderDebit source action and interactionType = totalNumberOfOrdersGoal |
| earnOrderAmount | Order earning activity based on amountSpent | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with orderDebit source action and interactionType = orderValueTotalGoal |
Earning — Content (Reviews, Q&A, NPS)
| Event | Description | Properties | Trigger |
|---|---|---|---|
| earnReview | Customer earns points for leaving review | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = content/write_review |
| earnPhotoReview | Customer earns points for leaving photo review | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = content/upload_photo |
| earnVideoReview | Customers earns points for video review | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = content/upload_video OR content/upload_video |
| earnReviewNps | Customers earns points for leaving NPS | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = content/nps_survey |
| earnQuestionAnswer | Customer earns points for submitting question answer | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = content/submit_answer |
Earning — Social
| Event | Description | Properties | Trigger |
|---|---|---|---|
| earnSocialFollowFacebook | Customer earns points for a Facebook follow | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = socials/facebook_like |
| earnSocialFollowInstagram | Customer earns points for an Instagram follow | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = socials/instagram_follow |
| EarnSocialFollowTwitter | This event fires when a customer follows you on Twitter | [ "activity_points", "activity_title", "stamped_rewards_points"] | Activity with event = socials/twitter_follow |
| EarnSocialFollowPinterest | This event fires when a customer follows you on Pinterest | [ "activity_points", "activity_title", "stamped_rewards_points"] | Activity with event = socials/pinterest_follow |
| EarnSocialFollowTiktok | This event fires when a customer follows you on Tiktok | [ "activity_points", "activity_title", "stamped_rewards_points"] | Activity with event = socials/tiktok_follow |
| EarnSocialYoutube | This event fires when a customer follows you on Youtube | [ "activity_points", "activity_title", "stamped_rewards_points"] | Activity with event = socials/youtube_subscribe |
| earnSocialShareTwitter | Customer earns points for a Twitter share | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = socials/twitter_share |
| earnSocialShareFacebook | Customer earns points for Facebook share | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with event = socials/facebook_share |
Earning — Newsletter
| Event | Description | Properties | Trigger |
|---|---|---|---|
| earnNewsletter | Subscription to newsletter reward | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any subscriptions/newsletter activity |
Redemption & Coupons
| Event | Description | Properties | Trigger |
|---|---|---|---|
| spendRewardRedeemed | Any point redemption | [ "activity_points", "activity_title", "coupon_code", "stamped_rewards_points"] | Any activity with pointsCredit > 0 and event ilike %redeem% |
| PurchasedWithReward | This event fires when a customer makes a purchase with a coupon code applied | ["activity_title","coupon_code","stamped_rewards_points"] | Activity with coupon/consumed |
| CouponExpired | This event fires when a customer's coupon expires | ["coupon_created_at","stamped_rewards_points","coupon_code"] | Activity with coupons/expiry or coupons/void |
Points Lifecycle
| Event | Description | Properties | Trigger |
|---|---|---|---|
| PointsExpired | Customer points expire | [ "last_activity_at", "points_expired"] | Any activity with event = points/expiry |
| refundOrder | This event fires when a previously rewarded order is refunded. | [ "activity_points", "activity_title", "stamped_rewards_points"] | Any activity with sourceAction = orderCredit |
VIP Tiers
| Event | Description | Properties | Trigger |
|---|---|---|---|
| VIPTierUpdated | This events fires on any tier update | [ "stamped_rewards_change_direction", "stamped_rewards_points", "stamped_rewards_previous_vip_tier", "stamped_rewards_vip_tier"] | Any tiers/upgrade or tiers/downgrade activity |
Referrals
| Event | Description | Properties | Trigger |
|---|---|---|---|
| sharedReferral | This event fires when Customer X sends a referral to friend Y. There is no coupon code yet generated. This event should fire connected to Customer X. | [ "activity_reward_type", "activity_reward_value", "activity_title"] | Customer sends referral email to friend |
| receivedReferral | This event fires when friend Y receives a referral from Customer X. This event fires connected to Friend Y. Properties referral_email, link and name refer to Customer X. | [ "activity_reward_type", "activity_reward_value", "activity_title", "referral_email", "referral_link", "referral_name"] | Inverse of ReferralShared, this is for the friend who's the recipient of the referral |
| acceptedReferral | This event fires when friend Y accepts the referral and gets their coupon code. This event should fire connected to friend Y. | [ "activity_reward_type", "activity_reward_value", "activity_title", "coupon_code"] | When friend claims the referral and discount code is generated |
| referredCustomer | This event fires for a customer X when their friend Y completes a purchase with the referral coupon code. This fires connected to Customer X. | ["activity_title","activity_reward_value","activity_reward_type","referral_email","referral_link","referral_name","coupon_code"] | Friend successfully completes referral and customer/affiliate activity fires |
Creating a Segment to Filter for Tracking Events
You can create a segment in Klaviyo to group the customers according to the events (customers who submitted a positive review in one segment, negative review in another etc.)
-
Head over to Lists & Segments under the left menu:
-
Create a new segment:
- Select "What someone has done (or not done)" under the definition drop-down list, which filters for tracking events:
-
Search for Stamped's tracking events, which will be under the API category:
- Fill up the rest of the details for the segment as required.
Here's a detailed guide from Klaviyo on creating a segment: https://help.klaviyo.com/hc/en-us/articles/115005237908-Create-a-Segment
Common Use-case and Example
- Create a flow to send an email for new customers who have signed up for the Loyalty & Rewards program:
- Create a flow to send an email when customers have redeemed points for rewards:
Including Customer Properties Into The Email Template
These properties will be pushed to Klaviyo customer's profile:
- stamped_rewards_birthday
- stamped_rewards_points
- stamped_rewards_referral_link
- stamped_rewards_vip_tier
-
Click on a text-block of your email template where you would like to include the properties:
-
Click on the "Insert Property" dropdown box
- Enter "stamped_rewards" in the search field for easy access to the available customers' properties for our Loyalty & Rewards program
- Select the customer property that you would like to include in your email
- Click on the Save button.
What to expect: The customer's live loyalty value (e.g. their points balance) will now render dynamically in the email. In the email preview, choose a real loyalty member's profile. The property shows that customer's value, such as their current points balance. If it's blank, that customer may not have the property yet.
Common Use-case and Example of Customer Properties
Remind inactive members to spend their points. Email loyalty members who haven't purchased in 6 months and show their current points balance:
1. Create a segment for Loyalty & Rewards customers who have not shopped in your store for the last 6 months:
2. Create a flow with the segment created above, followed by an email
3. Use the customer properties ( stamped_rewards_points) in the email to dynamically update and display the point that your customer has
Troubleshooting
An event isn't listed in Klaviyo. The event hasn't been received yet. Trigger it with a test customer, or wait for a real customer to trigger it. See When Events Appear in Klaviyo. Also check the spelling and capitalization of the event name.
Events stopped arriving, or a flow stopped triggering (commonly EarnOrderNew). In the Stamped dashboard, go to Settings > Apps > Klaviyo and click Refresh Your Klaviyo Access Token. This reconnects Stamped to Klaviyo. New activity should start arriving again.
Customers received order-points emails for old orders. If many older orders are updated at once in your store (for example, a bulk status update, an order migration, or another app editing orders), those orders can be processed again and fire EarnOrderNew. Check your store's order activity for that time. If you can't find a cause, contact Stamped Support with example customer emails and order numbers.