Skip to main content
For retainer work or recurring services, subscriptions automate the monthly (or quarterly, or annual) invoice generation so you don’t have to remember to bill each cycle. This guide walks through setting up your first recurring subscription end-to-end.
Prerequisites: a connected payment processor (Stripe or Authorize.Net) and a CRM contact for the client. New to Commerce? Start with Send Your First Invoice.

What you’ll build

A monthly retainer subscription: $3,000/month, auto-billed on the 1st of each month, with the client’s saved card auto-charged. If the charge fails, dunning emails go out automatically.

Step 1: Create the recurring product

If you don’t already have a recurring product in your catalog:
1

Go to Products

Navigate to /dashboard/commerce/products/.
2

Click New Product

A blank product form opens.
3

Fill in the basics

  • Name: “SEO Retainer — Standard”
  • Description: “Ongoing search engine optimization, content production, and reporting”
  • Price: 3000
  • Recurrence: Monthly
  • Taxable: as applicable
  • Plan flag: leave off (this is a single retainer, not a tiered plan)
4

Save

The product is now available for subscriptions.
For the difference between regular recurring products and is_plan: true plans, see Products & Services.

Step 2: Create the subscription

1

Go to Subscriptions

Navigate to /dashboard/commerce/subscriptions/.
2

Click New Subscription

A blank subscription form opens.
3

Pick the client

Search by name or company. Must already be in CRM with a billing email.
4

Pick the product

Search “SEO Retainer”. Select. The price and recurrence pre-fill.
5

Set the start date

Today, or a future date. The first invoice generates on this date (or the first billing anchor after, depending on your billing-anchor config).
6

Set the billing frequency

Should default to Monthly from the product. Override if you want a different cadence (e.g., bill quarterly even though the price is monthly).
7

Set the billing anchor

Day 1 of the month is the most common (everyone bills together; predictable cash-flow). Or the start-date day-of-month for client-specific anchors.
8

Confirm proration

If you start mid-month and want a partial first month, enable proration. If you want to charge a full first month regardless, disable.
9

Review and activate

Confirm the configuration. Click Activate. The subscription is live; the first invoice generates on schedule.

Step 3: Capture the client’s payment method

For the auto-charge to work, the client needs a saved payment method.
Recommended. The first invoice generates and emails a portal link. They pay using a card and check “Save this card for future payments.” Subsequent invoices auto-charge that card.

Step 4: Watch the first cycle

After the start date passes (or immediately if you backdated):
1

First invoice generates

A new invoice appears at /dashboard/commerce/invoices/ linked to the subscription.
2

Email goes to the client

Standard invoice email with portal link.
3

Client pays (or auto-charge runs)

If they have a saved method, the auto-charge runs. Otherwise they pay manually through the portal.
4

Invoice flips to Paid

Webhook updates the status. The subscription’s “next billing” date advances to the next cycle.

Email reminders before the charge

For subscriptions with auto-charge, optional pre-charge reminders give the client a heads-up:
1

Open subscription settings

Navigate to /dashboard/commerce/settings/.
2

Configure pre-charge reminder

Set the lead time — 3 days before the next charge is common. The client gets an email saying “Your $3,000 charge will run on [date].”
3

Save

Applies to all subscriptions. Per-subscription overrides are also available.
This reduces “I forgot you were charging me” complaints and gives clients a chance to update payment methods or pause if needed.

Handling failed payments

When a subscription’s auto-charge fails (insufficient funds, expired card, processor timeout), the dunning policy kicks in:
1

Day 1 — first retry

Automatic retry the next day, in case the failure was transient.
2

Day 3 — second retry

Another retry, plus an email to the client asking them to update their payment method.
3

Day 7 — third retry

Final automatic retry. More urgent email.
4

Day 7+ — past_due

Subscription flagged past_due. Your team gets notified to follow up directly.
5

Day 21 — auto-cancel

After the configurable grace period, the subscription auto-cancels.
Configure retry intervals and grace period in Payment Settings.
Personal follow-up at day 7 (when it goes past_due) recovers the most subscriptions. The client usually wants to keep the service — they just have a card issue. A quick email or call from a real person fixes it faster than another automated email.

Plan changes

If the client wants to upgrade, downgrade, or swap to a different plan:
From the subscription’s actions menu, click Change Plan. Pick the new product. The current cycle prorates — credit for unused old plan, charge for prorated new plan. Next cycle bills the full new plan price.

Pausing or canceling

1

Pause

Stops invoice generation but keeps the subscription record. Resume any time.
2

Cancel at end of cycle (default)

Honors the current cycle (client got what they paid for) and stops at renewal. The most common cancellation flow.
3

Cancel immediately

Stops billing on the spot. Optionally issues a prorated refund.

Verify it worked

After your first full cycle:
  • The first invoice should be paid
  • The next-billing-date should have advanced to the next cycle
  • The subscription’s status should be active
  • The client should have a saved payment method

Troubleshooting

Check the next-billing-date — it may not have arrived yet. Check the activity log for any errors. Verify the payment processor connection is healthy.
The client may not have a saved payment method. Send them a payment-method link from the subscription’s actions menu. Until they save a method, each cycle’s invoice generates but waits for manual payment.
Proration depends on the change type. Upgrades prorate (credit + charge); downgrades-at-renewal don’t. Same-day swaps don’t. Double-check which option you picked. The activity log shows the math.
Check the dunning policy in Payment Settings. Also verify the processor connection is authorized — Stripe OAuth tokens can expire and a disconnected processor can’t retry.
Pre-charge reminders use your transactional email infrastructure. Check that your sending domain is verified — see Email Domains. Also confirm reminders are enabled for this subscription.

What’s next?

Subscriptions Reference

Full reference for plan changes, dunning, and MRR.

Track AR Aging

Find subscriptions that have gone past_due.

Reports & Analytics

Watch your MRR and ARR grow.

Set Up the Client Portal

Where clients manage their payment methods.