Getting Started
Getting StartedTheme Extensions
App SettingsCollection ButtonsFloating Wishlist LinkProduct Page ButtonsWishlist PageCustomisations
Code AccessCustom Wishlist PageInstant Header LinkCustom Colour SwatchesSave for Later in CartWishlist NotificationsIntegrations
KlaviyoGoogle AnalyticsMeta PixelMaestraIntegrating Wishlist King with Klaviyo
Wishlist King has a powerful Klaviyo integration that enables you to set up Wishlist related marketing automations. This guide will take you through setting up the Klaviyo integration, including setting up Klaviyo Flows that can be triggered by events sent from Wishlist King.
Wishlist related emails outperform most other flow types, with very high open and conversion rates due to the highly relevant and personalised content.
Setup Guide
- Integrating Wishlist King with Klaviyo
- Setup Guide
- Setup Requirements
- Creating a new Private API Key in Klaviyo
- Configuring Events
- Back In Stock
- Minimum stock
- Ignore saved product variant
- Low In Stock
- Minimum stock
- Ignore saved product variant
- Price Drop
- Minimum stock
- Ignore saved product variant
- Sending Test Events
- Wishlist Flows
- Klaviyo Flow Setup
- Add an email step
- Configuring Flow Logic
- Reminder Emails
- Inventory and Price Related Emails
- Configuring Email Content
- Catalog Lookup Tag References (From Klaviyo)
- Inserting Dynamic Content Into Your Notifications
Setup Requirements
- Set up the Klaviyo integration within the Settings area of the Wishlist King app in your Shopify admin, specifying your API keys, and enabling and configuring the types of notifications you want to use.
- Create Klaviyo flows triggered by Wishlist events to send notifications to your customers.
- Customise the content within your flow using content from Wishlist related events
You can use the full power of Klaviyo, including email and SMS, to drive additional value from your Wishlist.
Creating a new Private API Key in Klaviyo
Creating a private API key in Klaviyo is an essential first step for integrating Klaviyo with Wishlist King.
This new Private API key and your existing Klaviyo Public API Key need to be entered into the Klaviyo integration settings within the Wishlist King app in your Shopify admin.
Creating a new Private API key is straight forward:
In Klaviyo select your profile from the bottom left hand corner of the page and select Settings → Account → API keys:
Select the API keys section within Settings → Account, taking note of your Public API Key.
Click Create Private API Key:
Name your new private API key to distinguish it from any other existing private API Keys.
Select Full Access Key and press Create.
Copy the private API key and take note of the public API key from the API Keys page.
Visit the Wishlist King app in your Shopify admin.
Click Settings and then select Klaviyo from the integrations list.
Add your public API key into the first field. Paste the private API key you have created into the second field and click Save:
Now it’s time to configure your stock and price related events
Configuring Events
Wishlist King allows you to set specific conditions for certain events, ensuring a seamless customer experience.
Back In Stock
Minimum stock
This allows you to set a minimum stock level that a product or variant should have in order for a Wishlist product back in stock event to fire
Ignore saved product variant
Activating this setting will turn on Back In Stock events for all variants of a Wishlisted product, regardless of the variant the customer has specified in their Wishlist
Low In Stock
Stock threshold
Low In Stock events will only occur when the stock on hand for a customers saved Variant drops below the Stock Threshold value
Minimum stock
Back In Stock events will only occur when the stock on hand is at or above the minimum stock level
Ignore saved product variant
Activating this setting will turn on Low In Stock events for all variants of a Wishlisted product, regardless of the variant the customer has saved to their Wishlist
Price Drop
Minimum Price Change
Price Drop events will only occur when the price for a customers saved Variant drops by at least the minimum price change amount
Minimum stock
Price Drop events will only occur when the stock on hand is at or above the minimum stock level
Ignore saved product variant
Activating this setting will turn on Price Drop events for all variants of a Wishlisted product, regardless of the variant the customer has specified in their Wishlist
Once you’ve configured your events, you'll need to simulate the events on your store front in order for them to appear in Klaviyo as triggers you can use to start Flows
Sending Test Events
In order to set up a flow in Klaviyo a trigger event must exist on a customer profile. The easiest way to achieve this is to simulate the various event types that Wishlist King sends to Klaviyo.
The steps to achieve this are straightforward
- Visit your store
- Sign into a customer account
- Add an item with a variant selected from your product page (you will need to briefly adjust the inventory levels and price of this item in order to simulate the Low In Stock, Back In Stock and Price Drop events)
- Noting the stock thresholds you have set for your Low In Stock event, adjust the inventory for the variant you saved to the Wishlist to a value lower than the Stock Threshold but higher than the Minimum stock value
- To simulate the Back In Stock event, now adjust the inventory for the saved variant to 0, and then adjust it to a stock level higher than the Minimum Stock level set in your event preferences
- Now, adjust the price of the variant by a % greater than specified in the Minimum Price Change field in the Price Drop event settings.
- Finally, return the price and stock levels back to their original levels.
- Check the Klaviyo profile for the customer account you logged into at Step 2 to ensure that the following events are present
- Added product to Wishlist
- Wishlist product back in stock
- Wishlist product low in stock
- Wishlist product price drop
Now that Wishlist events are setup and present in Klaviyo, you can starting building Flows using Wishlist events as the trigger.
Wishlist Flows
Each event type sent from Wishlist King can be used to trigger flows in Klaviyo.
The following table lists each metric, a short description of why it's triggered, and some examples of the types of flows that are usually setup in Klaviyo to trigger a notification email or SMS to customers.
Each metric will be triggered either by a customer wishlist update, price or inventory update change
Flow | Metric | Trigger |
Add to Wishlist
Wishlist Welcome
Wishlist Reminder | Added product to Wishlist | When a customer adds a product to their Wishlist |
Removed product from Wishlist | When a customer removes a product to their Wishlist | |
Viewed Wishlist | When a user views their Wishlist page | |
Back In Stock | Wishlist product back in stock | When a unit of stock for a Wishlisted item becomes available after being previously sold out.
A minimum stock level for this event can be set within the Klaviyo integration settings in the Wishlist King app in your Shopify admin |
Low In Stock | Wishlist product low in stock | When the stock level of a Wishlisted item drops below a specified level
A minimum stock level for this event can be set within the Klaviyo integration settings in the Wishlist King app in your Shopify admin |
Price Drop Alert | Wishlist product price drop | When the price of a Wishlist item drops by more than a set %
The minimum price drop % for this event can be set within the Klaviyo integration settings in the Wishlist King app in your Shopify admin |
Klaviyo Flow Setup
Setting up Klaviyo flows requires some basic knowledge of Klavyio Flows as well as template tags and variables, but it is not overly complicated!
Firstly, setup a new Flow
Click Flows → Create flow
Select Build your own
Name your flow (eg. "Wishlist - Low In Stock")
Under Select Trigger choose Your Metrics and then API:
Select the Wishlist metric you would like to use to trigger your flow (eg. Wishlist product low in stock)
Click Save. Now it's time to create the email.
Add an email step
Under Actions, click and drag Email beneath the flow trigger
Select the Email you’ve just added to the Flow
Enter the email name, subject line and preview text. You can also edit the sender name and sender email address at this step.
Configuring Flow Logic
Reminder Emails
Wishlist Welcome
When a user creates a Wishlist for the first time it is a nice touch to send them a Welcome email outlining how your brand uses the Wishlist function and the associated custom notifications you’ll send them, as well as reminding them of the items they have added to their Wishlist.
Depending on your customer behaviour and other flows you have within Klaviyo, it may make sense to send this anywhere from shortly after their first Added product to Wishlist event, to few hours or one day post their first Added product to Wishlist event.
Flow setup:
- Use the “Added product to Wishlist” event as the Trigger for this flow
- Add a time delay if you wish to send this after a period of time
- Customise your email content. This is a great place to explain the benefits of your Wishlist to the customer, outlining the types of notifications they can receive based on the other Wishlist flows you’ll setup as well as additional benefits the Wishlist offers them when shopping on site. The Added product to Wishlist event also contains the list of the 10 most recently added items from the customers wishlist, which allows you to display multiple products within the email if you wish to.
- For the Wishlist Welcome email, we add a step that creates a Profile property of “Wishlist Welcome” = “True”. This allows us to use this Profile property as a filter on our other reminder flow, ensuring a customer doesn’t receive both the reminder email and the welcome email at once, as both of these will use the Added product to Wishlist event as the trigger
- As the Welcome email should only be sent to the customer once, we also add an a additional filter of “Has not received this email” and we skip anyone who has received this message “at any time”
Flow logic for the Wishlist Welcome email
Additional Filters for the Wishlist Welcome email, ensuring it only gets sent once
Wishlist Reminder
Nudging customers to revisit their Wishlist and your site is a great way to drive already engaged traffic back to your site. These visitors have already shown a high level of interest and intent, and a timely reminder to revisit their Wishlist is often all thats needed to get them over the line on a purchase.
Depending on your customers buying and Wishlisting behaviour, you may want to use different time delays. Below, we are waiting 1 day after an Added product to wishlist event occurs, and then using a conditional split to check whether there have been any Added product to wishlist events since the profile entered the flow.
If there have been no products added to the Wishlist since entering the flow they will continue.
If the profile does have Added product to wishlist events, each of these events will enter them into this flow again. Only once the profile has no additional Added product to wishlist events since entering the flow, will they proceed to the next step. This is to ensure we are waiting for the user to cease adding products to their Wishlist before we send them a Wishlist reminder, and it also ensures that the Added product to wishlist event also carries with it a list of the most recently added products.
Once a profile has ceased adding to their Wishlist for 24 hours, we then have a 6 day wait to see if they have placed an order. This time delay and conditional split based on whether or not they’ve Placed an order is optional, but for this Flow we don’t want to send a wishlist reminder if they’ve purchased recently.
To make sure this flow isn’t sent at the same time as the Welcome email (both are triggered by the Added product to Wishlist event) we set a trigger profile filter of
The final step is to send the Wishlist reminder email.
Inventory and Price Related Emails
Sending your customers notifications based on adjustments to the the availability and price of their Wishlisted items is both a great customer experience and a powerful driver of sales. For these event types, we typically send single product emails only and so do not need to set the Styles for the Table content you will see in the Configuring Email Content instructions below.
Wishlist Low In Stock
Letting a customer know that an item on their Wishlist is low in stock is both a great customer service touch and a strong sales driver.
The email associated with this event should send 5 minutes after the trigger event occurs. This delay ensures Klaviyo has a current record of the product availability before the notification is sent.
This flow will send for whenever an item in a users wishlist meets the low in stock thresholds you set in our app settings.
Wishlist Back In Stock
The email associated with this event should send briefly after the trigger event occurs. This flow will send for whenever an item in a users wishlist meets the Back In Stock thresholds you set in our app settings.
Wishlist Price Drop
Given pricing updates to larger product catalogs can take time to execute in Shopify, and you may want to send other brand comms around a price adjustment, we typically suggest a longer delay for Price Drop emails to ensure the site is fully updated when you send the notification.
To configure the email content, select either an existing template or create a new one
Configuring Email Content
To add dynamic product information such as descriptions, prices and product images in your Wishlist notification emails or SMS templates, you can use the catalog lookup tag references from the table below in your email templates. Please see these Klaviyo Docs more information on catalog lookup tag references.
Catalog Lookup Tag References (From Klaviyo)
Every event has an `ItemId` attribute that can be used for a catalog lookup. The below table shows data can be accessed inside a catalog lookup tag.
{% catalog event.ItemId integration='shopify' unpublished='cancel' %}{{ catalog_item.title }}{% endcatalog %}
Template tag | Name | Description |
{{ catalog_item.description }} | Description | The description of the item. |
{{ catalog_item.url }} | URL | The url for accessing the item in your store. |
{{ catalog_item.title }} | Title | The title of the item. |
{% currency_format catalog_item.metadata|lookup:"price" %} | Price | The price of an item. This tag formats the item price with the correct currency prefix. |
{{ catalog_item.featured_image.full.src }} | Full image | The url for the full image of the item. Use this inside of an image block, or an <img> tag. |
{{ catalog_item.featured_image.thumbnail.src }} | Thumbnail | The url for the full image of the item. Use this in an <img> tag in custom HTML, or use it as a dynamic image placeholder URL surrounded by the opening and closing {% catalog %} tags |
{{ catalog_item.id }} | Id | The Product ID of the item. |
{{ catalog_id }} | Catalog ID | The ID of the catalog so you can specify which catalog to pull from if you have multiple. |
Inserting Dynamic Content Into Your Notifications
There are various ways to setup your email template to insert dynamic content from the Wishlist trigger event and associated product catalog lookups. The simplest way to insert the dynamic product information from the Wishlist event is by using a Table content block in your email templates.
To add a Table content block and integrate the catalog lookup tags for displaying your products and content, follow these steps:
Under Blocks select and drag a Table onto your template where you would like the dynamic products to display.
For emails where you would like to display multiple images, such as Welcome and Reminder emails, you will first need to set Styles for the Table. Select your table and then select Styles from the top menu on the left hand side of your editor.
Choose Dynamic from the Styles → Data settings, and then under Row collection insert the following code, with the number at the end representing the maximum number of products you would like to show on the email.
For emails where you only want to include a single product, such as Low In Stock and Back In Stock alerts, you do not need to set the Table Styles and can continue to the next step.
event.LatestWishlistItems|slice:6
item
Determine which side of your Table content block will contain the product information and which side will feature the product image (We recommend image left and text right):
Select the left-hand side of the table and click Image, and then click Select Image:
Select Dynamic Image and enter this code into the field for the image URL:
{% catalog item.ItemId integration='shopify' %}{{ catalog_item.featured_image.thumbnail.src }}{% endcatalog %}
Next, press Save
Now, enter this code into the Link address field
{% catalog item.ItemId integration='shopify' %}{{ catalog_item.url }}{% endcatalog %}
Now, to insert the product details we use the text column the box on the right-hand side of the Cell selector and then select Text under Column content.
Here you can utilise the relevant catalog lookup tags from the table above. In this example we are going to include the Product title, variant title and current price using the following code:
NOTE: This code must be pasted into the Source code within the text editor:
Once you have the code editor open, paste the below code
<p><a href="{% catalog item.ItemId integration='shopify' %}{{ catalog_item.url }}{% endcatalog %}"> {% catalog item.ItemId integration='shopify' %}{{ catalog_item.title }}{% endcatalog %} </a></p>
<p>{% catalog item.ItemId integration='shopify' %} {% if catalog_item.variant %} {% currency_format catalog_item.variant.price %} {% if catalog_item.variant.metadata|lookup:"compare_at_price" %} <s>{% currency_format catalog_item.variant.metadata|lookup:"compare_at_price" %}</s> {% elif catalog_item.metadata|lookup:"compare_at_price" %} <s>{% currency_format catalog_item.metadata|lookup:"compare_at_price" %}</s> {% endif %} {% else %} {% currency_format catalog_item.metadata|lookup:"price" %} {% if catalog_item.metadata|lookup:"compare_at_price" %} <s>{% currency_format catalog_item.metadata|lookup:"compare_at_price" %}</s> {% endif %} {% endif %} {% endcatalog %}</p>
<p><a href="{% catalog item.ItemId integration='shopify' %}{{ catalog_item.url }}{% endcatalog %}">Shop Now</a></p>
You can now preview and send a test email to ensure that everything is setup and working as expected!
On this page
- Integrating Wishlist King with Klaviyo
- Setup Guide
- Setup Requirements
- Creating a new Private API Key in Klaviyo
- Configuring Events
- Back In Stock
- Minimum stock
- Ignore saved product variant
- Low In Stock
- Minimum stock
- Ignore saved product variant
- Price Drop
- Minimum stock
- Ignore saved product variant
- Sending Test Events
- Wishlist Flows
- Klaviyo Flow Setup
- Add an email step
- Configuring Flow Logic
- Reminder Emails
- Inventory and Price Related Emails
- Configuring Email Content
- Catalog Lookup Tag References (From Klaviyo)
- Inserting Dynamic Content Into Your Notifications