Creating a Flow from a subscription list in ReCharge every quarter (Shopify)

  • 11 December 2020
  • 5 replies

Badge +2

Hi, we have a monthly subscription via ReCharge and we’d like to send our customers a discount code each quarter for sticking with us.  Can Klaviyo find and gather that info from ReCharge to create a Flow to send out those discount codes?

Thanks so much!


Best answer by retention 12 December 2020, 04:27

View original

5 replies

Userlevel 3
Badge +7

Hi @nickyoungtx ,


Thank you for posting!

Klaviyo has a direct integration with ReCharge which is outlined here.

As a first step, you would have to connect your ReCharge Account with your Klaviyo account by following the above instructions. 

Once you do, Klaviyo will start receiving data from ReCharge. Klaviyo receives the following ReCharge Metrics:

  1. Started Subscription
  2. Cancelled Subscription
  3. Started Checkout

You can then go ahead and create a segment for customers who have Started a Subscription but not Cancelled a Subscription over all time or in the past X days. 

Once you have created this segment, you can send them a one-off campaign every quarter with a unique discount coupon code.

You can also create and send this out as a flow, but you would have to create a new flow every quarter, which would essentially make it the same as sending out a campaign. 

Hope this helps!

Happy Sending :) 



Userlevel 7
Badge +59

I agree with @nikitavaidya that sending a quarterly Campaign may be the simplest way to do this. 

If you do want to automate this, you can create a Flow to simply send a discount code after they started their subscription every 3 months.  However, this means that these emails aren’t sent on a specific calendar day of the year, as everyone will hit their 3-month subscription on a different day.  If this is acceptable, then the Flow is fairly straightforward:


To create this Flow:

  • Create a Flow triggered on “Started Subscription”
  • Add a Flow Filter for “Cancelled Subscription” Zero times since starting the Flow.
  • Add a 3-Month Time Delay
  • Add your message with the discount code.  I recommend using a dynamic code here!
  • Add another 3-Month Time Delay, and clone the discount email, and repeat this as far into the future as you’d like.

Alternatively, you can also use a “Date Property Triggered Flow” to repeat this indefinitely without adding multiple time delays/messages as above.  This is a bit more tricky to setup, but you’ll never have to add more “messages” far into the future.  

  • Create (or use an existing Flow) a Flow that was triggered on “Start Subscription” and use the “Update Profile Property” action to set a field like “subscribed_date” to “Use current date when step is reached...”  This sets the date in their profile when they first subscribed.
  • Create a new Flow triggered on Date Property, and use the “subscribed_date” as your date property. Set this to “Monthly”
  • Add a Flow Filter for “Cancelled Subscription” zero times in the last 90 Days AND “Received Email” where Flow equals “{name of this flow}” zero times in the last 90 days. This removes anyone who has Cancelled their Subscription, and ensures they only get this every 90 days (and not monthly).
  • Add your Message with the Discount.

Hope this helps!

Badge +2

Very insightful!  Thank you for the step by step; super helpful!

Badge +2

Would there be a reason why I can’t find a specific product to add to the Flow? 

The product is active on all channels within Shopify, it’s not being used on any other Flow.  I’ve saved any changes made to the product and refreshed Shopify.  I’ve also restarted Klaviyo and when I set my Trigger for my ORDERED PRODUCT Flow: NAME > EQUALS > “new product name”, it’s not found there.

What am I doing wrong?

Userlevel 3
Badge +7

Hey @nickyoungtx ,

Has the product been ordered by anyone yet or is it a brand new product ready to launch?

If no one has ordered the product, it will not be available under the “Ordered Product” metric. 
If someone has ordered the product and its still not found, this might be a one-off troubleshooting question and will require a closer inspection. Please let us know if this is the case!