← Back to Blog
Ecommerce

How to Sell Subscriptions on Your Online Store (Built In)

To sell subscriptions online you need four things: a plan attached to a product (cadence, price, trial), a payment gateway that can store a card for later, an automatic renewal that creates a real order each cycle, and a way to handle the cards that inevitably fail. On ShopsWired all four are part of the platform — you add plans on the product page, and renewals, dunning, and customer self-service work without installing a subscription app.

The short version: what a subscription actually requires

Merchants usually discover the hard parts of recurring billing after launch, not before. A working subscription program needs:

Miss any one of those and you get support tickets. Miss dunning and you quietly lose 5–10% of your recurring revenue every month to expired cards.

Why this usually costs extra

On most hosted platforms, subscriptions are an app rather than a feature. Shopify ships a free first-party Subscriptions app, and it works — but it's deliberately basic, and it requires a supported gateway. Merchants who need trials, prepaid terms, build-a-box, or serious dunning generally end up on a third-party app, where the typical shape is a monthly platform fee plus a percentage of subscription revenue processed. That percentage is the part that hurts: it grows exactly as your recurring revenue grows, on top of your processor's rate and any platform transaction fee.

ShopsWired takes the other approach. Subscriptions are native, there is no per-subscription or percentage-of-recurring-revenue cut, and the platform charges 0% transaction fees on every plan — you pay only your payment processor's standard rate. (We wrote more about that model in no transaction fees.)

Step 1: Connect a gateway that can vault cards

Connect one payment provider per store through a gateway plugin from the Marketplace — Stripe, Square, PayPal, and others. Each plugin supplies its own webhook setup and, for own-keys gateways, a per-shop webhook URL you paste into the provider's dashboard.

The requirement for subscriptions is card vaulting: the gateway securely stores the payment method so it can be charged later for renewals and post-trial billing. A customer can save one payment method to their account; that card bills all of their subscriptions, and it also speeds up one-off checkout. Confirm vaulting support before you build your plans around it — it's a gateway capability, not something the storefront can fake.

Step 2: Add plans to the product

Plans live on the product, not in a separate app dashboard. For each plan you set:

Plans can be scoped to specific variants, so a 12oz bag can be subscribable while the sample size isn't. Staff can also pick a plan per line when building an order by hand in the admin (useful for phone orders and quotes); charging a saved card on such an order starts the subscription, and future renewals bill that same card.

Bill everyone on the same day with billing anchors

Anniversary billing — everyone renews on the day they signed up — is the default almost everywhere, and it makes operations miserable if you ship physical goods in batches. Anchors let you bill every subscriber on the same calendar day instead: the 1st, the last day of the month, or a chosen weekday for weekly plans. Month-end handling is correct — a plan anchored to the 31st bills on the last day of a short month and returns to the 31st afterwards, so it never drifts earlier. For the gap between signup and the first anchored date, you choose: charge a full cycle up front, or charge nothing until the anchor date arrives.

When the amount isn't the same every cycle

Some businesses can't quote a fixed number. Music lessons bill four weeks one month and five the next; usage-based services vary by consumption. A plan can be set to let each renewal's amount move within limits you choose — a minimum and maximum quantity, a minimum and maximum unit price, or both — with an installed plugin supplying the actual numbers each cycle.

Two details matter here. First, the limits are what the customer agreed to when they subscribed, and editing the plan later only changes what new subscribers agree to. Second, an amount outside those limits is refused, not trimmed to fit — the renewal stops and is flagged for you rather than quietly billing a different number. Both you and the customer can see the next charge before it happens: a panel on the subscription in the admin, and a line on the customer's account page, worked out by asking the plugin the same question the charge will ask.

Step 3: Decide how failures are handled

This is the part that separates a subscription program that compounds from one that leaks. Subscriptions run through Active, Trialing, Past Due (dunning), Paused, and Cancelled. Each renewal generates a fresh order and invoice while the contract persists, and the renewal snapshots its own items and totals — so a later catalog or price change doesn't disturb existing subscribers.

Declines and hiccups are handled differently, deliberately. A genuinely declined card starts dunning and tells the customer what to fix. A temporary problem on the store's side is retried quietly on a widening schedule — no dunning emails, and it doesn't count against the customer's retry allowance. Either way the reason, attempt count, and next attempt time are recorded on the subscription and visible in the admin, and a renewal is never billed twice because an attempt was interrupted.

When a subscription can't be billed for a reason outside the customer's control — retries exhausted, or a changing amount that couldn't be worked out — it goes on a needs-review hold rather than being cancelled. Billing stops, the contract stays intact, and the admin flags it with the reason. Nobody gets cancelled over a problem they couldn't fix.

Step 4: Let customers manage it themselves

Customers manage their own subscriptions from their account — including pausing until a date — and shipping is captured at signup and re-priced when the address changes. On your side you can edit a live contract: change the billing interval, next bill date, cycle cap, and per-line quantities and prices without asking anyone to re-subscribe, with tax and shipping recalculated from the new lines and address. Every change is recorded on a History tab with who made it, when, and exactly which fields moved.

Notifications close the loop: pause, resume, and cancel raise an in-app notification deep-linked to the subscription, and owners and admins are opted in to subscription email alerts by default. Customers control what they hear about per topic — order updates, shipping notices, subscription notices, news and offers — from Account → Email Preferences.

Honest trade-offs

See the full feature reference for everything subscriptions touch — orders, customers, payments, and notifications — or compare tiers on pricing.

← Back to Blog