# Shopify flow

## **Introduction**

Managing subscriptions means handling many moving parts: welcoming new subscribers, recovering failed payments, re-engaging customers who cancel, and more. Doing all of this manually is time-consuming and easy to miss. With **Shopify Flow** integration, Joy Subscriptions automatically notifies Shopify Flow whenever a subscription event occurs — so your automations run in the background, without any manual effort.

Whether you want to send a welcome email when a new subscriber signs up, add a customer tag when a subscription is paused, or alert your team when a payment fails, this integration gives you the tools to build it — no coding required.

## **Understanding How It Works**

Shopify Flow works with three building blocks:

* **Trigger** — The event that starts a workflow (e.g., a customer cancels their subscription)
* **Condition** — An optional filter that refines when the workflow runs (e.g., only if the customer has been subscribed for more than 3 months)
* **Action** — What happens next (e.g., send an email, add a tag, create a task)

Joy Subscriptions provides the **Triggers**. When a subscription event occurs in Joy — such as a new subscription being created or a payment failing — Joy automatically notifies Shopify Flow. From there, you set up conditions and actions using Shopify Flow's built-in tools or other connected apps.

No setup is required inside the Joy app. Once Joy Subscriptions is installed on your store, all 11 triggers are automatically available in Shopify Flow.

## **Prerequisites**

* **Joy Subscriptions** must be installed on your Shopify store
* Your Shopify plan must include access to **Shopify Flow** (available on Basic and above)

**Available Trigger Events**

Joy Subscriptions provides 11 trigger events across three categories:

**Subscription Lifecycle**

| Trigger Event              | When It Fires                           |
| -------------------------- | --------------------------------------- |
| **Subscription Created**   | A new subscription is created           |
| **Subscription Cancelled** | A subscription is cancelled             |
| **Subscription Activated** | A cancelled subscription is reactivated |
| **Subscription Paused**    | A subscription is paused                |
| **Subscription Resume**    | A paused subscription is resumed        |
| **Subscription Updated**   | Any change is made to a subscription    |

**Billing**

| Trigger Event                    | When It Fires                                          |
| -------------------------------- | ------------------------------------------------------ |
| **Subscription Billing Success** | A recurring payment is successfully charged            |
| **Subscription Billing Failure** | A recurring payment fails                              |
| **Upcoming Order Notification**  | An upcoming order notification is sent to the customer |

**Schedule Changes**

| Trigger Event                             | When It Fires                     |
| ----------------------------------------- | --------------------------------- |
| **Subscription Billing Interval Changed** | The delivery frequency is changed |
| **Subscription Next Order Date Changed**  | The next order date is changed    |

## **How to Create a Workflow**

{% stepper %}
{% step %}
From your Shopify Admin, go to **Apps → Shopify Flow**.
{% endstep %}

{% step %}
Click **Create workflow**.
{% endstep %}

{% step %}
Click **Select a trigger**, then search for **"Joy Subscription"** in the app list.
{% endstep %}

{% step %}
Select the trigger event you want to use (e.g., **Subscription Cancelled**).
{% endstep %}

{% step %}
(Optional) Click **Add condition** to narrow down when the workflow should run — for example, only trigger the action if the customer has a specific tag.
{% endstep %}

{% step %}
Click **Add action** and choose what should happen next. You can send an email, add or remove a customer tag, create a task, or use an action from another connected app.
{% endstep %}

{% step %}
Click **Turn on workflow** to activate it.
{% endstep %}
{% endstepper %}

Your workflow will now run automatically every time the selected event occurs in Joy Subscriptions.

**Workflow Ideas**

Here are some ready-to-use ideas to get started:

| When This Happens...             | ...Do This                       | Goal                             |
| -------------------------------- | -------------------------------- | -------------------------------- |
| **Subscription Created**         | Send a welcome email             | Onboard new subscribers          |
| **Subscription Created**         | Add tag "subscriber" to customer | Segment customers in Shopify     |
| **Subscription Cancelled**       | Send a win-back email            | Recover churned customers        |
| **Subscription Cancelled**       | Remove tag "subscriber"          | Keep customer segments accurate  |
| **Subscription Billing Failure** | Send a payment reminder email    | Recover failed payments          |
| **Subscription Billing Failure** | Add tag "payment-failed"         | Flag customers needing follow-up |
| **Subscription Billing Success** | Remove tag "payment-failed"      | Clear the flag automatically     |
| **Subscription Billing Success** | Add loyalty points               | Reward recurring purchases       |
| **Subscription Paused**          | Send a check-in email            | Understand why and reduce churn  |
| **Upcoming Order Notification**  | Send a charge reminder           | Reduce surprise cancellations    |

<br>


---

# Agent Instructions: 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:

```
GET https://docs.avada.io/joy-subscriptions/integrations/shopify-flow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
