Recurring billing & subscriptions

Bill on a schedule; the system chases the card so you don't.

Set up a recurring plan

  1. 1Go to Accept Payments → Recurring and click New schedule.
  2. 2Pick the customer. They need a card on file; if the dropdown shows "no card," run one sale for them in the Virtual Terminal with Save this card to vault ticked, then come back.
  3. 3Enter the amount and the frequency: weekly, biweekly, monthly, quarterly, or annual.
  4. 4Set a start date, and optionally an end date or a total number of payments (leave both blank to bill until you cancel). Add a description.
  5. 5Create the schedule. Each cycle charges the saved card automatically and emails the customer a receipt.
Recurring billing board with MRR metrics
Recurring billing – live MRR and churn, with pause/resume and amount changes.

Recurring plans can bill a saved card or a customer's bank account (ACH). Card plans charge the card on file; bank plans debit the account under a signed recurring authorization. If dual pricing is on, card-paying subscribers see the card price and bank subscribers the lower bank price.

Reusable price plans

If you sell the same subscription over and over, define it once as a plan and attach it, instead of re-entering the amount each time. Go to Accept Payments → Plans.

You can run three plan structures: Paid (a normal charged plan), Free trial (a paid plan that delays the first charge, see the next section), and Freemium. Freemium means offering a Free tier alongside one or more paid tiers: create a plan, choose Free, and pair it with your paid plans. A free plan never charges. Any paid plan can also start with a free trial.

  1. 1Give the plan a code (like PRO-MONTHLY) and a name.
  2. 2Choose Paid or Free. Free is a $0 tier for freemium; Paid is charged.
  3. 3For a paid plan, choose a pricing mode: Flat (one price), Per unit (a price times a quantity, like per seat), or Tiered (volume pricing, where the first so-many units are one rate and the next tier another).
  4. 4Set the interval (weekly, every 2 weeks, monthly, quarterly, annual, or a custom number of days) and a tax rate if it applies.
  5. 5Optionally add a free trial (in days) and a one-time setup fee (see the next section).
  6. 6Add up to 5 plan features – short bullets that highlight what's different about this tier. They help customers compare your free and paid plans.
  7. 7Save it, and the plan is ready to attach to recurring subscriptions. Archive a plan when you retire it.
Plans builder with pricing modes
Accept Payments → Plans – reusable price templates: flat, per-unit, or volume-tiered.

Plans are templates for recurring billing. For a one-time sale, use an invoice or a payment link instead. To charge by usage (per message, per API call, and so on), set up a Usage Meter under Accept Payments → Usage Meters and attach it to a per-unit subscription – the meter also gives you a daily cap and a usage-reporting API.

Usage meters (charge by usage)

A usage meter charges by how much a customer uses – per message, per token, per API call, or any custom event – instead of a flat monthly price. Go to Accept Payments → Usage Meters.

Each meter has a unit (like "message"), a price per unit (like $0.01), and a daily cap that limits how many units can be reported per day as a fraud guard. Usage you report through the meter is added up and billed on the subscription's next cycle.

  1. 1Create a meter: give it a name, the unit charged, a price per unit, and a max-per-day cap (0 for no cap).
  2. 2Note the meter key (it defaults from the name). You use it to report usage from your system.
  3. 3Attach a per-unit subscription to the customer so the meter's usage has a cycle to bill on.
  4. 4Report usage as it happens (from your app via the Merchant360 API, POST /meters/{key}/usage). Each report counts toward the daily cap; once the cap is hit, further reports for the day are declined.
  5. 5On the subscription's billing date, the reported units are totaled and charged at the meter's price.
The Usage Meters builder
Accept Payments → Usage Meters – a unit, a price per unit, and a daily cap.

Meters are for developers wiring usage into billing. The reporting endpoint is documented in Developers → API. If you just want a fixed monthly or annual price, use a plan instead. Reporting is per event: your system calls the usage endpoint each time the thing you're metering happens (or in batches with a quantity), and Merchant360 keeps the running total for the period.

Flex fees – included usage plus overage

Flex fees combine a flat plan price with a usage allowance and per-unit overage, the way many software products price their tiers. A plan charges its normal monthly (or annual) price and includes a set number of units of a meter each period; only usage beyond that allowance is billed, at the meter's per-unit price.

