Docs

Klaviyo integration

Klaviyo integration

Juo - Klaviyo integration

Juo provides out-of-the box email notifications for subscription purchase, renewal, upcoming payment, failed payment, cancellation, and pending renewal (items out of stock).

In addition to these automatic notifications, or instead of them, merchants can also integrate Juo with Klaviyo to manage their subscription-related communication there.

Klaviyo Private API Key

To integrate with Klaviyo, you first need Klaviyo’s Private API Key. You can find in Klaviyo, under Settings > Account > API Keys.

Scroll down to Private API Key and copy the key to clipboard.

Klaviyo settings - Private API Keys
Copy the Private API Key to clipboard

Juo needs Private API Key (not Public) to integrate with Klaviyo, so if you don’t have a Private Key, you need to create one first.

To do this, click on “Create API key” in the Private API Keys section.

Next, select Custom Key Access level and give Full Access to API Scopes Events and Profiles.

Click “Create” to save your Private API Key and you’re ready to follow through with the integration.

Klaviyo settings - Create new Private API Key
You need full access for Events and Profiles

Juo <> Klaviyo integration

In the Juo App, open the Settings tab and select Integrations from the top navigation bar.

Next, enable Klaviyo and paste the Private API Key in the input field that appears. Hit “Save” to confirm.

Global settings view - Klaviyo integration
Paste your Private API Key and click Save

Juo <> Klaviyo Flow triggers

Juo is currently syncing the following events with Klaviyo:

  • Started Subscription - sent when a subscription is purchased
  • Canceled Subscription — sent when a subscription is cancelled
  • Upcoming Renewal Subscription — sent when a subscription is about to renew (3 days before the planned renewal)
  • Billed Subscription — sent when a subscription is paid successfully
  • Billing Failed Subscription — sent when a subscription payment fails
  • Billing Requires Action Subscription — sent when an additional layer of authentication is required to process the payment (e.g. 3D Secure for CC payments)
  • Product Out Of Stock Subscription — sent when a subscription failed to renew because one of the products was out of stock.

Note that in order to sync events between Juo and Klaviyo you need to turn on the integration first. Events that happened prior to the integration will not be visible in Klaviyo.

You can use the above events as triggers to send subscription notifications. For example, if you want to send an email after a subscription has been purchased in your store, select “Subscription started” as a trigger.

Klaviyo Flow editor - Trigger setup
Subscription purchase can trigger your Klaviyo flow

Customer tags as flow filters

Apart from events that act as triggers, you can also use tags to limit the email flow to specific subscriber segments.

Juo automatically tags subscription and membership customers with different tags, depending on the type of subscription, its status, and the number of subscription orders.

Status tags assigned to subscription customers:

  • active_subscriber — for customers with an active subscription
  • paused_subscriber — for customers who have paused their subscription
  • cancelled_subscriber — for customers who have cancelled their subscription
  • failed_subscriber — for customers whose subscription payment has failed
  • expired_subscriber — for customers whose subscription has expired due to repeated failed payment attempts

Loyalty tags assigned to both subscription customers

  • new_subscriber — for new customers who have purchased a subscription that hasn’t renewed yet
  • recurring_subscriber — for customers whose subscription has renewed at least once

Status tags assigned to membership customers:

  • membership_active — for customers with an active membership
  • membership_inactive — for customers with an inactive membership

Tags assigned to potential subscribers

Based on their order history, customers can also be assigned the subscription_intent tag, which allows merchants to convert them to subscribers more easily with targeted messaging.

Subscription intent tagging is a PRO feature that can be enabled under Settings > Subscription intent.

All the above tags can be used as flow filters in Klaviyo — they can be found under Flow filter > Properties about someone > Shopify Tags.

Klaviyo Flow editor - Filter setup
Subscriber tags can also be used as filters

Juo <> Klaviyo Event properties

Each of the events that is synced between Juo and Klaviyo comes with a set of properties that can be used as dynamic variables in the email and SMS notifications set up in Klaviyo.

  • orderID - contains the ID of the subscription
  • DiscountCode and DiscountValue — contain the discount code applied to a subscription and the value of the discount
  • OrderIntervalFrequency and OrderIntervalUnit — together, they display the delivery interval of a subscription, e.g., 1 month
  • CurrentCycle — represents the number of the current subscription order. 0 is the initial order, and 1 is the first renewal.
  • NextBillingDate — contains the date of the next scheduled renewal
  • Saving — shows up the total savings in subscription
  • ShippingCost — displays the shipping cost for a subscription
  • $value — shows the total order value (without shipping)

Depending on the event type, some additional properties may become available, such as:

  • errorMessage - provides more background on the reason for payment failure, e.g. “Payment method was revoked”
  • NextActionUrl - links to where subscribers can finish their payment validation when required
  • ProductID - allows to display the ID of the product in subscription
  • ProductName - shows the name of the product
  • VariantName - shows the name of the variant
  • Quantity - shows the product quantity
  • ItemPrice - shows the price per single item
  • RowTotal - shows the price of all items of the same type (Item x Quantity)
  • ImageURL - allows to display the product image
  • Categories - shows the collection or collections to which an item belongs

To access the properties that are available for each event, you need to add an Email action in Klaviyo and switch from the content editor to the preview mode as you set up the content. You can copy the properties from the preview back into the text fields in the content.

Here’s an example of how you can use properties to display additional subscription information in each email, including:

  • products ordered
  • product quantity
  • total price for the products
  • subscription benefits
  • total item and shipping value
Klaviyo email editor - Variables setup
Copy the variables into your Klaviyo email template
Properties for displaying subscription details
**Your subscription details**
{{ event.Items.0.ProductName|default:'' }}
x {{ event.Items.0.Quantity|default:'' }}
${{ event.Items.0.RowTotal|default:'' }}
- Shipped every: {{ event.OrderIntervalFrequency|default:'' }} {{ event.OrderIntervalUnit|lower|default:'' }}
- Next billing date: {{ event.NextBillingDate|format_date_string|default:'' }}
- Save ${{ event.Saving|round_down:2|default:'' }} in subscription
Total: ${{ event|lookup:'$value'|default:'' }}
Shipping: ${{ event.ShippingCost|default:'' }}

Feel free to copy them into the Klaviyo email editor as you set up the content.

Switching to the preview mode next, you can check how the subscription order information is doing to be displayed in your notifications.

Klaviyo Email editor - Email content preview