Selling subscription boxes on Shopify. Payments is the hard part.
Recurring charges create chargebacks when customers forget their subscription or struggle to cancel. That billing-model risk is what cuts off subscription box merchants, not the category itself.
Move all of it into a new store, from $247
One-time packages, no per-record metering, no quotes. The order form unlocks the moment you pay, counts are matched against your old store, and the entire migration then runs a second time — the second pass has to create nothing.
And then there is the part that actually loses businesses
If you do need a new store, the payments problem turns out to be the easy half. This is what is sitting in your current store right now, and what happens to each piece when someone tries to move it by hand:
Why this category in particular
A subscription box store's data is dangerous to move by hand for one specific reason: the subscription records themselves live outside the product catalog. Customer subscription cycles, billing dates, pause states, renewal schedules and linked payment methods are not stored in products, variants or metafields — they live in a subscription app's database. If you migrate the store without migrating the subscription engine, every customer's next renewal will fail because their payment method will not carry over, and you will generate a wave of involuntary chargebacks and payment failures. The catalog moves cleanly; the billing does not.
| What you own | How much of it | What breaks doing it by hand | What we do instead |
|---|---|---|---|
| Product images | 960images≈ 4 hrsbulk re-upload, ~15 sec each | By handthe CSV carries image URLs and alt text, but they point at your OLD store's CDN — so the moment the old store goes, every image 404s. Re-upload and Shopify appends a dedupe suffix to the filename, which breaks every theme section and product description that referenced the original URL | Automatedevery file re-uploaded through the API with its alt text and variant attachment intact, its content type preserved so image-restricted fields still accept it, and every reference to the old URL rewritten |
| Product descriptions | 120descriptions≈ 2 hrsone pass to repair inline image links — the CSV carries the text | By handdescriptions are full of inline images and links pointing at the old store's CDN. Paste them into the new store and the text survives perfectly while every embedded image quietly dies — which you usually discover from a customer, not from a report | Automatedbodies copied verbatim, then a second pass rewrites every source-CDN URL inside them to the re-uploaded file on the new store |
| Product attributes & variants | 360variants≈ 45 minthe CSV carries these; the time is verifying option order | By handoption ORDER is part of the product's identity. Rebuild "Size, Colour" as "Colour, Size" and every theme swatch, saved customer URL and app that keys on variant position breaks — silently, because the product page still renders | Automatedvariants upserted by SKU with option names and order preserved, so swatches, deep links and app data keep working |
| Metafields & metaobjects | 960metafields≈ 6 hrsonly the reference, JSON and metaobject fields, ~1 min each | By handthe product CSV carries simple text and number metafields — but not metaobjects, and not reference or JSON types, which is exactly where app data and theme content live. Reference fields are the real trap: copy the value and it still points at objects in the OLD store, so the page renders and the custom block is silently empty | Automatedwritten in dependency order after their targets exist, with embedded references re-pointed at the new store's objects — and any value whose reference cannot be resolved is dropped rather than written broken |
| SEO data & redirects | 236records≈ 2 hrsredirects one at a time, plus a handle audit | By handany handle that changes becomes a dead URL with no redirect, and existing 301s are not in the product CSV at all. Years of accumulated ranking and backlinks end up pointing at pages that no longer resolve — the most expensive thing on this page to get wrong, and the slowest to notice | AutomatedSEO titles, meta descriptions and handles carried across, and every existing 301 recreated, so nothing that used to rank starts 404ing |
| Your custom theme | 1theme≈ 6 hrs2–10 hrs depending on how customised it is | By handa theme is not just its files. The settings, section content and block ordering are stored against the store, so a file copy gives you the layout and none of the content. Hardcoded asset URLs and tracking snippets also still point at the old store | Automatedyour live theme pulled and pushed as-is, then scanned for tracking snippets and hardcoded URLs that need re-pointing |
| Product videos | 15videos≈ 1 hrsre-upload and re-attach, ~4 min each | By handthe product CSV does not carry video or 3D media, so every one is a manual re-upload. They also cannot be pulled straight from a remote URL — the bytes have to be downloaded and staged first, and a wrong content type lands the file as a generic attachment that media-restricted fields then reject | Automatedvideo bytes downloaded, staged through a proper upload target, re-attached to the right product, and verified as processed rather than silently failed |
| Customers | 8,500customers≈ 2 hrsCSV import, then cleaning up the rows that fail | By handthe importer works, but marketing consent is the exposure: the CSV carries the current opt-in state and NOT the timestamp or source behind it. Re-opting someone in is a compliance breach, dropping them burns list revenue you paid for, and you cannot prove which happened afterwards. Default-address designation is also lost | Automatedcustomers upserted by email with every address, the default-address designation, and email and SMS consent states and timestamps preserved exactly as they were |
| Order history | 42,000orders≈ 8 hrsa paid third-party importer, plus a day of mapping and reconciliation | By handShopify's own CSV importer cannot create orders at all, so the hours here assume you buy a third-party importer — key them in by hand instead and 9,400 orders is closer to 390 hours, which is why nobody does that and why order history is simply abandoned in most DIY moves. Then support cannot answer a warranty claim, repeat-purchase segments are empty, and every returning-customer flow starts from zero. Getting the mapping wrong duplicates orders or re-dates them to today, and both are worse than not importing at all | Automatedfull order history recreated through the API with line items, properties, customers re-associated, original dates and tracking numbers intact |
| Navigation menus | 3menus≈ 1 hrsabout an hour to rebuild and relink them all by hand | By handmenu items store resource IDs, not paths, so nothing about them is portable — every link has to be re-pointed at the equivalent collection, page or product on the new store | Automatedmenus rebuilt with their nesting, and every item re-pointed at the equivalent object on the new store |
| Discount codes | 18discounts≈ 1 hrsabout 1 hr via the discount CSV, or ~3 hrs rebuilt by hand | By handthe discount CSV covers basic codes, but automatic discounts, quantity breaks and combination rules are not in it and have to be reconstructed by hand. A subtly wrong rule is worse than a missing one, because nobody notices until it has been over-discounting for a fortnight | Automateddiscounts recreated through the API with their rules, usage limits and dates intact, including automatic and free-shipping types |
| Blogs & pages | 36articles & pages≈ 2 hrsrecreated one at a time, ~4 min each | By handno CSV route for either. Articles also have no SEO fields of their own — their title and description tags live in metafields — so a hand-rebuilt blog loses its SEO even when every word of the text is right | Automatedarticles and pages recreated with authors, tags and publish dates, their SEO written to the metafields Shopify actually stores it in, and inline image URLs rewritten |
| Apps & app data | 12apps≈ 12 hrsabout 1 hr per app to reinstall, reconfigure and re-test | By handmost app data lives in metafields on your products and customers, so reinstalling the app gets you an empty app: reviews gone, subscription plans gone, loyalty balances gone, bundles gone. Flows and automations have to be rebuilt by hand and re-tested, and anything with its own billing has to be re-subscribed | Automatedthe metafield data your apps rely on migrates with the products and customers it hangs off, so a reinstalled app finds its data waiting instead of an empty store |
See these numbers for YOUR store, free
Those are typical figures for this category. The read-only scan counts what is actually in your store, so you know the real scale before you decide anything. No card, and it works even if your storefront is already offline.
▶ Run the free demo scanWhy it happened — specifically for subscription boxes
You are not flagged for selling subscription boxes. You are flagged for the dispute rate on recurring charges. Stripe and the card networks treat negative-option and hard-to-cancel billing flows as a compliance liability. The primary trigger is a chargeback rate that climbs above what the processor will tolerate — typically disputes marked "I did not authorise this" or "I could not cancel". The secondary trigger is FTC click-to-cancel compliance: if your cancellation flow is not frictionless, the processor flags it during underwriting and may decline you before you process a single charge.
Rule out the easy fix first — then deal with the real one
Rule this out first: Shopify does not document a subscription-box-specific route, and Stripe's underwriting will scrutinise your cancellation flow as a condition of approval. What most merchants try is to apply to Shopify Payments and hope the underwriting team approves the billing model. That fails because the underwriting team cannot approve something the processor itself treats as high-risk. Your actual path is to apply to an acquiring bank or high-risk specialist that publicly takes subscription merchants and has appetite for your chargeback rate. Shopify Payments cannot override a processor's category decision.
It only helps if all of these are true:
- Your chargeback rate must be below the processor's threshold — typically under 1% of transaction volume.
- Your cancellation page must be immediately accessible, no password required, and take effect within one billing cycle.
- You must display your subscription terms, billing frequency and cancellation policy before the first charge, in plain language.
- You cannot use dark patterns, negative options, or pre-ticked renewals that require opt-in rather than opt-out.
If any one of them does not hold, you are where everyone else on this page is: you need a store built around a gateway that will actually accept you — and everything you have built has to move into it without losing the catalog, the customers, the order history or the rankings.
What you actually have to fix
Underwriters do not change their minds because you asked. They change them because the facts changed. For subscription boxes, these are the facts that move the decision:
Make cancellation a one-click action on your account dashboard.
This is the single highest-yield fix. A customer must be able to cancel their subscription with no more steps than it took to buy it. If they must email support, call a number, or fill a form, you will fail underwriting and you will accumulate disputes. Build a cancellation button into the customer portal that terminates the subscription immediately and sends a confirmation email. Do not require a reason, do not offer a pause option as a friction point, and do not charge a final fee. Test the flow yourself as a customer — if it takes more than two clicks, it is too slow.
Document your chargeback handling and dispute response process.
Processors review not just your chargeback rate but how you respond to disputes. Write down your dispute-response SLA, who handles them, and what you do to prevent repeats — for example, confirming renewal charges by email 7 days before they post. Underwriters want to see that you have a system, not just a number. Include templates of your pre-charge and cancellation confirmation emails, and proof that you send them. A merchant who processes 100 chargebacks but responds to every one systematically is often lower risk than a merchant who has 10 chargebacks and no process.
Pull 12 months of transaction and dispute data in a clean spreadsheet.
Your acquiring bank or specialist processor will ask for this. You need monthly volumes of transactions, chargebacks, refunds and reversals, with reason codes for every chargeback. If you are currently processing with another provider, export your history before applying — most banks want to see the data before they move you. If your rate is above the processor's threshold, do not apply yet; work on it first. If you cannot pull the data, you cannot prove you are a candidate.
Audit your product pages and checkout for negative-option language.
Review every place a customer sees the word 'subscription' or 'recurring' before they buy. You cannot hide the billing model in fine print or bury the frequency on a separate page. The cancellation policy must be stated at the point of purchase in plain language, not linked to a terms page. Check that your email receipts clearly show the subscription terms and the next billing date. If you offer a trial, state that it converts to a paid subscription and the exact date it will charge. Underwriters will read your checkout flow as a customer would.
What underwriting will ask you for
- Cancellation policy document showing exact process and timing — this is the document acquirers request first for your category.
- Screenshot of your live cancellation page showing the flow from login through confirmation.
- Chargeback and dispute history for the last 12 months, broken down by reason code.
- Processing statements from your current or previous processor showing monthly transaction and chargeback volumes.
- Product descriptions and subscription terms as they appear to customers at checkout.
- Copy of your privacy policy and billing terms.
- Proof of FTC compliance training or a signed attestation that your flow meets click-to-cancel standards.
Getting underwritten for subscription boxes
High-risk acquiring is an entire industry that exists for businesses Stripe declines, and several of them publicly underwrite subscription boxes. What none of them will tell you up front is the number that actually matters: what your business gets offered, once they have seen your volume, your claims and your history. Rate, reserve and settlement terms vary enormously between applicants in the same category.
Get real quotes from high-risk processors that accept subscription boxes
Six taps and three details. We put it in front of the high-risk acquirers that actually underwrite your category and come back with what they will offer you — rate, reserve and settlement terms — so you are comparing real numbers instead of cold-emailing brokers for a fortnight.
New company, new merchant account — the honest version
You do not need a new legal entity to accept subscription payments. The risk is your billing model and your dispute rate, both of which follow you to a new entity — a MATCH listing follows the person for five years, and opening a new company does not reset it. If you have a dispute history with your current processor, the new processor will see it during underwriting under your social security number or tax ID. The leverage you have is demonstrating that you have fixed the cancellation flow and the chargeback rate, not hiding it behind a new legal structure.
What a MATCH listing actually is
- A listing lasts five years from the date it is added, then ages off automatically. There is no performance-based early release.
- It lists the principals — name, tax ID, address — as well as the business, which is exactly why a new company with the same owners is not a fresh start.
- Only the acquirer that listed you can remove it, and only in two situations: the listing was made in error, or the reason code was PCI non-compliance and you have since become compliant.
- Reason codes are specific and they matter: excessive chargebacks reads very differently to an underwriter than laundering or illegal transactions.
- It is not a card-network ban. High-risk acquirers knowingly board MATCH-listed merchants — at worse rates, with larger reserves, and with volume caps.
- You are entitled to ask the terminating acquirer whether you were listed and under which code. Do that before you apply anywhere else, because you will be asked.
What a new merchant account requires
The entity
Formation documents, EIN or company number, and a business bank account in the company's name with a voided cheque or statement.
The people
Government ID and personal details for every beneficial owner. Underwriting is done on the humans as well as the company — which is why a new company with the same owners does not present as a new applicant.
The history
Three to six months of processing statements if you have any, plus bank statements. A prior termination is disclosed here. Concealing it is the fraud, not the termination.
The website
A live, compliant storefront: clear billing descriptor, contact details, terms, refund and shipping policies, SSL, working checkout, and no claims that contradict your category.
The product
Supplier agreements, certificates of analysis for anything ingestible, licences for anything regulated, and evidence of how you fulfil.
The numbers
Expected monthly volume, average order value and your chargeback history. Understating volume to get approved is a fast route to a frozen account.
A MATCH screen
Run against both the business and its principals. This is the step that decides the application, and there is no way around it — only through it, by disclosing and finding an acquirer who underwrites anyway.
If you do need a new entity, these are the routes people actually use
Costs and timelines below are indicative and go out of date — treat them as a starting point, not a quote.
Wyoming is the default for an ecommerce LLC: ~$100 to file, ~$60/yr to maintain, no state income tax and strong owner privacy. Delaware is the investor standard and costs $300/yr in LLC franchise tax for governing law most DTC stores will never rely on. If you are not raising money, Wyoming is almost always the right answer.
Move everything for a fixed price
One-time packages — no per-record metering, no quotes. The migration order form unlocks the moment you pay, and the whole migration re-runs a second time before any cutover.
How the migration runs
- Book & pay — fixed price, secure Stripe checkout. The order form unlocks immediately after payment.
- Submit your stores — domains and details in the order form; then provide revocable API tokens in your customer area (we never ask for your Shopify password).
- We migrate everything — your live store keeps selling throughout; it is only ever read from.
- Verified twice — the entire migration re-runs and must change nothing; you get the count-matched verification report before any cutover.
See exactly what would move — before you spend anything
The demo scan connects read-only to your current store and counts every product, variant, image, customer, order and metafield in it, then tells you what a migration would carry across. It never writes to your store, and it works even if your storefront is already offline.
▶ Run the free demo scanIf it has already happened
Whatever Shopify has actually done — disabled the gateway, opened a review, frozen your payouts, closed the store — the recovery differs. Find the one that matches your notice:
Shopify Payments Disabled for a Subscription Box? How to Recover
Shopify Payments disabled — what it means specifically for subscription boxes.
Shopify Payments Account Under Review for a Subscription Box? How to…
Account under review — what it means specifically for subscription boxes.
Shopify Payments Not Available for a Subscription Box? How to Recover
Application rejected — what it means specifically for subscription boxes.
High Chargeback Rate Warning for a Subscription Box? How to Recover
High chargeback rate — what it means specifically for subscription boxes.
High-Risk Payment Gateway for Shopify for a Subscription Box? How to…
Finding a high-risk payment gateway — what it means specifically for subscription boxes.
Migrate a Shopify Store to a New Account for a Subscription Box? How…
Migrating to a new Shopify store — what it means specifically for subscription boxes.
New Company for a New Merchant Account for a Subscription Box? How…
New company, new merchant account — what it means specifically for subscription boxes.
Shopify Payouts on Hold for a Subscription Box? How to Recover
Payouts on hold — what it means specifically for subscription boxes.
Shopify Payments Prohibited Business for a Subscription Box? How to…
Prohibited business type — what it means specifically for subscription boxes.
Shopify Payments Terminated for a Subscription Box? How to Recover
Shopify Payments terminated — what it means specifically for subscription boxes.
Shopify Store Suspended for a Subscription Box? How to Recover
Shopify store suspended — what it means specifically for subscription boxes.
Shopify Payments Rolling Reserve for a Subscription Box? How to…
Rolling reserve imposed — what it means specifically for subscription boxes.
How to Reactivate Shopify Payments for a Subscription Box? How to…
Appealing a Shopify Payments decision — what it means specifically for subscription boxes.
Frequently asked
Which payment gateway should I use for subscription boxes?
The gateway itself is rarely the problem — Shopify supports many that work with subscriptions. The bottleneck is the merchant account behind it. You need a processor or acquiring bank that explicitly underwriters subscription merchants and has appetite for your dispute rate. Several high-risk specialists publicly advertise subscription support. Rather than apply cold to Shopify Payments, apply to one of them with your 12-month chargeback data, your cancellation policy, and proof that you have reduced your dispute rate. Stripe and most mainstream processors treat subscription billing as high-risk review even when it is allowed.
How much of my revenue will be held in reserve?
For subscription merchants, reserves typically start at 0–5% of monthly volume and are held for 90 days rolling. This means if you process £10,000 in subscriptions in a month, the processor may hold £0–£500 of that for three months. The actual percentage depends on your chargeback rate, your processing history, and the processor's appetite for your category. New subscription merchants often see the higher end of that range until they prove six months of low-dispute history.
Do I need to reissue all my gift cards if I switch processors?
Gift card codes cannot be read or migrated through any Shopify API, so if you use Shopify's gift card product, the codes are stored in your current store and cannot be exported. You will need to reissue any active gift cards to your customers as credits or new codes in the new store. This is not a processor question — it is a Shopify platform limitation. For a subscription box store, this is rarely a major issue because gift card codes are usually single-use, not recurring.
Will my customer subscription data move to the new store?
No. Your customer records, order history and email addresses will migrate, but not their active subscriptions. Those live in your subscription app's database and cannot be exported through Shopify's standard data APIs. You will need to contact your subscription app provider to export the list of active subscribers, their next billing dates, and their stored payment methods. Then you will manually re-enrol them in your new store, which is why this migration is time-consuming. Your new processor will see the transition as a spike in new signups, so flag this to their underwriting team before you move.
Move everything, verified twice, from $247
Pick a package and the migration order form unlocks immediately. Your existing store is only ever read from — we never write to it, so nothing you still have can be made worse.