Example: a Pro plan is $49/month and includes 1,000 API calls. A customer who makes 1,000 or fewer calls pays exactly $49. A customer who makes 1,300 pays $49 plus 300 times the meter's price. Your Free, Basic, and Pro tiers can each include a different allowance of the same meter.

  1. 1First create the meter you'll charge overage on (Accept Payments → Usage Meters) – its price per unit is the overage rate.
  2. 2Create or edit a paid plan (Accept Payments → Plans). In the Usage overage (flex fees) section, pick that meter and enter how many units the plan includes per period.
  3. 3Attach the plan to a customer's subscription as usual. Report usage against that subscription through the meter as it happens.
  4. 4At each billing date, Merchant360 totals the period's usage, subtracts the included allowance, and adds the overage (extra units times the meter price) to the plan's flat price on that one charge.

Included usage never charges – it's covered by the flat plan price. Only the spillover is billed, so a light user is never charged more than the plan price. Give different tiers bigger allowances to build a classic good/better/best pricing ladder.

Free trials & setup fees

A plan can start with a free trial, a one-time setup fee, or both. You set these on the plan (Accept Payments → Plans) or on a subscription plan in the pay widget, and they carry through to the customer's signup.

A free trial delays the first recurring charge by the number of days you set – the subscriber isn't billed during the trial, and billing begins automatically when it ends. A setup fee is a one-time charge collected at signup (for example an activation or onboarding fee); it's billed once, on the first card charge, and never repeats.

  1. 1On a card signup with no trial, the customer is charged the first period plus any setup fee today, then the plan price each cycle.
  2. 2On a card signup with a trial, only the setup fee (if any) is charged today; the first plan charge lands when the trial ends.
  3. 3A free trial with no setup fee charges nothing today – the card is saved securely without a charge, and the first plan charge lands when the trial ends. Customers can also start a trial by bank (ACH); bank signups never pay a setup fee (the bank authorization covers a single recurring amount).

Pairing a small setup fee with a free trial lets card customers start a trial today – the fee saves their card so billing can begin automatically when the trial ends.

Pause, resume & change the amount

From the board, each schedule has actions by status. Pause a subscription and billing stops at the next cycle with nothing lost; Resume it later to pick back up.

Change the amount on an active plan and the difference is handled automatically. An upgrade charges the prorated difference to the card right now. A downgrade is not refunded in cash: instead the credit is applied as extra time, pushing the next charge date out at the new lower rate.

When a card fails: dunning

A declined renewal doesn't just die. The system reads why the card failed and retries on a smart schedule while emailing the customer.

  1. 1A soft decline (a temporary issue or insufficient funds) retries a few times over the following days.
  2. 2An expired or invalid card gets one courtesy retry and an email asking the customer to update their card.
  3. 3A hard decline (reported lost, stolen, or fraud) is not retried, and you're alerted.
  4. 4While a plan is chasing a payment it shows as Past due; you can Retry now any time. When the card recovers, it returns to Active on its own.

Decide what happens when retries are exhausted under Billing Settings → Dunning: pause the subscription (the default) or cancel it.

Know your recurring revenue

The Recurring page opens with a metrics strip: MRR (with annual run-rate), Active subscriptions, New this month, Churned this month, and Net new MRR with your monthly churn rate, plus a 12-month MRR history.

These are your real subscription numbers, month over month, without a spreadsheet.

The subscriber's self-serve page

Subscribers get their own secure page (no login) with the plan amount, interval, next charge date, and status. They can pause, resume, or cancel, and see their full invoice history with you, each invoice one tap from its own pay page.

Subscribers can also update their payment card right on that page – see the next section.

When a subscriber's card changes (self-serve card update)

Cards expire, get reissued, and get replaced after fraud – and every one of those used to mean a phone call to you. Now the subscriber fixes it themselves: their self-serve page has an Update payment card section, and every dunning email ("your payment didn't go through") links straight to it.

  1. 1The subscriber opens their subscription page from any plan email (the Manage subscription button) – no login, the secure link is the key.
  2. 2They tap Update payment card and enter the new card. It's the same secure card form as every Merchant360 surface; the number is tokenized and never stored raw.
  3. 3On an up-to-date plan, the new card simply takes over from the next cycle.
  4. 4On a past-due plan, the form is already open with a Save card & retry payment button: saving the card immediately retries the overdue charge, and on approval the subscription reactivates on the spot – no action from you, no gap in service.

This is the recovery path for failing cards: the dunning emails chase, the link lands the customer on the update form, and a fixed card settles the overdue balance the same minute. You'll see the recovered charge in Transactions like any sale.