---
title: Enabling Subscription Events
slug: enabling-subscription-events
docTags: 
createdAt: 2026-02-10T16:33:20.057Z
---

Chord typically sends tracking events to the CDP from two sources via your storefront:

- Your **website front-end source**, either using the Chord Shopify web pixel or `@chordcommerce/analytics`, and
- Chord's **server events service source**, which sends tracking events from a Shopify custom source function in your CDP workspace in response to webhook triggers from Shopify.&#x20;

When Chord provisions your CDP workspace, it will include Chord's Shopify webhook source. This code listens for webhook events from Shopify and transforms them into CDP events.

# Subscription Webhook Topics

Shopify makes availalbe *subscription-specific* webhook topics that can be emitted via your store to the Chord CDP (much like order & checkout creation), however **Shopify limits&#x20;**`subscription contracts`**&#x20;events to the app that created the contract (i.e. Shopify Subscriptions, Recharge).**&#x20;

:::hint{type="warning"}
**Shopify limits Subscription Contracts events to the app that created the contract (i.e. Shopify Subscriptions, Recharge).**
:::

As a result, the ***Chord webhook event app*** installed within your Shopify store will be unable to listen for subscription-specific webhook events; given this, a workaround to faciliate ingestion of these events is possible through the use of ***Shopify Flow***.

The following *subscription&#x20;*&#x77;ebhook topics are supported through this implementation:

- `subscription_contracts/create`**:&#x20;**&#x73;ends Chord's `Subscription Created` event
- `subscription_contracts/cancel`**:&#x20;**&#x73;ends Chord's `Subscription Canceled` event
- `subscripton_contracts/pause`**:&#x20;**&#x73;ends Chord's `Subscription Paused` event
- `subscripton_contracts/expire`**:&#x20;**&#x73;ends Chord's `Subscription Expired` event
- `subscription_billing_attempts/failure`: sends Chord's `Subscription Payment Failed` event

# Shopify Flow&#x20;

[Shopify Flow](https://apps.shopify.com/flow) is your automation and integration platform for ecommerce.

Flow makes it easy to build custom workflows to automate marketing, order fulfillment, inventory management, fraud prevention, and more. Boost productivity and reclaim your time by automating tasks, streamlining business processes, customizing how your store works, or connecting to your favorite apps and external services.

- Automate with hundreds of workflow templates for ecommerce tasks.
- Add custom logic and unlimited actions to any automation.
- Integrate with tags, metafields, B2B, Slack, Google Sheets, and more.

![](https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/HxKGnNUVvktvQO9dt5_Ck_image.png)

:::hint{type="info"}
The ***Shopify Flow app*** can be used to create workflows that listen for/ingest Subscription-specific webhook events and sends them through to your Chord CDP backend source.
:::

## Assumptions

Before installing the Shopify Flow App and creation of the subscription-specific webhook events, confirm with your Chord implementation team that the corresponding[ back-end webhook eventing app](https://docs.chord.co/server-event-tracking#creating-an-admin-api-key) has been installed on your Shopify store. **The following steps are assumed:**

- Chord already has access to your Shopify store;
- You have access to the Chord CDP;
- Shopify Flow app is either already in-use or is installed; and
- The subscription events to be configured are:
  - `Subscription Created`
  - `Subscription Cancelled`
  - `Subscription Paused`
  - `Subscription Expired`
  - `Subscription Payment Failed`

## Installation

As a free app, you should be able to easily instal&#x6C;*&#x20;Shopify Flow* within your Shopify store. It is possible that your Chord implementation team has already installed the app and if so, will have already installed the flows below. If there are any questions on whether the app is present or if these flows have already been set-up, please reach out to [help@chord.co](mailto\:help@chord.co)***.***

### Importing Flows

Click `Import Flow`and import the provided ***.flow*** files below:

::Image[]{src="https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/6QkTXuCVCER9C6e-KkZ2y_image.png" size="80" width="1422" height="811" position="center" darkWidth="1422" darkHeight="811" showCaption="false"}



::Image[]{src="https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/-OEWGi--9ofn5wVQHTC1k_image.png" size="80" width="3326" height="1908" position="center" darkWidth="3326" darkHeight="1908" showCaption="false"}

### .flow Files

Take these .flow files and ipmort them into your Shopify Flow app import modal:

::File{src="https://api.archbee.com/api/presign/TmutqdeXiIw-V3gBZXVjd/5y7G4qZsJN9ZdROhB0Z04_chord-subscription-contract-created.flow" label="[CHORD] - Subscription Contract Created.flow" isUploading="false"}

::File{src="https://api.archbee.com/api/presign/TmutqdeXiIw-V3gBZXVjd/yGLJXe9CVt4o1hXUayzka_chord-subscription-updated-cancelled-expired-paused.flow" label="[CHORD] - Subscription Updated (Cancelled __ Expired __ Paused).flow" isUploading="false"}

::File{src="https://api.archbee.com/api/presign/TmutqdeXiIw-V3gBZXVjd/mUHVzuGKRt8aYNiLFWt-X_chord-subscription-payment-failed.flow" label="[CHORD] - Subscription Payment Failed.flow" isUploading="false"}

**Validate & Review**

- Verify the configuration in Shopify:

::Image[]{src="https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/L2899i4aO8gZMxQol5edq_image.png" size="100" isUploading="false" width="2808" height="1758" darkWidth="2808" darkHeight="1758" showCaption="false" indent="1"}

- Verify the successful delivery of events in Chord CDP from your configured Back-End Source:

::Image[]{src="https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/hTPOVXSXnrn61SBlMSjGa_image.png" size="80" width="1433" height="813" position="center" darkWidth="1433" darkHeight="813" showCaption="false"}

::Image[]{src="https://api.archbee.com/api/optimize/TmutqdeXiIw-V3gBZXVjd/TyECDCV4qTEPLCwR4eZEl_image.png" size="80" width="3326" height="1918" position="center" darkWidth="3326" darkHeight="1918" showCaption="false"}

:::hint{type="danger"}
If you are experiencing any issues with configuring webhooks in Shopify or do not see Subscription events in your CDP back-end source, please reach out to [help@chord.co](mailto\:help@chord.co) with any questions/concerns.
:::

