Recurring revenue is easy to start and hard to keep. This page covers the whole life of a subscription: free trials and which rails take them, the reminder before each rebill, what actually happens when a renewal fails, how a save gets recorded, and the portal where a buyer updates their own card instead of emailing you.
01 — The whole arc
The life of a subscription
A subscription is a product billed monthly or annually on your own Stripe, PayPal or Airwallex account. Most of what follows is about the parts nobody demos: the reminder before a charge, the failure after one, and the recovery.
A failed renewal is not the end of a subscription — it opens a window. Access continues, your payment_failed rule runs, and if the buyer fixes their card a dunning_recovered follow-up fires so you can tell the save apart from a fresh sale.
02 — Doing it
Making one
A subscription is the second radio on step 1 of + New offer. Pick it, and two fields appear that a one-time offer does not have: Billed (Monthly or Yearly — there is no weekly or quarterly) and Free trial (days). Fill in a price, a currency and a delivery link, and press Create offer. Or say it to your agent.
Billed is the one field you cannot change afterwards. The Edit dialog has no interval control at all, so a live monthly plan cannot be switched to yearly — you make a second offer and move people across. Price, name, delivery and trial length all stay editable.
A subscription cannot carry a bump, an upsell or a funnel. Try it and the refusal says why: the add-on would never renew. If you want to sell a one-off extra alongside a membership, sell it as its own offer.
Step 1 with Subscription chosen. The trial field takes 1–365 whole days and blank means none — zero is refused rather than treated as "no trial". The pre-rebill reminder is deliberately absent here: it is one account-wide setting, not a per-offer one.
03 — Getting them in
Free trials
Set a trial of 1–365 days on a subscription product. The buyer's card is taken up front and charged when the trial ends, so a trial converts by itself rather than needing a second decision.
Trials run on card, PayPal and Airwallex. Only the crypto rail sits them out, because it is one-time by construction. Each rail does it differently underneath — a vaulted card, a free-trial plan variant, a zero-value verified consent — and none of that reaches the buyer.
A trial and a coupon do not combine on PayPal or Airwallex. The checkout says so and asks the buyer to drop the code, because the trial already is the discount. On card, a coupon discounts the first invoice after the trial ends.
04 — Before the charge
The rebill reminder
GoCushy emails your subscribers before each renewal. It is on by default at three days, and you can set it to 3, 5, 7 days or off entirely under Settings → Business.
Turning it off is usually a mistake. A charge nobody expected is the most common cause of both a chargeback and an angry cancellation, and the reminder costs you the small number of people who would have cancelled anyway — earlier, and without a dispute.
05 — The part nobody demos
When a renewal fails
Cards expire. This is not an edge case; on any list of recurring customers it is a monthly event.
When a renewal fails, the payment_failed follow-up trigger fires, so whatever rule you have set — an email, a tag in your ESP — runs immediately. The buyer keeps their access while the payment is being retried, because cutting someone off the hour their card expired loses a customer you were about to keep.
A failed renewal fires a trigger, not a rescue: GoCushy raises payment_failed and dunning_recovered on its own, but nothing reaches the buyer until you add two rows to the Follow-ups table — one per trigger, each pointing an offer at a list or tag in your email tool. Both triggers are already in the Trigger dropdown alongside Purchase, Refund, Upsell taken, Renewal and Abandoned checkout; the Health column shows the connection's pill plus when each rule last fired, so a rule that has never fired is visible as such. The + Add follow-up button only appears once an email tool is connected and at least one offer exists, and payment_failed fires once per dunning episode rather than once per retry.
If they fix it, dunning_recovered fires. That is a separate trigger on purpose: a save is not a new sale, and you want to be able to say something different to someone whose card just bounced.
These two triggers are the ones most merchants never set up. They are the difference between a subscription business that leaks and one that does not, and they are two rules in Follow-ups.
06 — Their side
What buyers can do themselves
Every buyer has a portal — a magic-link page listing everything they have bought from you, with their invoices, their access links, and a Manage subscription control.
That control is where they update a card or cancel, and it matters more than it sounds: without it, every expired card becomes an email to you, and every cancellation becomes a conversation you did not want at a moment you did not choose.
The GoCushy buyer portal at /c/{account}/portal signs a buyer in with a 30-minute emailed link and no password, then lists that one merchant's orders with Access, Invoice and Manage subscription actions. On the subscription page, "Update card & view invoices →" redirects to the merchant's own Stripe Customer Portal, where GoCushy enables exactly three features — payment_method_update, invoice_history, and subscription_cancel at period end — so no card field is ever rendered by GoCushy; PayPal subscriptions instead show "Manage payment method in PayPal →". Buyers cannot change plan or refund themselves: the 14-day withdrawal button records the request and emails both parties but moves no money. On GoCushy-billed subscriptions the manage page also offers Pause — the rules are in the next section.
Card details are handled by your payment provider, never by a GoCushy form. We do not see them and we do not want to.
06b — Pausing
Pausing, and the rules that keep it fair
On subscriptions GoCushy bills for you (the Airwallex-billed kind), the buyer's manage page offers Pause. Stripe- and PayPal-billed subscriptions are managed through their own rails, exactly as before.
Pause stops future billing immediately. What it does not do is hand out anything free — the rules cut both ways, and they're the same for every merchant:
Access runs to the end of the period they paid for. Pause on day 3 of a monthly cycle and the buyer keeps access for the rest of that month — then it lapses until they resume. They get exactly what they paid for, nothing more.
When the paid period runs out while paused, the buyer gets one email saying so, with a resume link. One — not a drip campaign.
Resuming restarts billing from the day they resume. Never a catch-up charge for the paused months: a buyer who pauses for three months and comes back is charged for the month ahead, not the months behind.
A pause that lasts 90 days becomes a cancel. Handled exactly like a normal cancellation, so nothing dangles forever in your subscriber list.
Why offer it at all? A pause you make fair is a cancellation you didn't have. The buyer who's travelling, between jobs, or just busy keeps their history and their intent — and resumes with one click instead of re-buying from scratch.
07 — Ending one
Cancelling
Three ways: the buyer cancels in their portal, you ask your agent ("cancel jane@example.com's subscription"), or you do it from the order in your dashboard.
Cancelling stops future renewals. It does not refund what has already been charged — that is a separate decision, and a separate action.
08 — Automating around it
Follow-up triggers
Seven events can fire a rule into your email platform. The last two are the subscription ones people miss:
Trigger
Fires when
purchase
Someone buys.
refund
You refund them.
upsell_taken
They accept a one-click step after the sale.
renewal
A subscription rebills successfully.
abandoned
They entered an email and never paid.
payment_failed
A renewal charge fails.
dunning_recovered
A failed subscription starts paying again.
09 — The rules
Limits
Rule
Detail
Monthly or annual
Set on the product.
Trials 1–365 days
Card, PayPal and Airwallex. Not crypto.
One trial per buyer per product
Enforced where the money moves, not in the browser.
A coupon discounts the first payment
Renewals bill at full price.
Subscription prices are immutable
Renewals bill the price minted with the plan. Create a new product to change it.
No bumps or upsell chains
Those attach to one-time offers.
Reminder: off, 3, 5 or 7 days
Account-wide, default 3.
10 — When it looks wrong
If something looks wrong
A buyer says they were charged without warning
Check the reminder setting under Settings → Business. If it is off, nothing was sent.
Someone's card failed and I did not hear about it
A payment_failed follow-up rule is what tells you. Without one the event still happens and nothing announces it.
I cannot change a subscription's price
Correct, and deliberate — renewals bill the price minted with the plan, so changing it would silently alter what existing subscribers pay. Create a new product at the new price.
A buyer cancelled but still has access
Cancelling stops future renewals; access runs to the end of the period they already paid for.