⚠️ There are now 2 versions of OneClickUpsell. If the app was installed from the Shopify App store, you’re using the OneClickUpsell Native version which has a blue/orange color scheme. For the OCU Native knowledge base click here.

Connect Klaviyo CRM 

1. Navigate to the Klaviyo website (https://www.klaviyo.com/login?next=/dashboard) and login to Klaviyo account by entering your email and password and click the green "LOGIN” button.

2. Click on the "Account" menu in the upper-right corner of your window and then select "Account" from the drop-down menu.

3. Click on the "Settings" drop-down and select "API Keys".

4. Select and copy your Public API Key.

5.  Open the OCU app within your Shopify store. Click the "Settings" button from the left-side navigation menu then click "CRMs". In the Klaviyo section paste your Public API Key into the "Public API Key" field. Then click the green "Connect” button. 

Your OCU app is now connected to your Klaviyo account via API!

The Abandoned Cart feature

Once Klaviyo is connected and configured, all customer email addresses will be sent there with special activities depending on the actions taken on the OCU checkout:

  • Checkout Started (OCU)

  • Checkout Completed (OCU)

  • Checkout Completed With Offers (OCU)

The OCU metrics above will only pass over to your Klaviyo account once the corresponding actions have been taken on the OCU checkout on your store

In order to check the activities list in your Klaviyo account, do the following:

  • Click on "Metrics" in the left-hand sidebar.

  • Choose "API" in the drop-down selector.

Once Klaviyo is connected to the OCU it will automatically collect the following information...

The customers who did not complete their orders and received the "Checkout Started (OCU)" metric:

  • Last Abandoned Cart Item1 Names (OCU) (from 1 to 5)

  • Last Abandoned Cart Quantity1 (OCU) (from 1 to 5)

  • Last Abandoned Cart Price1 (OCU) (from 1 to 5)

  • Last Abandoned Cart Image1 URLs (OCU) (from 1 to 5)

  • Last Abandoned Cart Subtotal (OCU)

  • Last Abandoned Cart Date (OCU)

  • Last Abandoned Cart Restore URL (OCU)

  • Accepts Marketing (OCU)

  • Phone Number (OCU)

The customers who completed their orders and received the "Checkout Completed (OCU)" metric:

  • Last Placed Order Item1 Name (OCU) (from 1 to 5)

  • Last Placed Order Quantity1 (OCU) (from 1 to 5)

  • Last Placed Order Price1 (OCU) (from 1 to 5)

  • Last Placed Order Image1 URLs (OCU) (from 1 to 5)

  • Last Placed Order Cart Subtotal (OCU)

  • Last Placed Order Date (OCU)

  • Accepts Marketing (OCU)

  • Phone Number (OCU)

The customers who completed their orders AND purchased offer item(s) who received the "Checkout Completed With Offers (OCU)" metric:

  • Last Purchased Offer Item Name (OCU)

  • Last Purchased Offer Price (OCU)

  • Last Purchased Offer Image URL (OCU)

  • Last Purchased Offer Date (OCU)

  • Accepts Marketing (OCU)

  • Phone Number (OCU)

Already have Klaviyo integrated with your Shopify store?

If you have integrated your Klaviyo account with your Shopify store through the "Integrations" section of your Klaviyo account, then the Klaviyo app will be listed in the Apps section of your Shopify admin. 

In this case, the Shopify "Placed Order" and "Ordered Product" metrics will pass over to your Klaviyo account for orders that are completed on the OCU checkout as well. This means that if you already have a post-purchase flow setup that is triggered by the Shopify "Placed Order" or "Ordered Product" metric, you can use that one for OCU completed orders as well.  

The Shopify "Accepts Marketing" parameter will also sync over for customers that use the OCU checkout, so you wouldn't be required to use "Accepts Marketing (OCU)" as long as you have the Klaviyo app for Shopify.       

Creating Flows and Campaigns in Klaviyo

Klaviyo allows you to create both - Flows and Campaigns  - using custom fields sent through the OCU Abandoned Cart feature.

For the detailed step-by-step information on creating an Abandoned Cart Flow for OCU checkout within your Klaviyo account, please see this article!

*Important: If your trigger or upsell products have emoji(s) in the title, it is recommended to remove them as they cause an issue with sending OCU metrics to Klaviyo.


In order to create a Flow, you need to click on the "Flows" tab and then on the "Create Flow" button.

A new window will appear where you can see a name for the Flow and choose the Trigger which will start the Flow: Subscribes to a list, Added to a segment or Takes an Action. 

Next, you need to pick a Trigger you're creating the Flow for. Then you're provided with a way to specify recipients for the Flow. You can choose Everyone or configure a more effective way by specifying rules. If Takes an action is selected, then select the OCU metric and then optionally select an available Dimension. 

Below you can see an example on how to create an auto-responder which automatically sends emails to users added to a List when specified rules are met.

For our case, we need Activities which OneClickUpsell transfers into Klaviyo to be used as the Trigger.

Using "AND" and "OR" operators you can create more sophisticated rules if needed.

Once you've finished with the rules configuration you need to click "Create Flow" in the lower-right corner.

A new window will display your rule(s) and an "Add Email to Flow" button which allows you to configure the email message itself.

First, you need to specify the message sending schedule:

Clicking on the "Create Message" button will give you the ability to create an email template using the custom fields information transferred from OCU.

In order to use that data you need to click on "Configure Message". Template configuration and custom fields addition are the same as for CAMPAIGNS part described below.

Once you've finished with the email creation you can send out a test message or preview it in Klaviyo.

In order to store results, you need to click on "Save Content" in the upper-right corner. Then the Flow is created and becomes available in the appropriate tab of Klaviyo.

Customers who get the OCU Metrics assigned or who are added into the chosen Segment and satisfy the configured rules will receive the email messages (keep in mind the configured time interval).

More information about Flows and rules can be found here: http://docs.klaviyo.com/customer/en/portal/articles/2448706-introduction-to-automated-flows


In order to create campaign you need to click on the Campaigns tab, then click Create Email Campaign

On the Name & Recipients step, give your campaign a name. This is separate from the subject line, so use it to help organize your campaigns. A common strategy is to name the campaign based on what the content is along with the date. Choose the segment you'll be sending this campaign to and whether or not to use smart sending. 

Smart sending will allow you to limit the number of emails your customers receive so that you can send targeted campaigns and not worry about sending too many emails to the same customer.

The Email Content step is where you'll specify who your email is coming from, the subject line, and the content of your email.

There are four email content options based on how you want to create content:

  • Rich HTML / Drag & Drop: Our email editor will automatically optimize your email for mobile and makes it easy to create complex email layouts that will look great on all email clients.

  • Text Based / Simple: If you'd like to send a text only email, this is the option you're looking for. This is a good option for sending an email that looks like it came directly from you rather than your organization.

  • Use Template from Library: If you've created a base template, newsletter template or snack template this is where you should start. You can also choose a template from the template library.

  • HTML Editor: If you have your own HTML email template you're importing.

More information about creating templates can be found here: https://docs.klaviyo.com/customer/en/portal/topics/946444-email-templates/articles

You need to pick one of the options and create an email template basing on a ready-made template or from scratch.

Next, you need to add fields from the segment you need to send within the email to the template. This can be done in "Source" mode which you can access using this button:

Fields should be named the same way as they appear in the selected segment. Use apostrophes (') to mark out the field like this: 'field_name' and add "person|lookup" instruction to make this field appear in the email.

Complete construction will be: {{ person|lookup:'field_name' }}

In order to look for the correct field's name you can go to "Lists & Segments" -> get to needed segment and then pick the customer from there.

In the right-hand part of customer's profile under Custom Properties, there's a list of all field names:

Copy the desired field name from there and then paste it into the code when in "Source" mode.

Example: {{ person|lookup:'Last Abandoned Cart Restore URL (OCU)' }}

Any field's value could be pasted into HTML and displayed with the needed property. For example you can set desired width for the image from the field:

Also it allows you to set conditions which should be met for the content to be placed into e-mail. Here's the example of construction:

{% if person|lookup:'field_name' %}


{% endif %}

This condition allows you to put content into the email body only if 'field_name' field contains any value. When that field is empty it will output nothing,

Here's the example of the actual script:

Additional information about how to work with fields in Klaviyo can be found here: https://www.klaviyo.com/docs/email-tags

Depending on the mode, there will be preview and test sending features available which allow you to evaluate email.

When all changes have been applied you need to click on the "Save" button and go to "Review & Send Campaign" step.

The review interface gives a summary of who will receive your campaign as well as a few final checks to make sure you didn't leave any default content in your template or forget to add links. If you agree with all details then click on the Send Campaign button in the bottom-right corner.

Did this answer your question?