How to Set Rules for a Subscription Product

Modified on Wed, 14 Oct at 10:10 PM

A rule reacts automatically when something happens on a subscription — a renewal, a failed payment, a cancellation and more.
WHEN this happens → THEN do this.

  • Push to autoresponder — add the customer to a list or tag in your email service
  • Send a webhook — send the event data to your CRM, Zapier, Make or Slack
✅ Why use rules?A one-time purchase has one moment: “bought.” A subscription has many — renewed, failed, cancelled, paused and more. Rules let you save sales, recover failed payments and keep records right, automatically.
New to rules? Start with the general Set Product Rules article — this one uses the same screen.

Create a Rule in 5 Steps

1 Open Set Rules

  • Product settings → Set Rules (left menu)
  • Click the green Set Product Rules button (top right)

Product settings with Set Rules highlighted in the left menu and the Set Product Rules button 

2 Meet the rule window

  • The Create automation rule window opens
  • WHEN = the trigger · THEN = the action

The Create automation rule window with the WHEN and THEN sections 

3 Choose the trigger (WHEN)

  • Click the first dropdown under WHEN
  • Pick from the Subscription group (the list also has Product and Manual member)
The WHEN dropdown grouped by Product, Manual member and SubscriptionThe Subscription group in the WHEN dropdown, scrolled downThe rest of the Subscription group in the WHEN dropdown
TriggerFires when…
subscription is renewedA payment succeeds and the next cycle starts
subscription payment failsA recurring charge is declined
subscription is cancelledThe customer or you cancel it
subscription is pausedIt is put on hold, not cancelled
subscription is resumedA paused subscription starts again
subscription expires or completesIt reaches its natural end (for example, a fixed plan finishes)
subscription is refundedA subscription payment is refunded
card is about to expireThe card on file is nearing expiry — an early warning
free trial converts to paidA trial ends and becomes a paid subscription
free trial is endingA trial is about to end — a heads-up
The list also has product is purchased and the cart is abandoned (Product), and Manual member access is given (Manual member). You build those rules the same way.

Pricing option

  • Second dropdown: for all pricing options or for a specific pricing option
  • Handy for tiers, like Monthly vs. Annual

The pricing option dropdown: for all pricing options or for a specific pricing option 

4 Choose the action (THEN)

  • Pick one card: Push to autoresponder or Send a webhook

The THEN section with two action cards: Push to autoresponder and Send a webhookOption A: Push to autoresponder

  • Autoresponder — pick your connected email platform
  • Action — add them to
  • This list — the list to add them to
  • Autoresponder Tags — optional; at least 3 characters

The autoresponder fields: Autoresponder, Action, This list and Autoresponder Tags

⚠️Connect the autoresponder first in Settings → Integrations, and make sure the list already exists in your autoresponder.

Option B: Send a webhook

  • Tick the events that should send data to your URL
  • Webhook Name — your own label (for example, “CRM sync”)
  • Webhook URL — where the data goes (Zapier catch hook, Make webhook or your server)
  • Open Sample subscription event payload to see the JSON that is sent

The Webhook events list with a checkbox for each event, plus Webhook Name and Webhook URL

⚠️All events are ticked by default, including product is purchased. For a subscription-only webhook, untick it — or your URL also gets the first sale.

Each event is sent with a name in the type field:

EventSent as type
product is purchasedpurchased
is renewedsubscription.renewed
payment failssubscription.payment_failed
is cancelledsubscription.cancelled
is pausedsubscription.paused
is resumedsubscription.resumed
expires or completessubscription.expired
is refundedsubscription.refunded
card is about to expiresubscription.card_expiring
free trial converts to paidsubscription.trial_converted
free trial is endingsubscription.trial_ending
?One URL for all events: tick several events — your endpoint reads type to tell them apart.
A different URL per event: make one rule per event, each with a single box ticked and its own URL.
Webhook and autoresponder together: each rule has one action, so make two rules with the same WHEN.

5 Save the rule

  • Click Save rule (bottom right)
  • The rule is live and fires the next time that event happens

Rule Ideas

GoalWHENTHEN
Win back failed paymentssubscription payment failsAutoresponder: tag “Payment-Failed” → send “update your card” emails
Clean up your list on cancelsubscription is cancelledAutoresponder: move to “Cancelled” list, tag “Churned”
Celebrate trial conversionsfree trial converts to paidAutoresponder: move “Trial” → “Paid Customers”, tag “Converted”
Remind trial usersfree trial is endingAutoresponder: tag “Trial-Ending” → send a reminder
Stop expiring-card churncard is about to expireAutoresponder: tag “Card-Expiring-Soon” → send “update your card” email
Sync everything to your CRMall subscription eventsWebhook to your CRM, Zapier or Make
Alert your team on cancelsubscription is cancelled (only)Webhook to a Slack or Zapier URL

Quick Fixes

ProblemFix
My “cancelled” rule didn’t firePick exactly subscription is cancelled (not “expires or completes”) · click Save rule · check the autoresponder or webhook URL is filled in
My webhook gets events I don’t wantAll boxes are ticked by default. Untick the ones you don’t want and save again
I want different URLs per eventMake one rule per event, each with a single box ticked and its own URL
My tag didn’t applyTags need at least 3 characters · check the tag exists (or can be created) in your autoresponder
What is the “type” field?It names the event that happened, like subscription.payment_failed. Open the Sample subscription event payload to see the full JSON
Webhook AND autoresponder on one triggerOne action per rule — make two rules with the same WHEN

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article