iOS web checkout refunds come to you instead of Apple, and so do the bank disputes
US iPhone apps can now link buyers to a web checkout. Apple says it can't help with refunds on those sales, so the refund desk, the chargebacks and the $15 dispute fees move to you. Here's what changes, what it costs, and how to keep disputes down.

Key takeaways
- Apple's App Review Guidelines no longer require an entitlement for buttons, external links or other calls to action to outside purchase methods in apps on the United States storefront.
- Apple's support article on purchases not billed through the App Store says Apple can't assist with refunds, purchase history or subscription management for them, and tells customers to contact the developer.
- iOS web checkout refunds are issued by the developer through its own payment processor. Apple's Report a Problem page, Family Sharing and Ask to Buy don't cover those purchases.
- On Stripe, a card dispute debits the disputed amount plus a $15 dispute fee in the US, and that fee isn't returned even if the developer wins. Countering a dispute filed after June 17, 2025 adds another $15, returned only on a win.
- Stripe says it doesn't return the processing fees from the original charge when a developer refunds a payment.
- Card networks typically let cardholders dispute a payment within 120 days, and the developer usually has 7 to 21 days to respond with evidence. Apple's CONSUMPTION_REQUEST gives 12 hours, but Apple decides the refund.
- Whether Apple may charge a commission on linked-out US purchases is before the US Supreme Court in Apple v. Epic, No. 25-1311. Who handles the refunds on those sales doesn't depend on that answer.
Every refund on a sale your US iPhone app sends to a web checkout is now your job, not Apple's. Apple's guidelines let apps on the United States storefront link to outside purchase methods without an entitlement, and the cheaper web payment route is open to any US app that adds a link. The refund desk came with it. Apple's own support article says it can't help with refunds for purchases it didn't bill, and sends those customers to you. If the customer goes to their bank instead, the dispute lands on your payment processor, with a fee attached, whatever the outcome. That's the trade behind iOS web checkout refunds, and it's worth pricing before the first one arrives.
What Apple's rules say about linking to web checkout
Guideline 3.1.1(a) of Apple's App Review Guidelines says the StoreKit link entitlements are not required for developers to include buttons, external links or other calls to action in their United States storefront apps. In every other storefront without a specific entitlement, those calls to action are still prohibited. Guideline 3.1.1 still says that if you want to unlock features or functionality within your app, you must use in-app purchase. So a US app typically offers both. The customer can buy inside the app through Apple, or tap out and pay you on the web.
That split matters for refunds. One customer can hold an Apple purchase and a web purchase on the same account, and each one is refunded through a different system with different rules.
Who is still arguing about the commission
The fee on linked-out sales is still in court. The Ninth Circuit decided Apple's appeal of the contempt ruling on December 11, 2025, and the Supreme Court agreed on June 30, 2026 to hear Apple v. Epic Games, No. 25-1311. Apple filed its merits brief on September 14, 2026, and Epic's is due November 13, 2026. However that case ends, it decides what Apple may charge on these sales. It doesn't move the refunds back to Apple.
Who handles refunds on iOS web checkout
Apple's support article on purchases not billed through the App Store or Apple In-App Purchase is direct. Apple says it's unable to provide support for these purchases, including refunds, purchase history, and subscription cancellation and management. It lists App Store apps that use external purchases among them, and tells customers to contact the developer for billing support or a refund. The same article notes these purchases don't get App Store features such as Report a Problem, Family Sharing, subscription management and Ask to Buy.
| Refund question | In-app purchase through Apple | Web checkout through your processor (Stripe shown) |
|---|---|---|
| Who decides a refund request | Apple | You |
| Where the customer asks | reportaproblem.apple.com | Your support channel. Apple sends them to you |
| Evidence flow | CONSUMPTION_REQUEST, answer within 12 hours, Apple decides | Bank dispute, usually 7 to 21 days to respond, the card issuer decides |
| Time a customer has to dispute | Set by Apple, not by you | Typically 120 days from payment, sometimes longer |
| Fee when the customer disputes | No processor fee. Apple runs the process | $15 dispute fee in the US, not returned even if you win |
| Processing fees on a refund | Not your processor's | Not returned by Stripe |
| Server signal | App Store Server Notifications, such as REFUND | Processor webhooks, such as charge.refunded and refund.created |
| Family Sharing and Ask to Buy | Available | Not available, per Apple |
Can a customer still ask Apple for a refund on a web purchase?
They can try, but Apple's article says it can't help and points them to you. The purchase won't appear in Report a Problem, because Apple didn't bill it. That's the moment that matters. A customer who can't find you next is a customer who calls their bank.
What changes when you decide the refund yourself
You get something Apple never gave you: the final say. On an in-app purchase, you can send consumption data, but Apple makes the call. On a web sale, you can refund in full, refund part, offer a credit, or decline. You also carry what comes with that. You need a written policy, a contact the customer can actually find, and someone who answers within days, not weeks.
What a disputed web checkout sale costs in money
Here's how Stripe documents a card dispute. The moment it's filed, Stripe debits the disputed amount plus a dispute fee from your balance and holds the funds for the whole case. In the US that fee is $15, and outside Mexico it isn't returned, win or lose. If you counter a dispute filed after June 17, 2025, a second $15 countered fee applies, and Stripe returns that one only if you win. The full process can take 2 to 3 months, and the card issuer's decision is final.
Take an illustrative case: a $9.99 monthly plan sold through web checkout, where the user has already run up paid AI generations and cloud storage before disputing.
| Outcome on a $9.99 charge | What leaves your account |
|---|---|
| You refund it when asked | $9.99, plus the original processing fee, which Stripe keeps |
| Customer disputes, you accept | $9.99 plus the $15 dispute fee |
| Customer disputes, you counter and lose | $9.99 plus $15 plus the $15 countered fee |
| Customer disputes, you counter and win | The $15 dispute fee. The $9.99 and the countered fee come back |
| Every outcome | The compute, API calls and storage already used |
On a low-priced plan, even a won dispute costs more than the charge was worth after fees. A plain refund is the cheapest outcome in the table. Stripe's own guidance on early fraud warnings reflects the same math: refunding a flagged charge is worth it when the charge is roughly at or below your dispute fee.
Why the dispute rate matters more than any one case
Stripe counts every dispute, won or lost, toward your dispute activity. It says the industry treats dispute activity above 0.75% as excessive, and that card network monitoring programs can bring fines. Stripe adds that excessive dispute activity can affect your ability to process payments with other processors too. A spike of disputes from one iOS paywall can follow every business you run on that account.

