In-App Purchase

RSS for tag

Offer extra content, digital goods, and features directly within your app using in-app purchases.

Posts under In-App Purchase tag

202 Posts

Post

Replies

Boosts

Views

Activity

Subscriptions fail to load during App Review but work correctly in TestFlight
To the Apple Review and Developer Support Teams, We are experiencing the same issue described in this thread: https://developer.apple.com/forums/thread/827016 Our application has been rejected under Guideline 2.1 - Performance because the subscription plans do not load during the App Review process. According to the review feedback, there's an error indicating that the In-App Purchases product list is empty. We are unable to reproduce this issue on our side. The subscription screen works correctly in TestFlight on multiple physical devices and with sandbox tester accounts. The paywall loads successfully, localized prices are returned correctly, and test purchases can be completed without errors. We have verified the following: All subscription products are attached to the submitted app version in App Store Connect. The product identifiers used in the application match the identifiers configured in App Store Connect. The relevant agreements, tax information, and banking details are active and up to date. The same build works correctly in TestFlight. The issue appears to occur exclusively in the App Review environment. This makes it difficult for us to diagnose the root cause or validate a fix. Could you please investigate whether there is an issue affecting StoreKit product retrieval during the review process? Any logs, diagnostics, or guidance on how to reproduce the App Review environment behavior would be helpful. Submission details: Date Submitted: Jun 1, 2026 at 2:01 PM Submission ID: 1260550e-ba11-4cbe-925a-7694f89ce715 Thank you for your assistance.
4
1
692
Jun ’26
Auto-renewable subscriptions stuck "In Review" for 20+ days — app approved and live, subscriptions still not available in production
Hi everyone, I'm experiencing a frustrating situation with my app and hoping someone from Apple or the community can help or has faced the same. Situation: I configured two auto-renewable subscriptions (premium_monthly and premium_yearly) in App Store Connect under a subscription group Submitted them for review along with a new app build The app build was reviewed, accepted, and is now live on the App Store The subscriptions have been in "In Review" status for 20+ days with no action Impact: In production, StoreKit does not return the subscription products at all (as expected — Apple doesn't serve unreviewed products to StoreKit) Users cannot purchase subscriptions Monetization is completely blocked for a live, approved app What I've already tried: Submitted an expedited review request — no response Submitted a new app version update to force a combined review — app was approved again but subscriptions remain "In Review" Contacted App Store Support via the online form — no response after multiple days Cannot edit or resubmit the subscriptions because they are locked while "In Review" Technical details: Using Flutter with the official in_app_purchase package (v3.2.0) Implementation verified correct — prices load fine in sandbox/simulator Existing lifetime non-consumable (remove_ads_premium) is approved and working in production Only the two new subscriptions are stuck Questions: Is there any way to escalate a stuck subscription review beyond the standard expedited review form? Can I delete the subscriptions while they are "In Review" and recreate them, or will that cause issues with product ID reuse? Has anyone else experienced this and found a resolution? Any help or guidance from Apple engineers or fellow developers would be greatly appreciated. Thanks
1
1
210
Jun ’26
IAP purchase fails in App Review sandbox — error alert shown to reviewer, 2.1(b) rejection
Getting 2.1(b) rejection. Reviewer sees "Purchase Failed" alert. Products configured correctly in ASC. Does App Review sandbox use same sandbox environment as developer testing? Can reviewer sandbox accounts trigger purchase failures that developer sandbox accounts cannot? Any known issues with first-time IAP products failing specifically during App Review sandbox session?
0
0
202
Jun ’26
StoreKit 2 currentEntitlements persists after Sandbox Purchase History reset in TestFlight
I am testing a StoreKit 2 non-consumable IAP through TestFlight. Product ID: com.metabolla.plus.lifetime Type: Non-Consumable Environment: TestFlight / Sandbox Transaction.currentEntitlements keeps returning an active entitlement for this product even after: configuring a Sandbox Apple Account clearing Sandbox Purchase History reinstalling the app rebooting the device Important detail: the first TestFlight purchase was completed before configuring the Sandbox Apple Account on the device. If I temporarily change the Product ID in code, the entitlement disappears, so the issue seems tied to the original Product ID/account/receipt. Question: Can a non-consumable TestFlight purchase made before Sandbox Apple Account configuration remain associated with the original TestFlight/Apple ID identity? Is there any supported way to clear this entitlement for testing?
3
0
701
Jun ’26
iOS Subscriptions in Russia – Is Apple In-App Purchase mandatory or can local providers be used?
Hello, We are working on integrating billing into our dating app, targeted at the Russian market. Our main requirement is to support subscriptions with automatic renewal and cancellation. We understand that, according to App Store Review Guideline, all digital subscriptions should use Apple In-App Purchase (IAP). However, we are unsure how this applies in Russia, where some local regulations may limit the use of non-Russian payment processors, and where not all Russian bank cards are accepted by Apple. Our question is: -For iOS apps in Russia, is it strictly required to use Apple IAP for subscriptions? -Are there any approved exceptions allowing integration with local processors such as Robokassa or YooKassa? -How are other developers currently handling subscriptions for the Russian market? We want to ensure full compliance and avoid any risk of rejection or removal. Thank you in advance for any clarification. Best regards, Dan
1
1
413
Jun ’26
Sandbox testing - Clear Purchase History
Hi, Overview I have an app for which I have created a sandbox account. When I try to clear purchase history it doesn't work, it still shows the in-app purchase items (non-consumable in-app purchases) as purchased. I have tied tried the following ways, but none of them work. Any help on this would be much appreciated! Attempt 1: Go to https://appstoreconnect.apple.com/ Users and Access > Sandbox Check sandbox account > Tap Clear Purchase History button Attempt 2: Go to the iPhone > Settings > Developer > Sandbox Apple Account Tap on account > Manage > Clear Purchase History Attempt 3: Sign out of Sandbox account and sign back in Attempt 4: Delete app and re-run app from Xcode
2
2
404
Jun ’26
How to cancel Auto-renewable subscription bought in TestFlight?
I've read several topics on cancelling subscriptions in sandbox environment, but it seems to me that it could not be applied to TestFlight. I can cancel sandbox subscriptions through Settings > App Store > Sandbox account But since TestFlight does not use sandbox account I cannot cancel a sub from there. Also, TF purchase does not appear in the list of regular subscriptions (Settings > Profile > Media & Purchases). So my question is: is there any way to manually cancel auto-renewable subscription bought in TestFlight build of the app?
10
7
8.5k
Jun ’26
App rejected repeatedly: Subscriptions fail to load in Review but work perfectly in TestFlight
To the Apple Review and Developer Support Teams, I am writing to request guidance and assistance regarding a persistent rejection my React Native application is facing under Guideline 2.1 - Performance (In-App Purchases). My app has been rejected multiple times with the following specific note: "The In-App Purchase products in the app still exhibited one or more bugs which create a poor user experience. Specifically, the subscription screen failed to load any subscription plans. Review the details and resources below to troubleshoot this issue." The screenshot provided by the review team shows a completely black screen where our paywall options are intended to populate, indicating that the product array is returning completely empty during the review process. The Dilemma: We are completely unable to reproduce this behavior on our end. Everything functions flawlessly within our TestFlight builds across multiple physical test devices and various sandbox tester accounts. On TestFlight, the paywall renders instantly, local pricing fetches immediately via SKProductsRequest, and test transactions process without a single error. Our Current Implementation & Verification: Product Status: All subscription products are explicitly marked as "Waiting for Review" in App Store Connect with one In-App product Rejected for not being attached with a bin but I've since submitted the app once again. All the subscriptions and the in-app product have been actively attached to this specific app submission version. Agreements: The Paid Apps Agreement is active, signed, and fully up to date within our Agreements, Tax, and Banking configurations. Identifiers: We have strictly verified that the hardcoded product identifiers in our React Native codebase match the App Store Connect product IDs exactly. Because this error only occurs within the App Review environment and never in TestFlight or local sandboxes, we are at a loss for how to debug or resolve this issue. Could the App Review team or the Developer Support technical team please clarify if there is a known environment mismatch, storefront routing discrepancy, or specific network configuration (such as IPv6 handling in the review sandbox) that would cause production-ready StoreKit products to return an empty array exclusively to the reviewer? Any direct guidance, logs, or steps on how we can successfully surface our plans to your review team would be deeply appreciated. Review Environment Submission ID: 5a35279c-1621-4972-b6c6-7c1fb202b2f0 Review date: May 20, 2026 Review Device: iPad Air 11-inch (M3) Version reviewed: 1.0.2 (8) Thank you for your time and assistance.
2
1
389
Jun ’26
In-App Purchases rejected without explanation while app itself was approved twice
Hello, I'm looking for advice regarding a confusing App Review situation. My app has already passed App Review and been approved for distribution twice: Version 1.0.0 → Approved Version 1.0.1 → Approved However, all three of my In-App Purchases keep getting rejected. What is confusing is that: The rejection appears to be related to localization/metadata. All three IAPs are rejected at the same time. No review notes or explanation are provided in App Store Connect. The app itself continues to pass review successfully. The IAP titles and descriptions contain normal text and do not appear to violate any App Store guidelines. The affected IAPs are: Remove Ads Forever (Non-Consumable) Unlock Character Outfit (Non-Consumable) Power-Up Coins (Consumable) I have already: Reviewed all IAP metadata and localizations. Removed any pricing or promotional text from descriptions. Added reviewer instructions explaining how to access each IAP. Resubmitted multiple times. Despite this, all three IAPs continue to be rejected without any explanation. Has anyone experienced a similar situation where: The app is approved, All IAPs are rejected together, No review notes are provided, And the rejection appears related to localization or metadata? Could this be a false positive or an App Store Connect issue? If anyone from Apple can investigate or suggest where to look, I would greatly appreciate it. App Name: Let's Run Girl App Version: 1.0.1 Bundle ID: com.atawan.letrungirl Apple ID: 6770245102 Note: Currently I decide to hide the app from store visibility until the IAP issues are resolved. Thank you
0
0
124
Jun ’26
Region-by-region App Store payment compliance: when is Apple IAP required vs external payments like Stripe?
Hi everyone, I’m based in Europe, and I’m trying to fully understand the current App Store payment rules for an iOS app that sells digital services or premium functionality used inside the app. My goal is not to bypass App Store rules, but to implement the correct, compliant payment flow depending on the user’s region and the App Store requirements that apply there. The app would offer things like premium features, credits, or access to digital functionality inside the iOS app. The payment flow I would ideally like to support, where allowed, is: iOS app -> Cloud ahndling -> Stripe Checkout page -> user pays -> Stripe handling -> my backend marks the user as premium What I’m trying to understand is whether this flow is allowed, restricted, or prohibited depending on the user’s App Store storefront / region. My questions are: For digital goods, subscriptions, credits, or premium features used inside an iOS app, is Apple In-App Purchase still required by default? In which regions, exactly, can an iOS app use or link to an external payment provider such as Stripe for digital services used inside the app? For users in the United States, after the Epic Games v. Apple changes, can an app show an external payment option such as “Subscribe on the web” or “Pay with Stripe”? If yes, what are the exact requirements, limitations, wording rules, Apple fees, or reporting obligations? For users in the European Union, under the DMA-related rules, does Apple allow external purchases through Stripe or a web checkout? If yes, do I need specific Apple entitlements, StoreKit External Purchase APIs, Apple approval, transaction reporting, or payment of Apple fees? For the rest of the world, should I assume that Apple IAP is mandatory for digital content, subscriptions, credits, and premium app functionality unless Apple has a specific regional program allowing external payments? What is the correct way to determine which payment flow a user should see? Should this be based on the user’s App Store storefront / StoreKit storefront, rather than IP address, device locale, billing address, or country selected manually by the user? Would a regional routing approach like this be compliant? if App Store storefront == US: show Apple-compliant external purchase link / Stripe option if allowed elif App Store storefront is in the EU and the app has the required Apple entitlement: show Apple-compliant external purchase flow else: show Apple In-App Purchase only If a user pays through Stripe or another external checkout in a region where external payments are allowed, can my backend unlock premium features inside the iOS app? Or are there restrictions on granting access inside the app when the purchase was not completed through Apple IAP? For a first App Store release, is the safest approach to launch with Apple IAP only, then later add external payment options only in regions where Apple explicitly allows them? For developers who have recently submitted apps with external payment links for digital services: Which countries or storefronts were accepted? Did App Review require special entitlements? Were there specific wording or UI requirements? Did Apple require transaction reporting or apply additional fees? Were there differences between the US, EU, and other regions? In short, I’m trying to understand the practical compliant architecture: iOS app = Apple IAP by default external Stripe / web checkout = only where regionally allowed by Apple backend = unlock premium access after valid payment, whether Apple IAP or approved external payment payment UI = adapted based on App Store storefront / region I would really appreciate answers from developers, App Review experiences, or anyone familiar with the current Apple rules after the Epic ruling, DMA changes, and Apple’s External Purchase Link / StoreKit External Purchase programs. Thanks!
5
0
343
Jun ’26
Subscriptions stuck in "In Review" after withdrawing a rejected submission, no way to remove from review
After a 2.3.2 rejection (two promoted subscriptions had identical display name + description), I withdrew the review submission to edit the subscription metadata. The app version moved to "Developer Rejected," but both auto-renewable subscriptions stayed stuck in "In Review." There is no active review submission attached to them anymore, yet: The subscription metadata (display name / description) is locked / not editable. There is no "Remove from Review" control on the subscription page or the version page. The version page no longer shows an "In-App Purchases and Subscriptions" section. Has anyone hit this orphaned "In Review" state? Is there a developer-side way to release a subscription from review, or is contacting Developer Support the only path? Appreciate any pointers, I'm on a deadline. App: Mossly: Plant Care Journal - Apple ID 6770594348 Subscription Group: Mossly Premium - 22098178 Subscriptions, both stuck: Mossly Premium - Monthly - 6770598241 (com.mossly.app.monthly) Mossly Premium - Yearly - 6770599597 (com.mossly.app.annual1)
1
1
226
Jun ’26
Locate the In-App Purchases and Subscriptions Section in App Store Connect
App Store Connect displays the In-App Purchases and Subscriptions section on your app's version page when your app has an In-App Purchase or subscription with a Ready to Submit status. To locate the In-App Purchases and Subscriptions section: In Apps, select the app you want to view. In the sidebar, select the app version. On the version page, scroll down to the In-App Purchases and Subscriptions section. For more information, see Submit an In-App Purchase.
0
0
1.6k
Jun ’26
Show StoreKit errors as custom alert
Hi, I am planning to show the StoreKitError as alerts, I have corresponding custom Error so that I can show meaningful error messages. Reason I wanted to display error alert messages that describe the underlying error so that when in production and user faces this error I would be able to reason about the error and try to resolve the error in a app update or Appstore Connect change. If I display a generic error I wouldn't know the cause of the error, but is there is a security risk in display the following kind of messages? Proposed UI error messages: | Error | UI alert message | | ------------------------------------ | ----------------------------------------------- | | StoreKitError.notEntitled | App is not entitled to make this request. | | PurchaseError.invalidOfferSignature | Invalid offer signature. | Questions From a security / user perspective is it risky / wrong to show an error message like the ones pasted above? Or are there some errors I shouldn't explicitly state? Or is there a better / preferred approach?
0
1
265
Jun ’26
Is there any way to redeem in-app purchases in iOS apps as the developer of the app?
I recently released an iOS app that includes banner ads through Google AdMob, and an in-app purchase to remove those ads. I created 500 offer codes in App Store Connect to be able to give out to people to get the in-app purchase for free. And I of course tried using one myself. However, it didn't work. At first, clicking on the offer code link failed to redeem anything. Eventually I was able to enter an offer code manually by going to App Store > My Photo > Redeem Code. But even after doing so, the ads weren't actually removed from my app. Now when I click the "Restore Purchases" link in my app, it says, "No Purchases Found. No previous ad removal purchase was found." But when I click the button to remove ads it says "Purchase Failed. The purchase could not be completed. Please try again." And if I try and redeem another code, it says, "Your code limit has been reached. You have already redeemed the maximum number of these codes per Apple Account." As the developer of this app, is there any way for me to make a in-app purchase (either with money or with an offer code) of my own app? Claude Code told me this: Apple prevents the developer Apple ID (the one that owns the app in App Store Connect) from purchasing or redeeming in-app purchases and offer codes for their own apps. But that response is AI and I always take its responses with a grain of salt. I asked it to cite its source, and it couldn't. Can anyone else who's developed iOS confirm or deny that this is true?
0
0
125
Jun ’26
In-App Purchase Resources
General: Forums topic: StoreKit Forums tag: In-App Purchase App Store Pathway Simple and safe In-App Purchases Auto-renewable subscriptions In-App Purchase documentation Getting started with In-App Purchase using StoreKit views documentation Supporting business model changes by using the app transaction documentation Testing at all stages of development with Xcode and the sandbox documentation App Store Server Notifications documentation App Store Server API documentation Simplifying your implementation by using the App Store Server Library documentation TN3185: Troubleshooting In-App Purchases availability in Xcode technote TN3186: Troubleshooting In-App Purchases availability in the sandbox technote TN3188: Troubleshooting In-App Purchases availability in the App Store technote Understanding StoreKit workflows sample code Implementing a store in your app using the StoreKit API sample code What’s new in StoreKit and In-App Purchase video
0
0
442
Jun ’26
In-app purchase fails on Apple Silicon Mac
I'm testing IPhone and iPad Apps on Apple Silicon Macs. When I purchase In-app product in the app on Apple Silicon Mac, the payment receipt is not created, so the purchase fails. In console log, it says it doesn't have permission to write to the file. storekitagent [6913DE38_SK1] Error writing receipt (5095 bytes) to file:///Users/XXXX/Library/Containers/90FE2A60-9FDF-4ECF-848F-CE3D396322CA/Data/StoreKit/sandboxReceipt: Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “sandboxReceipt” in the folder “StoreKit”" UserInfo={NSFilePath=/Users/XXXX/Library/Containers/90FE2A60-9FDF-4ECF-848F-CE3D396322CA/Data/StoreKit/sandboxReceipt, NSUnderlyingError=0x14202c920 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}} The App is using Original API for In-App Purchase written in Objective-C. When I purchase in-app product, the app calls SKPaymentQueue::addPayment. And then it gets paymentQueue:updatedTransactions callback with SKPaymentTransactionStatePurchased. This means that the payment was successful. But the receipt is not created so I can't continue the after process. I'm testing with sandbox in-app purchase. I have tested several times and confirmed that on macOS Monterey 12.2 the receipt is created successfully, but on macOS Ventura 13.2 the receipt isn't created. I think there is something to do with macOS version. Does anyone have any solutions? Here is a very similar thread on apple developer forum. (And there too has no anwsers)  https://developer.apple.com/forums/thread/719505
8
0
1.9k
May ’26
Subscription stuck "In Review" while its localization shows "Waiting for Review" — product locked, appears to be an inconsistent state
Hello App Review team, I'm hoping you can help with what looks like an inconsistent product state on an auto-renewable subscription, rather than a normal review delay. Details: App ID: 6459996442 Subscription products: 6762844313, 6762844514, 6762844429, 6762844600 Submitted: April 21, 2026 (~1 month ago) Support case ID: 102899130307 The issue: the subscription product has shown "In Review" for over 31 days, while the product's own localization (the display name) shows "Waiting for Review" for that same product. The two statuses have diverged and neither has moved since. On top of that, the product is locked — I'm unable to edit or delete it while it's in this state. — It is currently attached to version 1.19.0 of the app, which is ready to release and has been approved by App Review. — It no longer appears in the In-App Purchases section of my current version submission, so I'm unable to re-attach or resubmit it. This matches a pattern other developers have described, where a subscription falls into a stuck state that can only be cleared from Apple's side. I'd prefer not to remove and resubmit, since I understand that can reset the queue without fixing the underlying state. Could you please: Confirm whether the products are genuinely in the review queue or in an inconsistent state, and If it is stuck, reset the products back to "Ready to Submit" or "Approved" so I can resubmit and release cleanly. I'm happy to provide any additional information you need. Thank you very much for your time and help. @App Review
1
0
149
May ’26
Consumable IAPs stuck In Review / rejected with no feedback
Hi everyone, We develop the Ice Scream series and are introducing consumable IAPs (coin packs) for the first time in Ice Scream 1 and Ice Scream 2. The products are straightforward: coin packs that users can spend on boosters and additional content within the game. No expiration, clear value description, standard StoreKit implementation. Here's where things stand: Ice Scream 3: consumable IAPs submitted under the same model were approved without issues. Ice Scream 1: IAPs have been rejected multiple times with no specific feedback indicating what needs to be fixed. Ice Scream 2: after multiple rejections, the IAPs have been sitting in "In Review" status for over a week with no update. With each rejection we have provided detailed review notes including step-by-step instructions to reach the Shop (which requires completing a short onboarding tutorial as a new user) and video walkthroughs showing the full purchase flow for both new and returning users. Despite this, we keep getting rejections or no response at all. We have also submitted an appeal form requesting specific clarification, but have not received any reply. A few questions: Has anyone experienced a similar situation with consumable IAPs being repeatedly rejected without actionable feedback? Is there anything specific Apple checks for consumable IAPs beyond what is covered in Guideline 3.1.1 that we might be missing? Is there any other escalation path beyond the appeal form when a review appears to be stalled? Any help or insight would be greatly appreciated. Thanks!
2
0
203
May ’26
Consumable In-App Purchases Stuck in Review/Rejected - No Actionable Feedback or Support Response
To the App Review and Developer Support Teams, I am writing this post to bring an ongoing issue to your attention, as standard support channels have failed to provide any resolution or clear communication. Issue Summary: We are introducing consumable IAPs (coin packs) for the first time in Ice Scream 1 and Ice Scream 2. Both apps have been reviewed and approved, however their associated IAPs remain blocked. Despite multiple resubmissions with detailed review notes and video walkthroughs, the IAPs have been repeatedly rejected without specific or actionable feedback. The equivalent IAPs submitted for Ice Scream 3, using the exact same implementation and business model, have already been approved by the App Review team. Current status per app: Ice Scream 1: App approved. IAPs have been repeatedly rejected with no specific feedback indicating what needs to be corrected. Ice Scream 2: App approved. After multiple rejections, the IAPs have been stuck in "In Review" status for over a week with no update or response. Lack of Communication: We have opened support cases for both titles and have received no response or actionable feedback. The lack of synchronization between the App Review and Support teams is causing significant operational disruptions and is directly impacting our business. Impact: Not having the monetization features active in both titles is causing direct financial loss and preventing our users from accessing content they need. Request: We request an immediate update on the status of these IAPs and clarification on why the support cases remain unanswered. We are looking for a direct escalation or a response from an Apple representative who can resolve this situation. Related apps and support cases: Ice Scream 1: Scary Horror — App ID: 1480827449 — Case ID: 102902530872 Ice Scream 2: Scary Horror — App ID: 1488473484 — Case ID: 102902529670 I look forward to a prompt resolution. Sincerely, Maria Laskurain Keplerians Horror Mobile Games
0
0
112
May ’26
Subscriptions fail to load during App Review but work correctly in TestFlight
To the Apple Review and Developer Support Teams, We are experiencing the same issue described in this thread: https://developer.apple.com/forums/thread/827016 Our application has been rejected under Guideline 2.1 - Performance because the subscription plans do not load during the App Review process. According to the review feedback, there's an error indicating that the In-App Purchases product list is empty. We are unable to reproduce this issue on our side. The subscription screen works correctly in TestFlight on multiple physical devices and with sandbox tester accounts. The paywall loads successfully, localized prices are returned correctly, and test purchases can be completed without errors. We have verified the following: All subscription products are attached to the submitted app version in App Store Connect. The product identifiers used in the application match the identifiers configured in App Store Connect. The relevant agreements, tax information, and banking details are active and up to date. The same build works correctly in TestFlight. The issue appears to occur exclusively in the App Review environment. This makes it difficult for us to diagnose the root cause or validate a fix. Could you please investigate whether there is an issue affecting StoreKit product retrieval during the review process? Any logs, diagnostics, or guidance on how to reproduce the App Review environment behavior would be helpful. Submission details: Date Submitted: Jun 1, 2026 at 2:01 PM Submission ID: 1260550e-ba11-4cbe-925a-7694f89ce715 Thank you for your assistance.
Replies
4
Boosts
1
Views
692
Activity
Jun ’26
Auto-renewable subscriptions stuck "In Review" for 20+ days — app approved and live, subscriptions still not available in production
Hi everyone, I'm experiencing a frustrating situation with my app and hoping someone from Apple or the community can help or has faced the same. Situation: I configured two auto-renewable subscriptions (premium_monthly and premium_yearly) in App Store Connect under a subscription group Submitted them for review along with a new app build The app build was reviewed, accepted, and is now live on the App Store The subscriptions have been in "In Review" status for 20+ days with no action Impact: In production, StoreKit does not return the subscription products at all (as expected — Apple doesn't serve unreviewed products to StoreKit) Users cannot purchase subscriptions Monetization is completely blocked for a live, approved app What I've already tried: Submitted an expedited review request — no response Submitted a new app version update to force a combined review — app was approved again but subscriptions remain "In Review" Contacted App Store Support via the online form — no response after multiple days Cannot edit or resubmit the subscriptions because they are locked while "In Review" Technical details: Using Flutter with the official in_app_purchase package (v3.2.0) Implementation verified correct — prices load fine in sandbox/simulator Existing lifetime non-consumable (remove_ads_premium) is approved and working in production Only the two new subscriptions are stuck Questions: Is there any way to escalate a stuck subscription review beyond the standard expedited review form? Can I delete the subscriptions while they are "In Review" and recreate them, or will that cause issues with product ID reuse? Has anyone else experienced this and found a resolution? Any help or guidance from Apple engineers or fellow developers would be greatly appreciated. Thanks
Replies
1
Boosts
1
Views
210
Activity
Jun ’26
IAP purchase fails in App Review sandbox — error alert shown to reviewer, 2.1(b) rejection
Getting 2.1(b) rejection. Reviewer sees "Purchase Failed" alert. Products configured correctly in ASC. Does App Review sandbox use same sandbox environment as developer testing? Can reviewer sandbox accounts trigger purchase failures that developer sandbox accounts cannot? Any known issues with first-time IAP products failing specifically during App Review sandbox session?
Replies
0
Boosts
0
Views
202
Activity
Jun ’26
StoreKit 2 currentEntitlements persists after Sandbox Purchase History reset in TestFlight
I am testing a StoreKit 2 non-consumable IAP through TestFlight. Product ID: com.metabolla.plus.lifetime Type: Non-Consumable Environment: TestFlight / Sandbox Transaction.currentEntitlements keeps returning an active entitlement for this product even after: configuring a Sandbox Apple Account clearing Sandbox Purchase History reinstalling the app rebooting the device Important detail: the first TestFlight purchase was completed before configuring the Sandbox Apple Account on the device. If I temporarily change the Product ID in code, the entitlement disappears, so the issue seems tied to the original Product ID/account/receipt. Question: Can a non-consumable TestFlight purchase made before Sandbox Apple Account configuration remain associated with the original TestFlight/Apple ID identity? Is there any supported way to clear this entitlement for testing?
Replies
3
Boosts
0
Views
701
Activity
Jun ’26
iOS Subscriptions in Russia – Is Apple In-App Purchase mandatory or can local providers be used?
Hello, We are working on integrating billing into our dating app, targeted at the Russian market. Our main requirement is to support subscriptions with automatic renewal and cancellation. We understand that, according to App Store Review Guideline, all digital subscriptions should use Apple In-App Purchase (IAP). However, we are unsure how this applies in Russia, where some local regulations may limit the use of non-Russian payment processors, and where not all Russian bank cards are accepted by Apple. Our question is: -For iOS apps in Russia, is it strictly required to use Apple IAP for subscriptions? -Are there any approved exceptions allowing integration with local processors such as Robokassa or YooKassa? -How are other developers currently handling subscriptions for the Russian market? We want to ensure full compliance and avoid any risk of rejection or removal. Thank you in advance for any clarification. Best regards, Dan
Replies
1
Boosts
1
Views
413
Activity
Jun ’26
Sandbox testing - Clear Purchase History
Hi, Overview I have an app for which I have created a sandbox account. When I try to clear purchase history it doesn't work, it still shows the in-app purchase items (non-consumable in-app purchases) as purchased. I have tied tried the following ways, but none of them work. Any help on this would be much appreciated! Attempt 1: Go to https://appstoreconnect.apple.com/ Users and Access > Sandbox Check sandbox account > Tap Clear Purchase History button Attempt 2: Go to the iPhone > Settings > Developer > Sandbox Apple Account Tap on account > Manage > Clear Purchase History Attempt 3: Sign out of Sandbox account and sign back in Attempt 4: Delete app and re-run app from Xcode
Replies
2
Boosts
2
Views
404
Activity
Jun ’26
How to cancel Auto-renewable subscription bought in TestFlight?
I've read several topics on cancelling subscriptions in sandbox environment, but it seems to me that it could not be applied to TestFlight. I can cancel sandbox subscriptions through Settings > App Store > Sandbox account But since TestFlight does not use sandbox account I cannot cancel a sub from there. Also, TF purchase does not appear in the list of regular subscriptions (Settings > Profile > Media & Purchases). So my question is: is there any way to manually cancel auto-renewable subscription bought in TestFlight build of the app?
Replies
10
Boosts
7
Views
8.5k
Activity
Jun ’26
App rejected repeatedly: Subscriptions fail to load in Review but work perfectly in TestFlight
To the Apple Review and Developer Support Teams, I am writing to request guidance and assistance regarding a persistent rejection my React Native application is facing under Guideline 2.1 - Performance (In-App Purchases). My app has been rejected multiple times with the following specific note: "The In-App Purchase products in the app still exhibited one or more bugs which create a poor user experience. Specifically, the subscription screen failed to load any subscription plans. Review the details and resources below to troubleshoot this issue." The screenshot provided by the review team shows a completely black screen where our paywall options are intended to populate, indicating that the product array is returning completely empty during the review process. The Dilemma: We are completely unable to reproduce this behavior on our end. Everything functions flawlessly within our TestFlight builds across multiple physical test devices and various sandbox tester accounts. On TestFlight, the paywall renders instantly, local pricing fetches immediately via SKProductsRequest, and test transactions process without a single error. Our Current Implementation & Verification: Product Status: All subscription products are explicitly marked as "Waiting for Review" in App Store Connect with one In-App product Rejected for not being attached with a bin but I've since submitted the app once again. All the subscriptions and the in-app product have been actively attached to this specific app submission version. Agreements: The Paid Apps Agreement is active, signed, and fully up to date within our Agreements, Tax, and Banking configurations. Identifiers: We have strictly verified that the hardcoded product identifiers in our React Native codebase match the App Store Connect product IDs exactly. Because this error only occurs within the App Review environment and never in TestFlight or local sandboxes, we are at a loss for how to debug or resolve this issue. Could the App Review team or the Developer Support technical team please clarify if there is a known environment mismatch, storefront routing discrepancy, or specific network configuration (such as IPv6 handling in the review sandbox) that would cause production-ready StoreKit products to return an empty array exclusively to the reviewer? Any direct guidance, logs, or steps on how we can successfully surface our plans to your review team would be deeply appreciated. Review Environment Submission ID: 5a35279c-1621-4972-b6c6-7c1fb202b2f0 Review date: May 20, 2026 Review Device: iPad Air 11-inch (M3) Version reviewed: 1.0.2 (8) Thank you for your time and assistance.
Replies
2
Boosts
1
Views
389
Activity
Jun ’26
In-App Purchases rejected without explanation while app itself was approved twice
Hello, I'm looking for advice regarding a confusing App Review situation. My app has already passed App Review and been approved for distribution twice: Version 1.0.0 → Approved Version 1.0.1 → Approved However, all three of my In-App Purchases keep getting rejected. What is confusing is that: The rejection appears to be related to localization/metadata. All three IAPs are rejected at the same time. No review notes or explanation are provided in App Store Connect. The app itself continues to pass review successfully. The IAP titles and descriptions contain normal text and do not appear to violate any App Store guidelines. The affected IAPs are: Remove Ads Forever (Non-Consumable) Unlock Character Outfit (Non-Consumable) Power-Up Coins (Consumable) I have already: Reviewed all IAP metadata and localizations. Removed any pricing or promotional text from descriptions. Added reviewer instructions explaining how to access each IAP. Resubmitted multiple times. Despite this, all three IAPs continue to be rejected without any explanation. Has anyone experienced a similar situation where: The app is approved, All IAPs are rejected together, No review notes are provided, And the rejection appears related to localization or metadata? Could this be a false positive or an App Store Connect issue? If anyone from Apple can investigate or suggest where to look, I would greatly appreciate it. App Name: Let's Run Girl App Version: 1.0.1 Bundle ID: com.atawan.letrungirl Apple ID: 6770245102 Note: Currently I decide to hide the app from store visibility until the IAP issues are resolved. Thank you
Replies
0
Boosts
0
Views
124
Activity
Jun ’26
How to receive External Purchase Entitlement for Russia?
Is there any way to activate Storekit External Purchase Entitlements in Russian region currently? External Purchase documentation's form link for this specific region is not working. Is there a workaround to register for it?
Replies
1
Boosts
0
Views
291
Activity
Jun ’26
Region-by-region App Store payment compliance: when is Apple IAP required vs external payments like Stripe?
Hi everyone, I’m based in Europe, and I’m trying to fully understand the current App Store payment rules for an iOS app that sells digital services or premium functionality used inside the app. My goal is not to bypass App Store rules, but to implement the correct, compliant payment flow depending on the user’s region and the App Store requirements that apply there. The app would offer things like premium features, credits, or access to digital functionality inside the iOS app. The payment flow I would ideally like to support, where allowed, is: iOS app -> Cloud ahndling -> Stripe Checkout page -> user pays -> Stripe handling -> my backend marks the user as premium What I’m trying to understand is whether this flow is allowed, restricted, or prohibited depending on the user’s App Store storefront / region. My questions are: For digital goods, subscriptions, credits, or premium features used inside an iOS app, is Apple In-App Purchase still required by default? In which regions, exactly, can an iOS app use or link to an external payment provider such as Stripe for digital services used inside the app? For users in the United States, after the Epic Games v. Apple changes, can an app show an external payment option such as “Subscribe on the web” or “Pay with Stripe”? If yes, what are the exact requirements, limitations, wording rules, Apple fees, or reporting obligations? For users in the European Union, under the DMA-related rules, does Apple allow external purchases through Stripe or a web checkout? If yes, do I need specific Apple entitlements, StoreKit External Purchase APIs, Apple approval, transaction reporting, or payment of Apple fees? For the rest of the world, should I assume that Apple IAP is mandatory for digital content, subscriptions, credits, and premium app functionality unless Apple has a specific regional program allowing external payments? What is the correct way to determine which payment flow a user should see? Should this be based on the user’s App Store storefront / StoreKit storefront, rather than IP address, device locale, billing address, or country selected manually by the user? Would a regional routing approach like this be compliant? if App Store storefront == US: show Apple-compliant external purchase link / Stripe option if allowed elif App Store storefront is in the EU and the app has the required Apple entitlement: show Apple-compliant external purchase flow else: show Apple In-App Purchase only If a user pays through Stripe or another external checkout in a region where external payments are allowed, can my backend unlock premium features inside the iOS app? Or are there restrictions on granting access inside the app when the purchase was not completed through Apple IAP? For a first App Store release, is the safest approach to launch with Apple IAP only, then later add external payment options only in regions where Apple explicitly allows them? For developers who have recently submitted apps with external payment links for digital services: Which countries or storefronts were accepted? Did App Review require special entitlements? Were there specific wording or UI requirements? Did Apple require transaction reporting or apply additional fees? Were there differences between the US, EU, and other regions? In short, I’m trying to understand the practical compliant architecture: iOS app = Apple IAP by default external Stripe / web checkout = only where regionally allowed by Apple backend = unlock premium access after valid payment, whether Apple IAP or approved external payment payment UI = adapted based on App Store storefront / region I would really appreciate answers from developers, App Review experiences, or anyone familiar with the current Apple rules after the Epic ruling, DMA changes, and Apple’s External Purchase Link / StoreKit External Purchase programs. Thanks!
Replies
5
Boosts
0
Views
343
Activity
Jun ’26
Subscriptions stuck in "In Review" after withdrawing a rejected submission, no way to remove from review
After a 2.3.2 rejection (two promoted subscriptions had identical display name + description), I withdrew the review submission to edit the subscription metadata. The app version moved to "Developer Rejected," but both auto-renewable subscriptions stayed stuck in "In Review." There is no active review submission attached to them anymore, yet: The subscription metadata (display name / description) is locked / not editable. There is no "Remove from Review" control on the subscription page or the version page. The version page no longer shows an "In-App Purchases and Subscriptions" section. Has anyone hit this orphaned "In Review" state? Is there a developer-side way to release a subscription from review, or is contacting Developer Support the only path? Appreciate any pointers, I'm on a deadline. App: Mossly: Plant Care Journal - Apple ID 6770594348 Subscription Group: Mossly Premium - 22098178 Subscriptions, both stuck: Mossly Premium - Monthly - 6770598241 (com.mossly.app.monthly) Mossly Premium - Yearly - 6770599597 (com.mossly.app.annual1)
Replies
1
Boosts
1
Views
226
Activity
Jun ’26
Locate the In-App Purchases and Subscriptions Section in App Store Connect
App Store Connect displays the In-App Purchases and Subscriptions section on your app's version page when your app has an In-App Purchase or subscription with a Ready to Submit status. To locate the In-App Purchases and Subscriptions section: In Apps, select the app you want to view. In the sidebar, select the app version. On the version page, scroll down to the In-App Purchases and Subscriptions section. For more information, see Submit an In-App Purchase.
Replies
0
Boosts
0
Views
1.6k
Activity
Jun ’26
Show StoreKit errors as custom alert
Hi, I am planning to show the StoreKitError as alerts, I have corresponding custom Error so that I can show meaningful error messages. Reason I wanted to display error alert messages that describe the underlying error so that when in production and user faces this error I would be able to reason about the error and try to resolve the error in a app update or Appstore Connect change. If I display a generic error I wouldn't know the cause of the error, but is there is a security risk in display the following kind of messages? Proposed UI error messages: | Error | UI alert message | | ------------------------------------ | ----------------------------------------------- | | StoreKitError.notEntitled | App is not entitled to make this request. | | PurchaseError.invalidOfferSignature | Invalid offer signature. | Questions From a security / user perspective is it risky / wrong to show an error message like the ones pasted above? Or are there some errors I shouldn't explicitly state? Or is there a better / preferred approach?
Replies
0
Boosts
1
Views
265
Activity
Jun ’26
Is there any way to redeem in-app purchases in iOS apps as the developer of the app?
I recently released an iOS app that includes banner ads through Google AdMob, and an in-app purchase to remove those ads. I created 500 offer codes in App Store Connect to be able to give out to people to get the in-app purchase for free. And I of course tried using one myself. However, it didn't work. At first, clicking on the offer code link failed to redeem anything. Eventually I was able to enter an offer code manually by going to App Store > My Photo > Redeem Code. But even after doing so, the ads weren't actually removed from my app. Now when I click the "Restore Purchases" link in my app, it says, "No Purchases Found. No previous ad removal purchase was found." But when I click the button to remove ads it says "Purchase Failed. The purchase could not be completed. Please try again." And if I try and redeem another code, it says, "Your code limit has been reached. You have already redeemed the maximum number of these codes per Apple Account." As the developer of this app, is there any way for me to make a in-app purchase (either with money or with an offer code) of my own app? Claude Code told me this: Apple prevents the developer Apple ID (the one that owns the app in App Store Connect) from purchasing or redeeming in-app purchases and offer codes for their own apps. But that response is AI and I always take its responses with a grain of salt. I asked it to cite its source, and it couldn't. Can anyone else who's developed iOS confirm or deny that this is true?
Replies
0
Boosts
0
Views
125
Activity
Jun ’26
In-App Purchase Resources
General: Forums topic: StoreKit Forums tag: In-App Purchase App Store Pathway Simple and safe In-App Purchases Auto-renewable subscriptions In-App Purchase documentation Getting started with In-App Purchase using StoreKit views documentation Supporting business model changes by using the app transaction documentation Testing at all stages of development with Xcode and the sandbox documentation App Store Server Notifications documentation App Store Server API documentation Simplifying your implementation by using the App Store Server Library documentation TN3185: Troubleshooting In-App Purchases availability in Xcode technote TN3186: Troubleshooting In-App Purchases availability in the sandbox technote TN3188: Troubleshooting In-App Purchases availability in the App Store technote Understanding StoreKit workflows sample code Implementing a store in your app using the StoreKit API sample code What’s new in StoreKit and In-App Purchase video
Replies
0
Boosts
0
Views
442
Activity
Jun ’26
In-app purchase fails on Apple Silicon Mac
I'm testing IPhone and iPad Apps on Apple Silicon Macs. When I purchase In-app product in the app on Apple Silicon Mac, the payment receipt is not created, so the purchase fails. In console log, it says it doesn't have permission to write to the file. storekitagent [6913DE38_SK1] Error writing receipt (5095 bytes) to file:///Users/XXXX/Library/Containers/90FE2A60-9FDF-4ECF-848F-CE3D396322CA/Data/StoreKit/sandboxReceipt: Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “sandboxReceipt” in the folder “StoreKit”" UserInfo={NSFilePath=/Users/XXXX/Library/Containers/90FE2A60-9FDF-4ECF-848F-CE3D396322CA/Data/StoreKit/sandboxReceipt, NSUnderlyingError=0x14202c920 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}} The App is using Original API for In-App Purchase written in Objective-C. When I purchase in-app product, the app calls SKPaymentQueue::addPayment. And then it gets paymentQueue:updatedTransactions callback with SKPaymentTransactionStatePurchased. This means that the payment was successful. But the receipt is not created so I can't continue the after process. I'm testing with sandbox in-app purchase. I have tested several times and confirmed that on macOS Monterey 12.2 the receipt is created successfully, but on macOS Ventura 13.2 the receipt isn't created. I think there is something to do with macOS version. Does anyone have any solutions? Here is a very similar thread on apple developer forum. (And there too has no anwsers)  https://developer.apple.com/forums/thread/719505
Replies
8
Boosts
0
Views
1.9k
Activity
May ’26
Subscription stuck "In Review" while its localization shows "Waiting for Review" — product locked, appears to be an inconsistent state
Hello App Review team, I'm hoping you can help with what looks like an inconsistent product state on an auto-renewable subscription, rather than a normal review delay. Details: App ID: 6459996442 Subscription products: 6762844313, 6762844514, 6762844429, 6762844600 Submitted: April 21, 2026 (~1 month ago) Support case ID: 102899130307 The issue: the subscription product has shown "In Review" for over 31 days, while the product's own localization (the display name) shows "Waiting for Review" for that same product. The two statuses have diverged and neither has moved since. On top of that, the product is locked — I'm unable to edit or delete it while it's in this state. — It is currently attached to version 1.19.0 of the app, which is ready to release and has been approved by App Review. — It no longer appears in the In-App Purchases section of my current version submission, so I'm unable to re-attach or resubmit it. This matches a pattern other developers have described, where a subscription falls into a stuck state that can only be cleared from Apple's side. I'd prefer not to remove and resubmit, since I understand that can reset the queue without fixing the underlying state. Could you please: Confirm whether the products are genuinely in the review queue or in an inconsistent state, and If it is stuck, reset the products back to "Ready to Submit" or "Approved" so I can resubmit and release cleanly. I'm happy to provide any additional information you need. Thank you very much for your time and help. @App Review
Replies
1
Boosts
0
Views
149
Activity
May ’26
Consumable IAPs stuck In Review / rejected with no feedback
Hi everyone, We develop the Ice Scream series and are introducing consumable IAPs (coin packs) for the first time in Ice Scream 1 and Ice Scream 2. The products are straightforward: coin packs that users can spend on boosters and additional content within the game. No expiration, clear value description, standard StoreKit implementation. Here's where things stand: Ice Scream 3: consumable IAPs submitted under the same model were approved without issues. Ice Scream 1: IAPs have been rejected multiple times with no specific feedback indicating what needs to be fixed. Ice Scream 2: after multiple rejections, the IAPs have been sitting in "In Review" status for over a week with no update. With each rejection we have provided detailed review notes including step-by-step instructions to reach the Shop (which requires completing a short onboarding tutorial as a new user) and video walkthroughs showing the full purchase flow for both new and returning users. Despite this, we keep getting rejections or no response at all. We have also submitted an appeal form requesting specific clarification, but have not received any reply. A few questions: Has anyone experienced a similar situation with consumable IAPs being repeatedly rejected without actionable feedback? Is there anything specific Apple checks for consumable IAPs beyond what is covered in Guideline 3.1.1 that we might be missing? Is there any other escalation path beyond the appeal form when a review appears to be stalled? Any help or insight would be greatly appreciated. Thanks!
Replies
2
Boosts
0
Views
203
Activity
May ’26
Consumable In-App Purchases Stuck in Review/Rejected - No Actionable Feedback or Support Response
To the App Review and Developer Support Teams, I am writing this post to bring an ongoing issue to your attention, as standard support channels have failed to provide any resolution or clear communication. Issue Summary: We are introducing consumable IAPs (coin packs) for the first time in Ice Scream 1 and Ice Scream 2. Both apps have been reviewed and approved, however their associated IAPs remain blocked. Despite multiple resubmissions with detailed review notes and video walkthroughs, the IAPs have been repeatedly rejected without specific or actionable feedback. The equivalent IAPs submitted for Ice Scream 3, using the exact same implementation and business model, have already been approved by the App Review team. Current status per app: Ice Scream 1: App approved. IAPs have been repeatedly rejected with no specific feedback indicating what needs to be corrected. Ice Scream 2: App approved. After multiple rejections, the IAPs have been stuck in "In Review" status for over a week with no update or response. Lack of Communication: We have opened support cases for both titles and have received no response or actionable feedback. The lack of synchronization between the App Review and Support teams is causing significant operational disruptions and is directly impacting our business. Impact: Not having the monetization features active in both titles is causing direct financial loss and preventing our users from accessing content they need. Request: We request an immediate update on the status of these IAPs and clarification on why the support cases remain unanswered. We are looking for a direct escalation or a response from an Apple representative who can resolve this situation. Related apps and support cases: Ice Scream 1: Scary Horror — App ID: 1480827449 — Case ID: 102902530872 Ice Scream 2: Scary Horror — App ID: 1488473484 — Case ID: 102902529670 I look forward to a prompt resolution. Sincerely, Maria Laskurain Keplerians Horror Mobile Games
Replies
0
Boosts
0
Views
112
Activity
May ’26