Appealing a Shopify Payments decision, and you sell in-game items. Migrate everything to a new Shopify store.
The decision came down by email, and the temptation is to write back immediately. Stop. Before you draft anything, you need to know what you are actually appealing — because Shopify Payments decisions split into two different categories, and only one of them can be reversed. If the decision turned on a fact — a mislabelled product, an unclear payment descriptor, a missing licence, or disputes you can now prove were fulfilled — then evidence can change the outcome. If the decision turned on your product category itself, then no reviewer has authority to except you from the processor's policy, and the appeal will fail no matter what you write. The difference matters because merchants who appeal the second kind waste weeks waiting for silence while their store runs on checkout alone, unable to plan around the real timeline. So diagnose first. Write second. Start plan B on the same day you appeal, not after.
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.
What you are looking at
- Email saying Shopify Payments cannot support your business, with no detail on which fact or category triggered the review
- Checkout still working for days or weeks after Payments deactivated, creating false hope that the problem might reverse itself
- Support responses repeating the same brief reason without elaborating on what specifically was found
- Requests to provide evidence met with 'appeal to Stripe' — passing the merchant to Shopify's processor without direct contact
- Radio silence lasting weeks after submitting an appeal, with no published timeline for a response
The checkout clock is a trap. It creates the impression you have time to appeal while payouts are actually frozen. The real deadline is the one Shopify does not advertise — when it decides whether to review your store a second time and close the whole account. That usually comes weeks in, which is why plan B must start immediately, not after the appeal fails.
Why it happened — specifically for in-game items
Stripe, the processor behind Shopify Payments, restricts virtual-world currency and items when you do not operate the virtual world yourself. Third-party trading — reselling skins, accounts, in-game currency or other virtual goods — lands on the restricted list. The secondary trigger is chargebacks. Delivery is invisible and unverifiable to a payment processor, so a buyer can dispute the transaction months later with no evidence against them. Minors using a parent's card without consent drive chargeback rates far higher than a processor will accept.
Rule out the easy fix first — then deal with the real one
Rule this out first. Shopify Payments does not document a route for third-party virtual items, and asking their support team will not change that answer. What merchants try instead is applying for a high-risk merchant account through a separate acquirer and connecting it via a payment gateway Shopify supports — Authorize.net on a high-risk MID, or PaymentCloud, Soar Payments and Easy Pay Direct. That application will reach an underwriter who specialises in digital goods, not Shopify's team. They will decline you too if your chargeback rate is already high or if you cannot prove delivery.
It only helps if all of these are true:
- Your chargeback rate must sit below the threshold your target acquirer publishes — typically 1–2%.
- You must be able to document delivery: transaction IDs, account confirmation emails, or API logs showing the item appeared in the buyer's inventory.
- You cannot resell items whose publisher terms prohibit trading — check the game's ToS before you list anything.
- Your buyer base must skew adult, or you must collect parental consent at checkout for any transaction from a cardholder under 18.
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 this means for a business like yours
💎 High average order value, so fraud and disputes cost more per event
High average order value means a single fraud or chargeback event can trigger holds or account review, and Shopify Payments applies reserve policy and dispute thresholds that do not always distinguish between isolated incidents and patterns. An appeal works if the decision rested on a specific disputed order you can prove with fulfilment evidence, shipping tracking and communication records. It fails if the review was based on your category's general chargeback profile or perceived fraud risk. Check whether the decision names a specific order or a pattern. If it names one, appeal with evidence. If it is categorical risk, prepare to migrate.
🔁 Recurring billing is a large share of revenue
A disabled Shopify Payments account stops new subscriber signups and breaks billing on existing subscribers simultaneously—because stored payment methods are held by the processor and cannot move to a new gateway without customer consent. An appeal buys you time, but it also leaves your subscriber base decaying. The honest move: appeal once in writing with evidence, and start migrating to a new processor the same day. Do not wait for a decision before you contact a gateway that accepts your category. Weeks of silence will cost you more revenue than the appeal effort saves.
What you actually have to fix
Underwriters do not change their minds because you asked. They change them because the facts changed. For in-game items, these are the facts that move the decision:
Build a chargeback documentation system before you reapply.
This is the single highest-yield fix. Underwriters will ask to see proof that you can prove delivery, and 'the buyer said they got it' does not count. You need transaction records, confirmation emails sent to the buyer's in-game account, API logs, or screenshots that show the item appeared in their inventory after purchase. Set this up now, capture it for every transaction going forward, and then pull a 90-day sample to show your next acquirer. You will also need a chargeback rate calculation: total disputes divided by transaction count, usually expressed as a percentage. If you do not have clean records, start from today.
Rewrite your terms of service to address minor cardholders explicitly.
Your merchant account underwriting will include a review of whether you verify cardholder age at purchase or collect parental consent. Write a clear policy: either you collect a parent's email and a signature (wet or digital), or you reject the sale if the cardholder appears to be under 18. This is both a compliance requirement for an acquirer and a chargeback defence — a parent who later disputes the charge has a harder claim if they consented in writing. Make the policy visible at checkout and store proof of consent with every transaction.
Audit the game publisher terms you are reselling under.
Check the official terms of service for every game whose items you sell. Many prohibit third-party trading or require explicit permission. If you cannot find the terms, or they forbid resale, stop listing those items immediately. An acquirer will ask to see the relevant ToS, and if it prohibits what you are doing, you will be declined or terminated. Even if you are approved, the game publisher could take action against your buyer accounts, which will destroy your reputation and your chargeback rate.
Request a chargeback rate baseline from your current processor or bank.
Contact Shopify Payments support and ask for your dispute rate, or ask your bank for a 90-day chargeback statement. You need to know the real number before you apply elsewhere, because an acquirer will pull it from the card networks and will decline you if you are already over their threshold. If you do not have this data, you will waste time and rejection fees applying blind.
What underwriting will ask you for
- Chargeback analysis: a 90-day history showing your dispute rate, the reasons given (item not received, unauthorised, buyer remorse) and how many you won on appeal.
- Proof of delivery method: screenshots or API documentation showing how you confirm the item reached the buyer and appears in their account.
- Samples of your product listings and the game publisher terms of service that govern resale of those items.
- Processor statements from any previous merchant account, showing volumes and any reserves or rate increases.
- Your refund and dispute handling policy, in writing, and evidence you have enforced it.
- Business registration and beneficial owner information.
- Bank statements covering the last three months.
Getting underwritten for in-game items
High-risk acquiring is an entire industry that exists for businesses Stripe declines, and several of them publicly underwrite in-game items. 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 in-game items
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.
The recovery playbook
- Identify whether the decision turned on a fact or a categoryRead the email carefully. It will say something like 'cannot support' or 'incompatible with our policies'. The next step depends on which it is. If the decision mentioned a specific product, descriptor, licence, or type of dispute, then it may be a fact problem — and facts can change. If it mentioned your business type, industry, or product category as the reason, then no reviewer has authority to except you. Calling Shopify support at this stage usually produces the same email language again, so focus on diagnosis first.
- Gather the evidence for one written appeal — and do it todayThis is the step with a deadline you do not control. Do not wait for the appeal result. Do not assume checkout will keep working while you appeal. Collect the specific evidence that addresses the decision: corrected product screenshots, updated payment descriptors, licence documents, fulfilment records, customer consent, delivery proof. File them all in one place so you can reference them in writing. Set a deadline for the appeal to arrive with Shopify within 48 hours — not because speed guarantees anything, but because waiting is a sunk cost that keeps you from building plan B.
- Appeal once in writing, with only the evidence that counters the decisionWrite directly to the email address that notified you. Be specific: 'You cited [reason]. Here is the evidence that [corrected fact].' Attach or link the documents. Do not argue that the decision is unfair, do not ask for another review, do not promise future compliance. Processors see hundreds of these, and generic appeals are routed as low-priority. You are simply putting the fact on record. If the decision was based on a category prohibition rather than a fact, say so in your diagnostic email to yourself and move on.
- Start plan B the same day: migrate to an accepting gatewayDo not treat the appeal as your plan. Treat it as something you put in motion and then ignore while building what actually survives. A new store on a different payment processor — built into a fresh Shopify domain or migrated into one — with a provider that underwrites your category is the real recovery. The migration takes days, costs a fixed price, and runs in parallel to your appeal. Many merchants never hear back from the appeal. Those who moved the same week have zero downtime in the one business metric that matters: can they take payment.
- If the appeal succeeds, shut down the new store or keep it running dual-processorSuccess is rare and usually takes weeks. If it comes, you will be notified that Shopify Payments is re-enabled. At that point you have a choice: move back to Payments and deactivate the other gateway, keep both running, or stay on the new processor. Dual processing costs more but insures against a second deactivation. Many merchants who have been through this once choose to stay dual, or to stay with the accepting gateway entirely, because the reputational cost of promising customers they can take payment and then freezing is higher than the processing fee difference. That is a business call you make once you are not in crisis mode.
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
An in-game items store's data is dangerous to move by hand because delivery proof lives in custom metafields. Account usernames, character names, server IDs, item IDs and confirmation hashes are all stored as reference or text metafields that a CSV export cannot carry intact — and if you copy them naively they break or point to the old store's records. On a chargeback-sensitive category, silent data loss on the product page means you lose your proof of what you promised the buyer, which will cost you disputes.
| What you own | How much of it | What breaks doing it by hand | What we do instead |
|---|---|---|---|
| Product images | 3,400images≈ 14 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 | 850descriptions≈ 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 | 2,550variants≈ 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 | 6,800metafields≈ 45 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 | 990records≈ 3 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 | 12,000customers≈ 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 | 18,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 | 45discounts≈ 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 | 20articles & pages≈ 1 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 | 10apps≈ 10 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
The figures above are a typical store in your category. The demo scan connects read-only to yours and counts the real thing — every product, variant, image, customer, order and metafield — then tells you exactly what a migration would carry across. No card, and it never writes to your store.
▶ Run the free demo scanDoes this need a new company?
You do not need a new legal entity to sell virtual items — the category risk is behavioural, not structural. A new company will not reset a MATCH listing, which follows the person or beneficial owner for five years. If you have been declined or terminated before, a fresh entity solves nothing. Focus on the delivery proof and chargeback documentation instead.
Frequently asked
Which payment gateways work for virtual items?
Shopify Payments will not touch it, so you need a separate merchant account from an acquirer that specialises in high-risk digital goods. Authorize.net, PaymentCloud, Soar Payments and Easy Pay Direct all publicly advertise this category. Your gateway is the easy part — the hard part is the merchant account itself, because the underwriter will ask for chargeback documentation and proof of delivery before they approve you. Rather than apply cold, use a quote form or broker who can match you to an acquirer whose threshold matches your actual rate.
What reserve should I expect?
Most acquirers in this category hold 10–25% of your revenue in a rolling reserve, often for 180 days or more. That means if you process $10,000 in a month, $1,000 to $2,500 sits in the reserve account and does not reach you for six months. Plan your cash flow around this. Some acquirers offer faster releases if your chargeback rate stays low, but you will not see that negotiation until after you are approved.
Will my delivery records survive a store move?
No — not if they are stored in metafields and you move by hand. A CSV export cannot carry metafield values, so if you copy your products naively, the account names, item IDs and confirmation hashes all go missing. You will have no proof of what you promised the buyer, which makes chargebacks impossible to defend. A programmatic migration reads those fields through the API and rebuilds them in the new store, so they stay intact. That is the only safe way to move an items store.
What if a buyer says they did not receive the item?
You are liable unless you can prove delivery. Your chargeback defence is the documentation you captured at the time — a screenshot showing the item in their account, an API log, a confirmation email to their in-game username, or a transaction ID from the game's trading system. If you do not have that record, you will lose the dispute and the charge will be reversed. Set up proof-of-delivery logging now, before you reapply for processing.
Can Shopify Payments be turned back on if I appeal?
Only if the decision was based on a fact — a mislabelled product, unclear descriptor, missing licence, or disputed orders you can now prove were fulfilled. If the decision turned on your category being on the processor's prohibited list, then no reviewer has authority to make an exception, and the appeal will not change it. The decision tells you which it is if you read it carefully.
How long does an appeal take?
There is no published SLA. Merchants commonly report anywhere from a few weeks to no response at all. Some receive a yes or no answer; others receive the same generic reason again without elaboration. The lack of transparency is why you should not wait for the result before building a backup plan. Filing the appeal and then moving to a different processor in parallel is the only timeline you control.
What evidence actually works in an appeal?
Evidence that addresses the specific decision, not the general principle. If you were rejected for mislabelled product names, show the corrected listings. If for unclear payment descriptors, show what the new descriptor is. If for missing licences, provide the document. If for disputed orders, provide proof of fulfilment — tracking, delivery signature, or customer communication proving the goods were as described. Generic promises to comply do not work because the processor's decision was based on documented risk, not intent.
What if Shopify Payments is re-enabled but then disabled again?
This pattern is common. Merchants report being re-enabled, trading for a few weeks, and then receiving a second deactivation notice. If this happens to you, the underlying decision was likely not actually overturned — it was suspended pending more observation. This is why having a backup payment processor in place before the first appeal is worth the setup cost. You are no longer betting the business on a single gateway.
If I move to a different processor, do I have to close my Shopify store?
No. Your store stays live. You simply connect a different gateway for payments — Stripe, Square, PayPal, Braintree, or another processor that underwrites your category. The store itself, your catalog, your customers, and your orders are unaffected. If your new processor later deactivates you as well, migration to a third processor is the same move again. The goal is to find a gateway whose underwriting actually fits your business model and stick with it.
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. How the migration runs, step by step →