How to keep web checkout refunds from turning into disputes
The goal is simple. Make asking you easier than asking the bank.
- Put a refund or cancel link in the app and on every receipt. Apple won't show the purchase in its own history, so your receipt is the only record the customer has.
- Use a statement descriptor the customer will recognize as your app. Stripe notes that a card issuer often asks about a charge because the cardholder doesn't recognize the transaction description.
- Answer refund emails within a day or two. A dispute stops you refunding outside the dispute process, so the refund has to come first.
- Watch Stripe's early fraud warnings and refund low-value flagged charges before they become disputes.
- When a dispute or refund lands, end paid access on your server right away, so the compute, API calls and storage stop with it.
- Keep usage records tied to each charge. Logins, device details and what was consumed are the evidence a card issuer reads if you counter.
Keep the two refund systems apart in your data
A US customer can refund an Apple purchase through Apple and dispute a web purchase through their bank in the same month. Tag each entitlement with where it was bought. Revoke Apple purchases from App Store Server Notifications, revoke web purchases from your processor's webhooks, and never let one cancel the other by accident. RefundHalt answers Apple's CONSUMPTION_REQUEST for the in-app side. The web side is your processor's dispute queue, and your own policy decides it.
Frequently asked questions
- Who handles refunds when an iOS app links out to web checkout?
- The developer does. Apple's support article says it can't assist with refunds, purchase history or subscription management for purchases not billed through the App Store or Apple In-App Purchase, and tells customers to contact the developer. You refund through your own payment processor.
- Can a customer use Apple's Report a Problem page for a web checkout purchase?
- No. Apple says purchases made outside its system don't get App Store features such as Report a Problem, Family Sharing, subscription management or Ask to Buy. The purchase isn't in Apple's records, so there's nothing for Apple to refund.
- How much does a chargeback on a web checkout sale cost on Stripe?
- The disputed amount plus a $15 dispute fee in the US, which Stripe doesn't return even if you win. If you counter a dispute filed after June 17, 2025, a second $15 fee applies and is returned only if you win. The compute and storage the customer already used don't come back either way.
- Does Apple send a CONSUMPTION_REQUEST for a web checkout purchase?
- No. CONSUMPTION_REQUEST is part of Apple's refund process for its own in-app purchases. A web purchase is never billed by Apple, so Apple has no refund request to ask you about. The evidence step for a web sale is the card dispute, where you usually get 7 to 21 days to respond.
- Can US iOS apps link to outside payment without an entitlement?
- Yes, on the United States storefront. Apple's App Review Guidelines say the entitlements aren't required for buttons, external links or other calls to action in US storefront apps. Guideline 3.1.1 still requires in-app purchase for unlocking features inside the app, so apps usually offer both.
Sources and further reading
- Apple Developer: App Review Guidelines, sections 3.1.1, 3.1.1(a) and 3.1.3
- Apple Support: About purchases not billed through the App Store or Apple In-App Purchase
- Supreme Court of the United States: Docket No. 25-1311, Apple Inc. v. Epic Games, Inc.
- Apple Developer Documentation: Send Consumption Information
- Stripe Docs: How disputes work
- Stripe Support: June 2025 pricing updates for disputes
- Stripe Docs: Refund and cancel payments
- Stripe Docs: Measuring disputes
RefundHalt
The refund autopilot for the App Store and Google Play
Keep reading
A paid app refund never reaches your server, so the app itself has to notice it
Refunds on upfront paid apps skip every notification your server listens to. Google gives buyers a two-hour return and uninstalls the app, Apple can refund within 90 days under your agreement, and neither asks for evidence. Here's what each store tells you, what it costs, and how to check in the app.
If your app still runs on App Store Server Notifications V1, Apple never asks you about subscription refunds
Apple deprecated App Store Server Notifications V1 in June 2023, and it never gained the subscription CONSUMPTION_REQUEST, REFUND_DECLINED or REFUND_REVERSED. Here's what a V1 server misses, what that costs, and how to move to V2 without losing a refund.