Recurring billing setup means configuring your store to automatically charge customers at regular intervals, such as weekly, monthly, or yearly. It’s commonly used for memberships, subscription boxes, and digital products or services.
Doing it smoothly, you need four things:
- a subscription plan model.
- a payment gateway that supports tokenized recurring charges.
- automated dunning for failed payments.
- a self-service portal so customers can pause, upgrade, or cancel on their own.
If you prefer an all-in-one solution instead of relying on multiple third-party apps, Wcart includes a built-in white-label subscription engine. It allows you to manage subscription plans, billing cycles, free trials, and the customer portal from a single platform, making it easier to launch and grow recurring revenue.
In this guide, we walk through the exact setup, the decisions that matter, and which approach is the best fit for different types of businesses.
What “recurring billing setup” actually involves
Recurring billing is more than simply enabling a charge again next month. A reliable subscription system is made up of several connected components that need to work together seamlessly . But if even one part is went wrong,it can lead to failed payments, accidental duplicate charges, unnecessary subscription cancellations, and an increase in customer support requests. Here’s the full picture before you touch a single setting.
- Plans and pricing. Each recurring product needs a defined billing interval (daily, weekly, monthly, quarterly, annual), a price, and a currency. Most stores also want a free or paid trial, plus the option to offer the same product on multiple cadences (say, “$15/month or $150/year”).
- Tokenization and the mandate. You never store a raw card number. The gateway hands back a token (and, in many regions, a stored mandate the customer has authorized) that lets you charge later without the card present.
- The billing scheduler. A reliable job that runs on schedule, finds the subscriptions due today, and creates the charge. This is the part homegrown setups most often get wrong.
- Dunning. Cards expire and fail. Dunning is the automated retry-and-notify logic that recovers a failed payment before a subscriber gets cancelled.
- Proration and changes. When a customer upgrades mid-cycle, you either charge the difference now or wait until the next renewal. Your engine needs one clear rule.
- The customer portal. Self-service to view invoices, update the card, pause, swap plans, or cancel, all without emailing you.
How to set up recurring billing, step by step
The sequence below is platform-agnostic in principle, but it maps directly onto how the Wcart subscription engine is organized, so you can follow it as a literal checklist.
1. Connect a gateway that supports recurring charges
- Not every payment gateway supports automatic recurring payments made when the customer isn’t actively completing a checkout. You need one that issues reusable tokens and, where required, deals with strong customer authentication mandates.
- Stripe, for example, provides features like Subscriptions and SetupIntents for exactly this, and while most leading payment gateways offer similar features. Confirm the gateway supports your target currencies and the customer’s region before creating your subscription plans.
2. Define your plans and billing cycles
- Create one plan per cadence/price combination. Decide your interval, whether you offer a trial, and your trial type (card-required vs. no-card). A no-card trial maximizes signups; a card-required trial maximizes trial-to-paid conversion. Pick deliberately, because it’s the single biggest lever on subscription economics.
3. Decide your proration and plan-change rules
When a customer upgrades from a monthly plan to an annual plan, or switches from a smaller subscription to a larger one, you’ll need to decide how the billing adjustment should be handled.
- One option is to charge the prorated difference immediately so the customer only pays for the remaining value of the upgraded plan. This approach is generally fairer and helps you capture revenue sooner.
- The other option is to apply the new plan at the customer’s next billing cycle, which keeps the billing process simpler and avoids unexpected charges.
Which ever method you choose, define your billing policy clearly before launching your subscription service so both your team and your customers know what to expect.
4. Configure dunning and retries
- Set up a retry schedule for failed payments, such as days 1, 3, 5, and 7, and send reminder emails after each attempt . Decide what should happen if payment still fails: downgrade, pause, or cancel. Involuntary churn from expired cards is one of the largest, most recoverable leaks in any subscription business, and this step pays for itself.
- One thing worth knowing: a lot of those “declined” charges aren’t dead accounts at all, they’re cards that got reissued with a new expiry, so a retry a few days later quietly succeeds without the customer ever noticing.
5. Turn on the customer self-service portal
- Give subscribers a self-service portal where they can update their payment details, download invoices, pause their subscription, switch plans, or cancel whenever they want. . This one feature reduces billing support tickets dramatically and reduces angry chargebacks, because a customer who can cancel cleanly rarely disputes the charge with their bank.
6. Test the full lifecycle before going live
- Test your subscription flow from start to finish using your payment gateway’s test mode. Check the signup, first charge, renewal, a deliberately failed charge, a successful retry, an upgrade, and a cancellation. Verify the emails, the invoices, and the access changes at each step. Only then do you flip to live keys.
Build-it-yourself vs. app vs. native engine
There are three honest ways to get recurring billing. None is “best” in the abstract; it depends on how much control you need and how much engineering you want to own. Here is a fair comparison on the dimensions that actually decide it.
| Dimension | DIY on a gateway API | Subscription app/plugin on a generic platform | Native engine (e.g. Wcart) |
|---|---|---|---|
| Time to launch | Slowest, you build scheduler, dunning, portal | Fast, install and configure | Fast, built in, configure plans |
| Control over billing logic | Total | Limited to the app’s features | High, part of the core platform |
| Branding / white-label | Full, but you build it | Often shows the app’s branding | Fully white-label by design |
| Data ownership | Yours | Often split across the app vendor | Yours, in one system |
| Maintenance burden | High, you own every edge case | Shared with the app vendor | Handled by the platform |
| Best fit | Teams with engineers and unusual logic | Stores happy inside one ecosystem | Brands/marketplaces wanting one owned stack |
Note: we deliberately avoid quoting competitor prices or feature counts here because they change constantly and vary by plan and region. Check each vendor’s own pricing page for current figures. The dimensions above are the durable, verifiable ones.
Memberships vs. subscription products: they bill differently
People use “subscription” loosely, but two patterns dominate, and they need slightly different setups.
Memberships (access)
A membership grants ongoing access to something: a community, gated content, member pricing, a course library. The “product” is permission, so the billing engine has to tie subscription status to an access flag. When billing lapses, access should revoke automatically; when a retry succeeds, access should restore. The key requirement is reliable, near-real-time sync between billing state and entitlement.
Subscription products (physical or digital fulfillment)
A subscription box, a coffee-of-the-month, or a recurring consumable triggers a fulfillment event each cycle. Here the billing engine also has to create an order, decrement inventory, and hand off to shipping on every renewal, not just take a payment. If your platform separates “charge” from “create order,” renewals can silently fail to ship. What actually happens in that scenario is the money lands in your account, the customer’s card statement looks normal, and the first anyone hears about it is a “where’s my box?” ticket three weeks later. A native engine that treats a renewal as a real order avoids that whole class of bug.
Who should choose what
- Choose DIY on a gateway API if you have an experienced development team and need advanced subscription features such as usage-based billing, custom pricing models, or complex proration rules. This approach gives you complete control over your billing logic, but you’ll also be responsible for maintaining the billing scheduler, payment retries, customer portal, and future updates.
- Choose a subscription app/plugin if you’re already committed to a generic ecommerce platform, your needs are standard, and you accept some shared data plus the app vendor’s branding and roadmap.
- Choose a native engine like Wcart if you want a white-label store or marketplace where subscriptions, memberships, dunning, proration, and the customer portal are part of one owned system, without a maintenance tax and without billing data scattered across vendors. This is the right fit for brands and marketplace operators who treat recurring revenue as core, not an add-on.
Common mistakes to avoid
- No dunning. Without retries you lose paying customers to expired cards, the cheapest churn there is to prevent.
- Storing card data yourself. Always tokenize through the gateway; raw card storage is a PCI and liability trap.
- Ignoring strong customer authentication. In regions that require it, recurring mandates must be set up correctly or renewals get declined.
- Charge-without-order on box products. If a renewal charges but doesn’t create a fulfillable order, you’ve taken money and shipped nothing.
- No self-service cancel. Hiding cancellation drives chargebacks, which hurt your gateway standing far more than the lost subscription ever would.
- Skipping the failure test. Always test a failed-then-recovered charge before launch, not just the happy path.
Frequently asked questions
Start collecting recurring revenue
If you want recurring billing that’s part of your store rather than glued on, launch your white-label store or marketplace with Wcart. Plans, trials, dunning, proration, and the customer portal are native, so you can go live with subscriptions and memberships without assembling a toolchain.
For background on the underlying concepts, see the subscription business model and PCI DSS on Wikipedia, and the official Google payments developer documentation for payment integration standards.
Related guides
- Guest checkout vs. account creation, since recurring billing always needs a customer account to manage subscriptions.
- Mobile commerce optimization, where most subscribers will manage their plans from the customer portal.
- Product schema markup for ecommerce to help your subscription products surface better in search.
- Wcart, start your white-label store or marketplace




Leave a Reply