> For the complete documentation index, see [llms.txt](https://ta-subscriptions-app.easto.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ta-subscriptions-app.easto.io/features/integrations/klaviyo.md).

# Klaviyo

## Overview

[**Klaviyo**](https://apps.shopify.com/klaviyo-email-marketing) is an email and SMS marketing platform for Shopify merchants. It lets you create customer segments, automate messaging, and build marketing flows based on customer activity.

By integrating [**TA Subscriptions App**](https://apps.shopify.com/subscription-recurring-pay?search_id=42ab494e-4cdd-4fe6-bda2-5036012e8c1b\&surface_detail=subscriptions+app\&surface_inter_position=1\&surface_intra_position=16\&surface_type=search) with Klaviyo, subscription events and customer data can be synced to Klaviyo for use in flows, segments, and campaigns.

With this integration, you can:&#x20;

* Synchronize customer profiles with Klaviyo.
* Build personalized email and SMS campaigns.
* Create customer segments based on subscription activity.
* Trigger automated flows from subscription events.

<figure><img src="/files/CC0mtyGKbmgnEsuqXqEg" alt=""><figcaption></figcaption></figure>

This integration requires sharing certain customer and subscription data with Klaviyo. For details about the data shared and how it is used, see [**Privacy and Data Sharing**](#privacy-and-data-sharing).

## How to Set Up

{% stepper %}
{% step %}

### Get your Klaviyo API key

Go to the Klaviyo app to get your API key. You can check out this detailed [guide](https://help.klaviyo.com/hc/en-us/articles/7423954176283) here.

Make sure your API key has 'Full Access' or at least the following scopes:

* *Events (*&#x46;ull Acces&#x73;*)*
* *Metrics (*&#x46;ull Acces&#x73;*)*
* *Profiles (Read Access)*

<figure><img src="/files/ynvMlpqebL10DdXHYIjE" alt=""><figcaption></figcaption></figure>

Copy and paste your key in the input.

<figure><img src="/files/YTI9Yk8Ryudkisjw5kAx" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Sync Klaviyo with TA Subscriptions App

Go to TA Subscriptions App, open **Settings** > **Integrations** > **Klaviyo** and turn on. Then paste the API key in step 1 in the box.

<figure><img src="/files/vZQFaLkYiGGBibbn8njS" alt=""><figcaption></figcaption></figure>

Click Connect and accept the policy. Below is what a successful connection looks like.

<figure><img src="/files/jxtittj4uTAqfhwmUfU2" alt=""><figcaption></figcaption></figure>

Choose the events you want to activate and turn on.&#x20;

<figure><img src="/files/rhDWn2FnaInxCd99sHrO" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Configure your flows in Klaviyo

**Create flow** > Select **Build your own** > Name your flow to continue

Then select a trigger metric.

<figure><img src="/files/dB6KO20EhL0htNoVmpu9" alt=""><figcaption></figcaption></figure>

After selecting your triggers, configure the flow's content.

<figure><img src="/files/U2ZTQhVhGhxcjPSnvaLv" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Add variables in email templates

You can add a number of variables into your Klaviyo email templates for better customization as well. Here are the list of variables that we offer:&#x20;

| Variables                                               | Description                                                                 |
| ------------------------------------------------------- | --------------------------------------------------------------------------- |
| {{ event.order\_id\|default:'' }}                       | Order ID                                                                    |
| {{ event.customer\_id\|default:'' }}                    | Customer ID                                                                 |
| {{ event.contract\_status\|default:'' }}                | Contract status, e.g.: `ACTIVE`, `PAUSED`, `CANCELLED`, `EXPIRED`, `FAILED` |
| {{ event.billing\_policy\_interval\|default:'' }}       | Billing cycle unit (DAY/WEEK/MONTH/YEAR)                                    |
| {{ event.billing\_policy\_interval\_count\|default:0 }} | Number of interval units per billing cycle                                  |
| {{ event.currency\_code\|default:'' }}                  | Currency code, e.g.: `USD`, `VND`, `EUR`                                    |
| {{ event.delivery\_price\|default:0 }}                  | Delivery/shipping price                                                     |
| {{ event.total\_amount\|default:0 }}                    | Total order amount                                                          |
| {% endstep %}                                           |                                                                             |

{% step %}

### Configure segment in Klaviyo

**Audience** > **Lists & segments** and create a new Segment

In Klaviyo, you can segment customers based on specific criteria to target your campaigns more effectively.

In the **Definition** section, you can choose these options:

* *What someone has done (or not done)*
* *Properties about someone*

<figure><img src="/files/OWPX2B1qzTefK80WtF9E" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

## Supported Events

1. **Subscription Created:**&#x54;riggered when a customer starts a new subscription. Some common use cases are:&#x20;
   * Welcome series, Subscriber onboarding
   * Cross-sell recommendations
   * Product education emails
2. **Subscription Activated:** Triggered when a subscription becomes active. Some common use cases are:
   * Welcome subscriber campaigns
   * Loyalty program enrollment
   * Subscriber-exclusive promotions
3. **Subscription Paused:** Triggered when a customer pauses their subscription. Some common use cases are:
   * Pause confirmation emails
   * Retention campaigns
   * Product recommendations, Reactivation reminders.
4. **Subscription Resumed:** Triggered when a paused subscription is resumed. Some common use cases are:
   * Welcome back emails
   * Subscriber engagement campaigns
   * Upsell opportunities
5. **Subscription Cancelled:** Triggered when a subscription is cancelled. Some common use cases are:
   * Win-back campaigns
   * Feedback collection
   * Retention offers
   * Reactivation discounts
6. **Upcoming Order Reminder:** Triggered before an upcoming subscription order is billed. Some common use cases are:
   * Renewal reminders
   * Payment preparation reminders
   * Subscription management prompts
7. **Payment Failed:** Triggered when a subscription billing attempt fails. Some common use cases are:
   * Dunning campaigns
   * Payment method update requests
   * Failed payment recovery emails
   * Customer support outreach

## Privacy and Data Sharing

When you connect this integration, TA Subscriptions App shares the data required to sync subscription events with Klaviyo in real time.

The data shared may include:

* **Customer information (Protected Customer Data):** Customer email address, customer name (when available), and customer identifiers required to associate events with the correct Klaviyo profile.
* **Subscription information:** Subscription creation, activation, renewals, updates, pauses, resumptions, cancellations, billing status, and other subscription lifecycle events.
* **Subscription order information:** Subscription order events, subscription plan details, products, quantities, billing dates, and related order information used for customer messaging, segmentation, and marketing automation.

TA Subscriptions App only shares the minimum data required to provide this integration. Payment credentials, payment method details, Shopify authentication tokens, and other sensitive authentication information are **never** shared with Klaviyo.

Data received by Klaviyo is processed according to Klaviyo's own Privacy Policy and Terms of Service. By enabling this integration, you acknowledge that customer data will be shared with Klaviyo for the purpose of providing the integration and that you are responsible for complying with applicable privacy laws and obtaining any required customer consent.

You can disconnect this integration at any time from **Settings → Integrations → Klaviyo** in TA Subscriptions App. Once disconnected, no new subscription events will be sent to Klaviyo. Previously synced data will remain in your Klaviyo account unless you remove it there.

## Important Notes

* Only events that occur after the integration is enabled will be synced to Klaviyo.
* Some events may not be available depending on your Klaviyo account configuration.
* We recommend testing flows and segments before launching live campaigns.
* Previously synced events and customer data are not automatically removed from Klaviyo after the integration is disconnected.

*If you need help, feel free to reach out to us via in-app* [***Live chat***](https://go.crisp.chat/chat/embed/?website_id=c4ae10a3-f762-4968-b35a-c931caf62a96)***,*** [***Book a call***](https://calendly.com/ta-subscription-app-support/30min) *or at* [***support@tech-arms.io***](mailto:support@tech-arms.io)***.***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ta-subscriptions-app.easto.io/features/integrations/klaviyo.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
