Shopify Subscription Payments: How Billing Works
Shopify subscription payments work through three layers: selling plans (the offer a customer sees at checkout), subscription contracts (the agreement stored in Shopify that tracks what to charge and when), and billing cycles (the recurring schedule that triggers each charge). Understanding how these connect helps you troubleshoot failed payments, configure your app correctly, and keep recurring revenue flowing.
This guide covers the full payment lifecycle from first checkout to recurring billing, failed payments, automatic card updates, and taxes. For official documentation, see Shopify's subscription reference (https://help.shopify.com/en/manual/products/purchase-options/subscriptions).
Selling plans: what the customer sees
A selling plan is the subscription offer displayed on a product page. It defines the billing frequency (every 2 weeks, monthly, every 60 days), the discount off the one-time price (if any), and whether the subscription is pay-as-you-go or prepaid. When a customer selects a selling plan and completes checkout, Shopify creates a subscription contract.
Selling plans are created by your subscription app (SubZwallet, Recharge, Appstle) through Shopify's Selling Plans API. You assign them to individual products or product groups. A single product can have multiple selling plans, for example monthly at 10% off and quarterly at 15% off.
Subscription contracts: the billing agreement
A subscription contract is the record Shopify stores when a customer subscribes. It contains the customer ID, product and variant, selling plan, billing and shipping addresses, payment method token, and next billing date. Contracts live at the Shopify platform level, not inside individual apps, which means your subscriber data persists even if you switch subscription apps later.
The contract is the source of truth for every billing event. When a customer updates their address in the portal, the contract updates. When a card is refreshed via automatic card update, the contract reflects it. Your subscription app reads and writes to this contract on every billing cycle.
Billing cycles: when charges happen
A billing cycle is one period in a subscription. For a monthly plan, each cycle is roughly 30 days. At the start of each cycle, the subscription app tells Shopify to create a billing attempt. Shopify charges the payment method on file and, if successful, creates an order in your store.
The billing date is calculated from the contract's anchor date (usually the original signup date). If a customer subscribed on March 5, their monthly billing dates are approximately April 5, May 5, and so on. Some apps let you align all subscribers to a fixed billing date (e.g., the 1st of every month) for simpler fulfillment planning.
Payment gateways and Shopify Payments
Shopify Payments is the recommended gateway for subscriptions because it supports automatic card updates and charges no additional transaction fees. Visa Account Updater and Mastercard Automatic Billing Updater silently refresh expired or replaced card details on active subscription contracts before the next charge.
Third-party gateways (standalone Stripe, PayPal, Authorize.net) can process subscription payments but you lose automatic card updates and pay an extra 0.5-2% per transaction. For most subscription merchants, Shopify Payments is the clear default.
What happens when a payment fails
When a billing attempt fails (insufficient funds, expired card, bank decline), the subscription contract enters a failed billing state. What happens next depends entirely on your dunning configuration. Without dunning, the subscription may cancel automatically after a waiting period. With dunning, the system retries the charge on a schedule and notifies the customer.
A standard dunning flow retries on day 1, day 3, day 5, day 7, and day 10. Each retry sends the customer an email with a direct link to update their payment method. Retrying too aggressively (every day) can trigger fraud flags at the bank. Retrying too slowly (once a week) means longer gaps without revenue. SubZwallet automates this entire recovery process and recovers 30-50% of otherwise lost charges.
Automatic card updates
Visa Account Updater and Mastercard Automatic Billing Updater are network-level services that push new card details to merchants when a card is replaced. On Shopify Payments, this happens automatically for subscription contracts. The customer never has to lift a finger.
Industry data shows 20-40% of subscription cancellations come from payment failures. Automatic card updates eliminate the subset caused by expired or reissued cards. Combined with dunning for other failure reasons (insufficient funds, bank blocks), you can recover 50-70% of all failed payments.
Taxes on subscription orders
Shopify calculates tax on each subscription renewal based on the customer's shipping address, your store's tax settings, and current tax rates. Tax is computed at the time of each billing cycle, not locked in at signup. If rates change between renewals or the customer moves, the tax adjusts automatically.
For merchants selling in multiple states or countries, Shopify Tax handles sales tax calculation and remittance reporting. Subscription orders appear in your Shopify Tax reports alongside one-time orders. No separate tax configuration is needed for subscriptions.
Prepaid vs. pay-as-you-go subscriptions
Pay-as-you-go subscriptions charge the customer at the start of each billing cycle. Prepaid subscriptions charge upfront for multiple cycles (e.g., pay for 3 months and receive 3 deliveries). Prepaid reduces churn because the customer has already committed financially, and it improves cash flow by collecting revenue upfront.
Shopify supports both through selling plans. Your subscription app configures whether a plan is pay-as-you-go or prepaid, and Shopify handles the billing accordingly. Not all apps support prepaid, so confirm this before choosing your app if prepaid subscriptions are part of your strategy.
How to monitor subscription payment health
Track three numbers to understand payment performance: successful billing rate (percentage of charges that succeed on the first attempt), payment recovery rate (percentage of failed payments eventually recovered through dunning), and involuntary churn rate (subscribers lost to unrecovered payment failures). A healthy store runs a 95%+ first-attempt success rate, 50-70% recovery rate on failures, and involuntary churn under 2% per month.
Frequently Asked Questions
- How does Shopify charge for subscriptions?
- Shopify uses subscription contracts to store billing agreements and triggers charges at each billing cycle through your subscription app. Payment is processed by Shopify Payments or your configured gateway.
- What happens when a subscription payment fails on Shopify?
- The contract enters a failed billing state. Your app retries the charge per your dunning settings (typically 3-5 attempts over 10-14 days) and notifies the customer to update their payment method.
- Does Shopify automatically update expired cards for subscriptions?
- Yes, if you use Shopify Payments. Visa and Mastercard network services push new card details when a card is replaced, preventing many failed payments automatically.