AB Commerce integrates with Klaviyo. Please contact the Help Desk if you want further information. The following is how Klaviyo's integration works.
How to set up the Klaviyo integration
All you need to do is provide the Help Desk with the public API key and the private API key. To get this, just log into your Klaviyo account and click on your name in the top right hand corner, click Account - then click Settings in the nav bar across the top of the page, and click API Keys. The public API key should be visibile, and so should the private API key. If the private API key is not visible, just click Create Private API Key.
Setting up an automated catalogue feed for Klaviyo Emails
If you have an automated catalogue feed, then you can drag and drop products from your website easily into Klaviyo emails.
To set up an automated catalogue feed so that Klaviyo always has an up to date catalogue feed, just take the following steps after getting a url for the Klaviyo product feed from the Help Desk:
- Log into your Klaviyo account and click on Catalogue in the left sidebar menu
- Click Manage Custom Catalog Sources
- Click Add New Source and enter the following and then click Define Source and complete the set up:
- Source Name = AB Commerce Feed
- Source URL = The Help Desk will provide this to you
- Leave the other fields blank
- After this, the catalogue will sync every day to have your latest product details.
Real time Integration
As users enter your website and traverse around the website, the following information is sent to Klaviyo in real-time:
- When they arrived on the web site
- When they opt in for email (immediately when they opt in) - currently sending over the following information:
- First Name
- Last Name
- We are not sending over opted in mobile numbers as they are generating a validation error
- When they opt out (immediately when the opt out) - as long as the opt out is using the /unsubscribe url on your website
- The products they viewed (as they are viewing them)
- The items added to the basket
- When the checkout is started
- The orders made (immediately when the order is made) - both events Placed Order and Ordered Product
- When an order is fulfilled
- When an order is cancelled
- Note that the nightly batch job will send all orders made for each email address including the latest order, if for some reason it is not synced at the time of the order
- Note that when tracking events in Klaviyo, each order tracks one "Placed Order" event for the order including a list of "Items" - and for each order item, it tracks an "Ordered Product" event. This means that each order item is recorded under 2 tracking events - one under the order and one just for the order item.
This means that you can automate emails immediately as events happen for an email address.
Klaviyo SMS Integration
- If someone opts in for BOTH email and SMS, it sends the mobile number across to Klaviyo with the email address and subscribes the user for SMS as well.
- If they only opt in for SMS, it does not send the SMS across to Klaviyo.
- If the user opts out of SMS, our batch job downloads all opt-outs each night and updates our own records that the person has opted out.
- For historical records for people who opted in for both EMAIL and SMS before 2024, every subscriber who has placed an order gets updated every 30 days so all records should be updated within a month with the mobile number for anyone who has ordered before. As part of this monthly refresh of subscriber data, we will update Klaviyo with the customer’s mobile number if they opted in for both EMAIL and SMS.
For historical records for people who opted in for both EMAIL and SMS before 2024, every subscriber who has placed an order gets updated every 30 days so all records should be updated within a month with the mobile number for anyone who has ordered before. As part of this
Nightly Batch Job
Every night, all opted in emails are synced with your Klaviyo account into a list called ABC_WebsiteSubscribers. For each opted in email address, all their order history is also sent to Klaviyo during the nightly batch job.
This ensures that if an opted in email, or a new order, is not synced with Klaviyo in real-time due to an error, they will be uploaded that night during the batch job.
Opting in Methods
If the user opts in through AB Commerce (as opposed to opting in through a Klaviyo pop-up), the Method recorded against the profile can be one of the following values:
|When using the AB Commerce home page pop-up
|When opting in while creating an account through the JOIN page
|When subscribing through the AB Commerce subscribe page
|When opting in at the start of the checkout
|When creating an account at the end of the checkout and opting in
|When opting in when on the UPDATE MY ACCOUNT when logged in
|When opting in when on the REGISTER FOR LOYALTY page when logged in
Opting out through your website
When you opt out of Klaviyo through the AB Commerce website, the email address is "suppressed" in Klaviyo immediately. If there is an issue suppressing it immediately, the nightly batch job will try again and suppress it so all opt-outs should be either immediate or within the next 24 hours.
Using Klaviyo's Abandoned Baskets Features
When a user adds to their basket, we send a track event for Added to Cart to Klaviyo.
When a user gets through the first screen on the checkout where they enter their email address, we send a track event for Started Checkout to Klaviyo.
Klaviyo only tracks people who have been "identified" to Klaviyo (e.g. they opted in through the website, they clicked through to the website from an email sent by Klaviyo). If you want to ensure that everyone who starts the checkout gets an abandoned basket email, contact the Help Desk so that we turn on a setting to "identify all website users that go through checkout even if they have not opted in".
Using Klaviyo's Popups for opt-ins (OR Using AB Commerce Popups for opt-ins)
If you want to use Klaviyo's pop-ups for collecting opt-ins, the disadvantage is that the website does not know about these opt-ins. However, they can lead to you getting more sign-ups.
If you want to do this, you just need to set it up so that they are added to the ABC_WebsiteSubscribers list. This will ensure that if someone is already added to the list they will not receive a discount code twice.
NOTE users who opt in through these pages are not recorded on the AB Commerce database - to be recorded in the AB Commerce database, you must use the standard AB Commerce subscribe and opt-in features by following these articles:
- How to set up the subscribe page, opting in during checkout, home page pop-ups, etc:
- How to collect the customer's birth date and customer preferences:
- How to turn on the home page pop-up:
- How to edit the JOIN page and the SUBSCRIBE page:
- How to edit the NEW ACCOUNT or NEW SUBSCRBER page:
Adding domain authentication to your DNS settings will mean that more emails will get past the email spam filters. To do this, just get the Domain Authentication DNS settings from Klaviyo and send them into the Help Desk who should be able to add these to your DNS settings for you.
This article contains more details:
Migrating from Mail Chimp
If you are already integrated with Mail Chimp and want to move to Klaviyo, the Help Desk will switch over the integration which will mean the following:
- The nightly batch job will push out all the opted in emails on the website and their order history to Klaviyo - this may take a few days as AB Commerce has a limit to how many emails it will sync each night
- If you used Mail Chimp,s OPT OUT features instead of using AB Commerce's OPT OUT /unsubscribe url, then you will need to then import the OPT OUTS manually from Mail Chimp
- If you created other lists, you will need to migrate these manually as well as any other items you set up yourself manually
- NOTE that you are not meant to manually add any other emails to the ABC_WebsiteSubscribers list on Mail Chimp - and if you set up a Mail Chimp form for collecting subscribers, these should not have been added to the ABC_WebsiteSubscribers list. This is because this list is kept in sync with the data collected on the website, and AB Commerce does not download any changes you make within Mail Chimp to this list - it only "pushes" information up to it - and does not "pull" any information back.
So in summary, to migrate to Klaviyo, let the Help Desk switch your integration to Klaviyo, then wait a few days until all emails have been uploaded from AB Commerce's master database, and then migrate the rest of the data manually.
For more info on this see Klaviyo Implementation Phase 1
If your website handles multiple currencies, note that your Klaviyo account only allows for 1 base currency.
However, the add to cart and started checkout events still record the CURRENCY SYMBOL of the website user in the $value_prefix field.
- If cookies are accepted, the following are the circumstances in which a user is "identified" and so their activities will be logged to Klaviyo:
- If they click through from a Klaviyo email
- If they subscribe/opt in on the website
- If they start checkout and the retailer has turned on the setting to send abandoned basket emails to users even if they don't opt in
- Server-side / Batch Jobs:
- We only sync subscribers that have opted in - any subscribers that have opted out through the AB Commerce website will be opted out again through the batch job in case the real-time opt out failed for some reason
- We sync ALL new orders so that Klaviyo can be used for order emails
- We only sync old orders for subscribers that have opted in
Klaviyo also provides the following documentation:
- Here is a link to Klaviyo's Privacy Centre which contains the Klaviyo Privacy Notice, Klaviyo Cookie Notice, Privacy Rights Request and the Privacy FAQ and Transparency Report:
- Klaviyo also have a help doc which gives guidance on How-to-comply-with-data-privacy-laws
- For anything specific to GDPR, these are their GDPR FAQs: