Subscriptions

RSS for tag

Give users access to content, services, or premium features in your app on an ongoing basis with subscriptions, a type of in-app purchase.

Posts under Subscriptions tag

200 Posts

Post

Replies

Boosts

Views

Activity

Subscriptions stuck in "Waiting for Review" after multiple app version approvals
I have two auto-renewable subscriptions (RedBird.Monthly and RedBird.yearly) that have been stuck in "Waiting for Review" status through 4 separate app version submissions and approvals. Each time I submit a new app version, the app itself gets approved and released, but the subscriptions remain in "Waiting for Review" and are never reviewed alongside it. I have: Added screenshots to both subscriptions under Review Information Filled in all required localization fields Submitted the app with a build attached each time Tried clicking "Submit for Review" on each subscription individually The subscriptions are part of a subscription group called "RedBird Premium." The app is a Capacitor-based iOS app (com.redbird.wellness). Has anyone experienced this? Is there a specific step required to explicitly link subscriptions to an app version submission in the current App Store Connect UI? The "In-App Purchases and Subscriptions" section described in Apple's documentation does not appear on my version page. Any help appreciated.
1
0
264
2w
My new app in review for over 9 days
Hi, I've been developing and releasing apps on app store for a while now. Around 11 days ago, I sent my latest (3rd) application to review, soon enough got a rejection message with guidelines. It was normal for me because it happens on all applications, same day I addressed all issues. Uploaded a new build, wrote in review notes that what I did to fix these guideline issues. However since that time my app is stuck on "Waiting for Review" I would take that as normal but there is one strange point, when I go to "Subscription" page, my 3 subscriptions are stuck "In Review" for over 9 days. Is it because I tried to release the app directly with a subscription method included? I don't know. I can not remove the subscription now to update the app without any pro features either. Contacted Apple Developer Support, however no answers from there also. Did anyone else had a problem like this, and how did you reach to a fix? Thank you
0
0
93
2w
Auto-renewable subscriptions stuck "In Review" since 10 May — app approved (App ID: 6743341470)
I'm hoping someone from the App Review team can help. My App ID: 6743341470 is Ready for Distribution, but both auto-renewable subscriptions have been stuck in "In Review" since May 10 with no update. Subscriptions: Subscription Group ID: 22039292 Account status: Paid Apps Agreement: Active Banking and tax: Complete Localization: Approved (Since 11 May) Resolution Center: No outstanding items What I've tried: Apple Developer Support case 20000114086909 — escalated thrice, support confirmed nothing is concerning but no movement. All they said was wait with no definite timeline. This is my first app and these subscriptions are blocking my launch. Any help from the App Review team would be greatly appreciated.
1
0
185
2w
Auto-renewable subscriptions stuck "In Review" since 10 May — app approved (App ID: 6743341470)
I'm hoping someone from the App Review team can help. My App ID: 6743341470 is Ready for Distribution, but both auto-renewable subscriptions have been stuck in "In Review" since May 10 with no update. Subscriptions: Subscription Group ID: 22039292 Account status: Paid Apps Agreement: Active Banking and tax: Complete Localization: Approved Resolution Center: No outstanding items What I've tried: Expedited review request submitted Apple Developer Support case 20000114086909 — escalated thrice, support confirmed nothing is concerning but no movement. All they said was wait with no definite timeline. This is my first app and these subscriptions are blocking my launch. Any help from the App Review team would be greatly appreciated.
0
0
174
2w
StoreKit2 does not provide an update when subscription was cancelled
I am testing a situation when user cancels auto renewable subscription (via StoreKit->Manage Transactions window). The problem is StoreKit2 does not provide an update when subscription was cancelled. I started using demo from apple developer.apple.com/documentation/storekit/in-app_purchase/implementing_a_store_in_your_app_using_the_storekit_api to test this behaviour in order to get rid of possible mistakes in my implementation, but result is the same - when user cancels subscription app does not receive any storekit events (change in renewal info, update in current entitlements, transaction status - nothing) and only after app's relaunch it fetches everything from scratch and finally updates UI. I tried to wait for up to 20 minutes to check whether this update in transaction (subscription) status will be delivered to the app - still nothing. So the problem, as I see it, is that if user cancels subscription and then does not relaunch the app he can continue to use the app for free for a long time. In this regard I have several questions: is it expected behavior of StoreKit2? If yes - why? Does it happen in Test Flight mode or in production env as well? If it's not expected behavior then is it correct to fix it with checking (lets say once in an hour) user's current entitlements (I tried and it seems to work ok) or there are better solutions?
2
3
729
2w
First subscription stuck in "Developer Action Needed", no IAP section on version page, reviewer hits "product is not available for purchase" — works fine on my own TestFlight install
I'm preparing my first App Store submission and have hit a chain of issues that appear to be backend state problems I can't resolve from the App Store Connect UI. I've already opened a DTS case but wanted to ask here in case anyone has seen this combination before. Setup: iOS app with first-time subscriptions (auto-renewable, 7-day free trial) Two products: bitcoinhq_pro_monthly and bitcoinhq_pro_annual Both in the same subscription group "Bitcoin HQ Pro" Paid Apps Agreement is Active Bundle ID, prices (all 175 territories including United States), intro offers ("Free for the first week" in all territories), localizations all configured Important context: On my own iPad (TestFlight build, signed into my normal sandbox account), the full flow works perfectly — paywall loads on first launch after install, both products show with correct prices, tapping Subscribe opens the StoreKit sheet, purchase completes, the entitlement grants, and Pro features unlock. So the app code and RevenueCat configuration are working. The issues below appear to be App Store Connect backend state problems. The issues, in the order I hit them: bitcoinhq_pro_monthly is stuck in "Developer Action Needed." I cannot identify which field is flagged — all required sections (price, availability, localization, screenshot, review notes, tax category) appear complete. Cannot save edits to the English (U.S.) localization for the monthly subscription. The localization editor returns: "There was an error with editing your App Store localization. Try again later." This has persisted across multiple browsers (Safari, Chrome, incognito), sign-out/sign-in cycles, multiple days, with Apple System Status reporting all services green, and with the description retyped manually rather than pasted. Cannot submit the monthly subscription standalone. Clicking "Submit for Review" returns: "Your subscription cannot be submitted for review. Your first subscription must be submitted with a new app version." The annual subscription is in "Waiting for Review" — saved successfully when first created. The "In-App Purchases and Subscriptions" section is missing from my App Version 1.0 page. Per ASC's own messaging, this is where I'm supposed to attach my first subscriptions before submitting the version. The section is not present anywhere on the version page. Reviewer rejection with "The product is not available for purchase." App Review Guideline 2.1(b). Tapping Subscribe in the reviewer's environment results in this StoreKit error on iPad Air 11" M3 / iPadOS 26.4.2 — but the same build on my own devices completes the purchase without issue. My read: issues 1–4 appear to be a single backend state problem with the monthly product or subscription group. Issue 5 appears to be downstream — sandbox returns the products for fetch but refuses the purchase from the reviewer's clean environment because the product isn't in a properly submittable state. Has anyone seen this combination? Any way to surface the "In-App Purchases and Subscriptions" section, or work around the localization save error? Or is the only path through DTS? Thanks in advance.
0
0
119
2w
Subscription cannot be attached to new binary, but the reviewers reject the subscription because it needs to be attached with a new binary.
Currently our app Juris: Learn the Law has consumable IAPs available publicly. We've recently added a subscription to a new update, but since we already added consumable IAPs, we can only submit new IAP on their own and cannot attach it to a new binary. The issue is that when we submit the subscription for review, it gets rejected and the reviewers respond that the subscription needs to be included with a new binary, even though we can't attached it to a new binary. We submitted a new binary at the same time we submitted a new subscription, but the new binary would be approved and the subscription would be rejected. The update with the subscription is available, but the subscription isn't, meaning users cannot use the new features which require the subscription.
2
0
144
2w
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
2
0
116
3w
Apple Subscription Offer Code Behavior
I would like to ask for clarification regarding the specifications of Apple Subscriptions. We are currently planning a subscription discount campaign using Offer Codes, and during testing we encountered the following issue. Test scenario: A user who does not have our app installed accesses a URL that contains an Offer Code. The App Store opens and displays the details of the Offer Code. The user reviews the offer and proceeds, at which point the App Store prompts the user to install our app. The user installs the app and launches it. Issue: The subscription remains in an unpurchased state. From the app implementation side, when the app launches, we attempt to retrieve transactions held by Apple using unfinishedTransactions. However, no transaction is returned, so the app cannot transition the user to a subscribed state. In contrast, when a user who already has the app installed accesses the Offer Code URL (step 1), the app can successfully retrieve the unfinished transaction via unfinishedTransactions on launch and correctly switch the user to a subscribed state. Could you please advise on the root cause of this behavior, or whether there is a recommended workaround for this scenario?
0
0
95
3w
App Store Server Notification v2: how to distinguish a resubscription that happened in-app from one that happened in Settings → Subscriptions?
Context We're handling App Store subscriptions on the server side using App Store Server Notification v2. Our pipeline currently identifies each event by transactionId and originalTransactionId. A few notes about our client: Our app is built with Flutter and uses the standard in_app_purchase plugin layer to drive App Store purchases (StoreKit 1 under the hood). We have not migrated to StoreKit 2 on the client yet. We have not been setting SKPayment.applicationUsername on outgoing purchases, so every transaction we've ever produced has appAccountToken: null in its v2 notification. This question is purely about what the server-side notification can tell us, given the current client state above. What we're trying to figure out A user can resubscribe to an expired subscription in two different places: In-app — the user opens our app and re-purchases through our normal in-app purchase flow. App Store — the user goes to Settings → Apple ID → Subscriptions and resubscribes from the system UI, without ever returning to the app. Both paths trigger a SUBSCRIBED notification (subtype RESUBSCRIBE) with structurally identical payloads as far as we can tell — same shape for data.transactionInfo, data.renewalInfo, etc. From the notification alone we can't decide which path produced it. The reason this matters: in our system, the two paths require different business handling: In-app path: the user may have signed in to a different business account in our app. The new subscription should be attributed to whoever paid in the app just now, not to the previous owner of originalTransactionId. App Store path: there is no in-app signal, so the business owner can only be inferred from the previous originalTransactionId mapping. If we get it wrong, the subscription's entitlement ends up on the wrong business account. What we do today Because we can't tell the paths apart from the notification, we defer processing for a few minutes and check whether an in-app order for the same transaction has arrived in the meantime: If an in-app order shows up → it's the in-app path; attribute to the in-app account. If nothing shows up after the delay → assume App Store path; fall back to the previous owner mapping. This works but adds latency to entitlement activation and forces us to build a deferred-retry queue with idempotency against the in-app callback path. Possible direction: appAccountToken / applicationUsername We noticed that v2 notifications carry transactionInfo.appAccountToken, and the docs suggest that StoreKit 1's SKPayment.applicationUsername (when it's a valid UUID) is mirrored into this field. In theory, if we start setting it on every in-app purchase from the Flutter client, the field could double as a path discriminator on the server: appAccountToken != null → in-app path (only the app can set it), and we even get the business user id for free appAccountToken == null → App Store path (no UI to populate it) But we have some open questions before committing to this direction: Questions Is there an existing signal in ResponseBodyV2 / JWSTransactionDecodedPayload / JWSRenewalInfoDecodedPayload that distinguishes these two paths, that I might be missing? Can the same distinction be obtained via getAllSubscriptionStatuses / getTransactionHistory / any other Server API endpoint? Is applicationUsername (StoreKit 1) still a reliable way to populate appAccountToken on v2 notifications today? Specifically: Are there format constraints beyond "valid UUID" that cause Apple to drop the value? Any known differences between sandbox and production in how it's mirrored? Does the App Store path ever strip or overwrite a previously-set value when the same originalTransactionId is reused? For existing subscriptions where applicationUsername was never set (which is all of ours today, since we've never polient), is there any way to retroactively distinguish the in-app vs App Store path? Or is timing-based deferred matching theonly option for that cohort, even after we start setting the value on new purchases? If neither (1) nor (2) is currently possible, is the timing-based heuristic we use today the pattern Apple expects developers to follow, or is there a recommended approach we're missing? A small suggestion, if it turns out there's no existing way If the information genuinely isn't exposed today, it might be worth surfacing a salesChannel-style field on the transaction, similar to what Google Play Developer API exposes on Order.salesChannel (IN_APP, PLAY_STORE, etc.). That would let server-side handlers route each event to the correct business owner immediately, regardless of whether appAccountToken was set, and would also cover legacynt never had a chance to populate it. Thanks — happy to share sample payloads or more detail if helpful.
1
0
159
3w
Clarification on App Store Review Guideline for multi-person subscription model
Hi everyone, I am working on an iOS app with a subscription-based model, and I need some clarification regarding App Store Review Guideline. The app allows one account holder to manage access for multiple people under the same account. Each person may need subscription-based access to certain digital features within the app. In this scenario, the subscription requirement is not limited to a single user under one Apple ID. The account holder may add multiple members/dependents, and access may vary based on the subscription status associated with those people. My question is: If the subscription is managed through our backend and the app locks or unlocks digital features based on that subscription status, would Apple consider this a violation for not using In-App Purchase? I would like to understand whether Apple expects In-App Purchase to be implemented in this type of multi-person subscription model, even when the subscription is managed at the account/member level rather than as a simple single-user plan. Any guidance or experience with similar review scenarios would be helpful. Thanks.
1
0
130
3w
Production StoreKit silently omits one approved auto-renewable subscription product — sandbox returns it correctly, sudden onset 2026-05-09
Hi all, Reporting an active production issue in case anyone else is seeing the same pattern, or has insight into what could cause this. Symptom As of 2026-05-09 morning, one specific auto-renewable subscription product is silently absent from Production StoreKit responses on our live App Store build. The product is still 'Approved' in App Store Connect, all metadata is intact, no error code is returned — the product simply does not appear in the products array. The other 3 products in the same subscription group continue to work normally. 100% of production users are affected. Setup App: live on App Store, version 1.0.0 (build 8) Subscription group with 4 auto-renewable products: standard_monthly_799 ✅ returns correctly standard_annual_6999 ✅ returns correctly unlimited_monthly_1299 ❌ MISSING from production response unlimited_annual_9999 ✅ returns correctly SDK: purchases_flutter (RevenueCat) → StoreKit Same physical device, same code, same RC config behaves correctly in Sandbox — all 4 products are returned and a sandbox purchase of unlimited_monthly_1299 succeeds. Timeline 2026-05-08: working correctly, purchases succeeding normally 2026-05-09 morning: product silently disappears from production StoreKit responses No app update was submitted between those dates No App Store Connect changes were made Onset was simultaneous across all production users at one timestamp What I've verified App Store Connect: Product status: Approved All territories enabled, all prices configured (no N/A in any territory) Subscription group correctly contains all 4 products No 'Submit for Review' pending changes Product attached to live app version 1.0.0 (8) Tax category: Match to parent app Family Sharing: Off (consistent with the working products) Paid Applications Agreement: Status: Active Banking and Tax forms: Active RevenueCat dashboard: All 4 products show Store Status: Approved Default offering contains all 4 packages iOS attachment for the affected product is intact No warnings or sync errors Sandbox StoreKit (today): flutter run (debug) on physical device → all 4 products returned flutter run --release on physical device → all 4 products returned Sandbox purchase of unlimited_monthly_1299 succeeds Production StoreKit (today, broken): App Store-downloaded 1.0.0 (8) on multiple users' devices Multiple Apple IDs / multiple devices / multiple regions — all reproduce Only unlimited_monthly_1299 affected; other 3 products fine Why this looks server-side Sudden simultaneous onset across all users No code or config change preceded onset Sandbox unaffected, only Production affected Single product affected, not the whole subscription group or app No error returned — silent omission only Cannot reproduce with locally signed builds, only with App Store-distributed binary This pattern is consistent with a server-side product indexing or fronting issue specific to one product in Production StoreKit. As a developer I don't have visibility into Apple's product-serving infrastructure to investigate further — looking for guidance from anyone who has seen this before. Questions for the community Has anyone else seen a single auto-renewable subscription silently drop out of Production StoreKit responses while remaining Approved in ASC, with no error code returned? Is there any internal product-state flag (beyond what's exposed in the ASC UI) that could cause Production StoreKit to silently omit a product? Anything similar to a hidden 'review hold' or 'price tier reconciliation' state? Has the asymmetry between RevenueCat package identifiers (Standard uses RC's $rc_monthly/$rc_annual default identifiers, Premium uses custom premium_monthly/premium_annual identifiers) ever been implicated in this kind of failure? RC support has been notified, but worth asking publicly. For anyone who has resolved a similar issue: what action ended up clearing it — ASC re-save, RC re-sync, Apple Support escalation, or did it self-resolve after Apple-side cache propagation? Filings in progress ASC Contact Us ticket: filed Apple DTS technical incident: filed RevenueCat support ticket: filed Feedback Assistant report: in progress Will update this thread with the resolution path once we have one. Thanks, — Kin Pong Lo (developer, Alice: AI English Tutor)
0
0
238
3w
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
0
0
44
3w
How to get IAP/Subscription off "Waiting for Review"
I'm trying to get an app with a subscription through apple review and it keeps failing because the IAP/Subscription component is active, so the payflow never completes for the reviewer (i think?). How do I get the review team to approve the subscription first, then test the app payflow? Have tried to explain it in the latest App Review reply thread. Am i missing something? This is my first time building an app and trying to get it on the app store. Thank you!
1
0
187
3w
Subscriptions not reviewed with App
Hello, I had an App approved several days ago. But the subscription which is a necessity for most potential users is still marked 'Awaiting Review' This results in users seeing 'unable to load subscription' when attempting to use the app. Not exactly the start I or they, were hoping for. After several days like this, I had hoped the review team would look at the subscription. But Apple support tell me they likely won't because the App itself is already approved, and the subscription won't be seen by them. Can anyone here tell me how best to proceed? This does not help my reputation, and I need to resolve it quickly to limit the damage. Many thanks
0
0
41
3w
Unlocking a demo mode without IAP
I am aware of the following in the App Review Guidelines; 3.1.1 If you want to unlock features or functionality within your app, (by way of example: subscriptions, in-game currencies, game levels, access to premium content, or unlocking a full version), you must use in-app purchase. Apps may not use their own mechanisms to unlock content or functionality, such as license keys, augmented reality markers, QR codes, cryptocurrencies and cryptocurrency wallets, etc. The app itself operates normally, but imposes limits after a limited time of use. Purchasing the full version removes these limits. This is a one-time IAP, not a subscription. My app is aimed at professionals within the entertainment industry, and will only ever be used within a theatre or other similar venue. I do not intend to provide any other paid route to the full version than via the App Store. However, what I would like to do is provide free use at certain events and to students in their educational venues (e.g. college theatres etc)- is it acceptable to use an external mechanism (e.g. a server based API) to temporarily remove the limitations whilst in that venue? Or, likewise, provide an extension to the free trial period for specific uses. Note this is not a purchase, as there is no payment. Therefore there is no revenue outside of the App Store (which surely is the point of the mandate to use IAP for this purpose) Also, it's not fully 'unlocking' the app (the user doesn't get the full version, they just aren't bound by the trial limit timer when within that venue or for a limited time) I'm aware that another route would be to put a different version of the app in the store that requires a username and password for use (for example) and then provide those credentials to log in - as there's lots of apps that follow that model, but it seems clunky to require the user to download a different app.
1
0
304
3w
Korea subscription consent: Timing mismatch between push notifications and Settings consent option
Hi all, I've been observing what appears to be a timing mismatch in how Apple handles Korea trial-to-paid consent, and I wanted to see if other developers are seeing the same thing. Per Korean regulations effective Feb 14, 2025, Apple must obtain explicit user consent before converting a free trial to a paid subscription. Apple handles this via email, push notifications, and an in-app consent option accessible from Settings > Subscriptions. For a 7-day trial in the Republic of Korea storefront, I'm observing: Consent push notifications (Agree to continue your subscription without interruption) start arriving ~1 day after trial redemption, at roughly hourly frequency. However, when the user taps the push and navigates to Settings > Subscriptions, there is no consent option available. The only visible action is "Cancel Free Trial". The consent option only becomes available around day 4 of the trial (i.e., 3 days before renewal, matching Apple's documented messaging cadence [1]). For the first ~3 days, users receive hourly push notifications they cannot act on. The only way to stop them is to cancel the subscription entirely. This is happening across multiple apps in the Korean App Store, so it appears to be a platform-level behavior rather than an app-specific issue. Is anyone else observing this behavior? Any insight from Apple engineers or other developers would be greatly appreciated. [1] https://developer.apple.com/help/app-store-connect/reference/in-app-purchases-and-subscriptions/consent-for-subscription-offer-conversions
1
0
355
3w
How to set up a subscription correctly
Hi to you all, I have a problem with setting up a subscription for an app for the first time. I keep getting a rejection with the message under Guideline 2.1(b) that “one or more of the In-App Purchase products have not been submitted for review.” I don’t know what to add anymore. I only have two monthly subscriptions. I set them up and selected them in the version description and submitted the package. There‘a not more information what exactly is missing. The only other information is the following: “Note you must provide an App Review screenshot in App Store Connect in order to submit In-App Purchases for review.” I’d be glad to get some advice.. Thank you in advance for your help!!
2
0
163
3w
Subscriptions stuck in "Waiting for Review" after multiple app version approvals
I have two auto-renewable subscriptions (RedBird.Monthly and RedBird.yearly) that have been stuck in "Waiting for Review" status through 4 separate app version submissions and approvals. Each time I submit a new app version, the app itself gets approved and released, but the subscriptions remain in "Waiting for Review" and are never reviewed alongside it. I have: Added screenshots to both subscriptions under Review Information Filled in all required localization fields Submitted the app with a build attached each time Tried clicking "Submit for Review" on each subscription individually The subscriptions are part of a subscription group called "RedBird Premium." The app is a Capacitor-based iOS app (com.redbird.wellness). Has anyone experienced this? Is there a specific step required to explicitly link subscriptions to an app version submission in the current App Store Connect UI? The "In-App Purchases and Subscriptions" section described in Apple's documentation does not appear on my version page. Any help appreciated.
Replies
1
Boosts
0
Views
264
Activity
2w
My new app in review for over 9 days
Hi, I've been developing and releasing apps on app store for a while now. Around 11 days ago, I sent my latest (3rd) application to review, soon enough got a rejection message with guidelines. It was normal for me because it happens on all applications, same day I addressed all issues. Uploaded a new build, wrote in review notes that what I did to fix these guideline issues. However since that time my app is stuck on "Waiting for Review" I would take that as normal but there is one strange point, when I go to "Subscription" page, my 3 subscriptions are stuck "In Review" for over 9 days. Is it because I tried to release the app directly with a subscription method included? I don't know. I can not remove the subscription now to update the app without any pro features either. Contacted Apple Developer Support, however no answers from there also. Did anyone else had a problem like this, and how did you reach to a fix? Thank you
Replies
0
Boosts
0
Views
93
Activity
2w
IOS free MacOs paid error
Hi alll, ive built an iOS and macOS app and made the iOS a free download, the macOS is a paid subscription but the subscription isnt work for some reason can anyone help - when I download the macOS version it just states no active subscription but all looks good on the appstore
Replies
0
Boosts
0
Views
100
Activity
2w
Auto-renewable subscriptions stuck "In Review" since 10 May — app approved (App ID: 6743341470)
I'm hoping someone from the App Review team can help. My App ID: 6743341470 is Ready for Distribution, but both auto-renewable subscriptions have been stuck in "In Review" since May 10 with no update. Subscriptions: Subscription Group ID: 22039292 Account status: Paid Apps Agreement: Active Banking and tax: Complete Localization: Approved (Since 11 May) Resolution Center: No outstanding items What I've tried: Apple Developer Support case 20000114086909 — escalated thrice, support confirmed nothing is concerning but no movement. All they said was wait with no definite timeline. This is my first app and these subscriptions are blocking my launch. Any help from the App Review team would be greatly appreciated.
Replies
1
Boosts
0
Views
185
Activity
2w
Auto-renewable subscriptions stuck "In Review" since 10 May — app approved (App ID: 6743341470)
I'm hoping someone from the App Review team can help. My App ID: 6743341470 is Ready for Distribution, but both auto-renewable subscriptions have been stuck in "In Review" since May 10 with no update. Subscriptions: Subscription Group ID: 22039292 Account status: Paid Apps Agreement: Active Banking and tax: Complete Localization: Approved Resolution Center: No outstanding items What I've tried: Expedited review request submitted Apple Developer Support case 20000114086909 — escalated thrice, support confirmed nothing is concerning but no movement. All they said was wait with no definite timeline. This is my first app and these subscriptions are blocking my launch. Any help from the App Review team would be greatly appreciated.
Replies
0
Boosts
0
Views
174
Activity
2w
StoreKit2 does not provide an update when subscription was cancelled
I am testing a situation when user cancels auto renewable subscription (via StoreKit->Manage Transactions window). The problem is StoreKit2 does not provide an update when subscription was cancelled. I started using demo from apple developer.apple.com/documentation/storekit/in-app_purchase/implementing_a_store_in_your_app_using_the_storekit_api to test this behaviour in order to get rid of possible mistakes in my implementation, but result is the same - when user cancels subscription app does not receive any storekit events (change in renewal info, update in current entitlements, transaction status - nothing) and only after app's relaunch it fetches everything from scratch and finally updates UI. I tried to wait for up to 20 minutes to check whether this update in transaction (subscription) status will be delivered to the app - still nothing. So the problem, as I see it, is that if user cancels subscription and then does not relaunch the app he can continue to use the app for free for a long time. In this regard I have several questions: is it expected behavior of StoreKit2? If yes - why? Does it happen in Test Flight mode or in production env as well? If it's not expected behavior then is it correct to fix it with checking (lets say once in an hour) user's current entitlements (I tried and it seems to work ok) or there are better solutions?
Replies
2
Boosts
3
Views
729
Activity
2w
First subscription stuck in "Developer Action Needed", no IAP section on version page, reviewer hits "product is not available for purchase" — works fine on my own TestFlight install
I'm preparing my first App Store submission and have hit a chain of issues that appear to be backend state problems I can't resolve from the App Store Connect UI. I've already opened a DTS case but wanted to ask here in case anyone has seen this combination before. Setup: iOS app with first-time subscriptions (auto-renewable, 7-day free trial) Two products: bitcoinhq_pro_monthly and bitcoinhq_pro_annual Both in the same subscription group "Bitcoin HQ Pro" Paid Apps Agreement is Active Bundle ID, prices (all 175 territories including United States), intro offers ("Free for the first week" in all territories), localizations all configured Important context: On my own iPad (TestFlight build, signed into my normal sandbox account), the full flow works perfectly — paywall loads on first launch after install, both products show with correct prices, tapping Subscribe opens the StoreKit sheet, purchase completes, the entitlement grants, and Pro features unlock. So the app code and RevenueCat configuration are working. The issues below appear to be App Store Connect backend state problems. The issues, in the order I hit them: bitcoinhq_pro_monthly is stuck in "Developer Action Needed." I cannot identify which field is flagged — all required sections (price, availability, localization, screenshot, review notes, tax category) appear complete. Cannot save edits to the English (U.S.) localization for the monthly subscription. The localization editor returns: "There was an error with editing your App Store localization. Try again later." This has persisted across multiple browsers (Safari, Chrome, incognito), sign-out/sign-in cycles, multiple days, with Apple System Status reporting all services green, and with the description retyped manually rather than pasted. Cannot submit the monthly subscription standalone. Clicking "Submit for Review" returns: "Your subscription cannot be submitted for review. Your first subscription must be submitted with a new app version." The annual subscription is in "Waiting for Review" — saved successfully when first created. The "In-App Purchases and Subscriptions" section is missing from my App Version 1.0 page. Per ASC's own messaging, this is where I'm supposed to attach my first subscriptions before submitting the version. The section is not present anywhere on the version page. Reviewer rejection with "The product is not available for purchase." App Review Guideline 2.1(b). Tapping Subscribe in the reviewer's environment results in this StoreKit error on iPad Air 11" M3 / iPadOS 26.4.2 — but the same build on my own devices completes the purchase without issue. My read: issues 1–4 appear to be a single backend state problem with the monthly product or subscription group. Issue 5 appears to be downstream — sandbox returns the products for fetch but refuses the purchase from the reviewer's clean environment because the product isn't in a properly submittable state. Has anyone seen this combination? Any way to surface the "In-App Purchases and Subscriptions" section, or work around the localization save error? Or is the only path through DTS? Thanks in advance.
Replies
0
Boosts
0
Views
119
Activity
2w
Subscription cannot be attached to new binary, but the reviewers reject the subscription because it needs to be attached with a new binary.
Currently our app Juris: Learn the Law has consumable IAPs available publicly. We've recently added a subscription to a new update, but since we already added consumable IAPs, we can only submit new IAP on their own and cannot attach it to a new binary. The issue is that when we submit the subscription for review, it gets rejected and the reviewers respond that the subscription needs to be included with a new binary, even though we can't attached it to a new binary. We submitted a new binary at the same time we submitted a new subscription, but the new binary would be approved and the subscription would be rejected. The update with the subscription is available, but the subscription isn't, meaning users cannot use the new features which require the subscription.
Replies
2
Boosts
0
Views
144
Activity
2w
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
Replies
2
Boosts
0
Views
116
Activity
3w
Apple Subscription Offer Code Behavior
I would like to ask for clarification regarding the specifications of Apple Subscriptions. We are currently planning a subscription discount campaign using Offer Codes, and during testing we encountered the following issue. Test scenario: A user who does not have our app installed accesses a URL that contains an Offer Code. The App Store opens and displays the details of the Offer Code. The user reviews the offer and proceeds, at which point the App Store prompts the user to install our app. The user installs the app and launches it. Issue: The subscription remains in an unpurchased state. From the app implementation side, when the app launches, we attempt to retrieve transactions held by Apple using unfinishedTransactions. However, no transaction is returned, so the app cannot transition the user to a subscribed state. In contrast, when a user who already has the app installed accesses the Offer Code URL (step 1), the app can successfully retrieve the unfinished transaction via unfinishedTransactions on launch and correctly switch the user to a subscribed state. Could you please advise on the root cause of this behavior, or whether there is a recommended workaround for this scenario?
Replies
0
Boosts
0
Views
95
Activity
3w
App Store Server Notification v2: how to distinguish a resubscription that happened in-app from one that happened in Settings → Subscriptions?
Context We're handling App Store subscriptions on the server side using App Store Server Notification v2. Our pipeline currently identifies each event by transactionId and originalTransactionId. A few notes about our client: Our app is built with Flutter and uses the standard in_app_purchase plugin layer to drive App Store purchases (StoreKit 1 under the hood). We have not migrated to StoreKit 2 on the client yet. We have not been setting SKPayment.applicationUsername on outgoing purchases, so every transaction we've ever produced has appAccountToken: null in its v2 notification. This question is purely about what the server-side notification can tell us, given the current client state above. What we're trying to figure out A user can resubscribe to an expired subscription in two different places: In-app — the user opens our app and re-purchases through our normal in-app purchase flow. App Store — the user goes to Settings → Apple ID → Subscriptions and resubscribes from the system UI, without ever returning to the app. Both paths trigger a SUBSCRIBED notification (subtype RESUBSCRIBE) with structurally identical payloads as far as we can tell — same shape for data.transactionInfo, data.renewalInfo, etc. From the notification alone we can't decide which path produced it. The reason this matters: in our system, the two paths require different business handling: In-app path: the user may have signed in to a different business account in our app. The new subscription should be attributed to whoever paid in the app just now, not to the previous owner of originalTransactionId. App Store path: there is no in-app signal, so the business owner can only be inferred from the previous originalTransactionId mapping. If we get it wrong, the subscription's entitlement ends up on the wrong business account. What we do today Because we can't tell the paths apart from the notification, we defer processing for a few minutes and check whether an in-app order for the same transaction has arrived in the meantime: If an in-app order shows up → it's the in-app path; attribute to the in-app account. If nothing shows up after the delay → assume App Store path; fall back to the previous owner mapping. This works but adds latency to entitlement activation and forces us to build a deferred-retry queue with idempotency against the in-app callback path. Possible direction: appAccountToken / applicationUsername We noticed that v2 notifications carry transactionInfo.appAccountToken, and the docs suggest that StoreKit 1's SKPayment.applicationUsername (when it's a valid UUID) is mirrored into this field. In theory, if we start setting it on every in-app purchase from the Flutter client, the field could double as a path discriminator on the server: appAccountToken != null → in-app path (only the app can set it), and we even get the business user id for free appAccountToken == null → App Store path (no UI to populate it) But we have some open questions before committing to this direction: Questions Is there an existing signal in ResponseBodyV2 / JWSTransactionDecodedPayload / JWSRenewalInfoDecodedPayload that distinguishes these two paths, that I might be missing? Can the same distinction be obtained via getAllSubscriptionStatuses / getTransactionHistory / any other Server API endpoint? Is applicationUsername (StoreKit 1) still a reliable way to populate appAccountToken on v2 notifications today? Specifically: Are there format constraints beyond "valid UUID" that cause Apple to drop the value? Any known differences between sandbox and production in how it's mirrored? Does the App Store path ever strip or overwrite a previously-set value when the same originalTransactionId is reused? For existing subscriptions where applicationUsername was never set (which is all of ours today, since we've never polient), is there any way to retroactively distinguish the in-app vs App Store path? Or is timing-based deferred matching theonly option for that cohort, even after we start setting the value on new purchases? If neither (1) nor (2) is currently possible, is the timing-based heuristic we use today the pattern Apple expects developers to follow, or is there a recommended approach we're missing? A small suggestion, if it turns out there's no existing way If the information genuinely isn't exposed today, it might be worth surfacing a salesChannel-style field on the transaction, similar to what Google Play Developer API exposes on Order.salesChannel (IN_APP, PLAY_STORE, etc.). That would let server-side handlers route each event to the correct business owner immediately, regardless of whether appAccountToken was set, and would also cover legacynt never had a chance to populate it. Thanks — happy to share sample payloads or more detail if helpful.
Replies
1
Boosts
0
Views
159
Activity
3w
Clarification on App Store Review Guideline for multi-person subscription model
Hi everyone, I am working on an iOS app with a subscription-based model, and I need some clarification regarding App Store Review Guideline. The app allows one account holder to manage access for multiple people under the same account. Each person may need subscription-based access to certain digital features within the app. In this scenario, the subscription requirement is not limited to a single user under one Apple ID. The account holder may add multiple members/dependents, and access may vary based on the subscription status associated with those people. My question is: If the subscription is managed through our backend and the app locks or unlocks digital features based on that subscription status, would Apple consider this a violation for not using In-App Purchase? I would like to understand whether Apple expects In-App Purchase to be implemented in this type of multi-person subscription model, even when the subscription is managed at the account/member level rather than as a simple single-user plan. Any guidance or experience with similar review scenarios would be helpful. Thanks.
Replies
1
Boosts
0
Views
130
Activity
3w
SKU not found [Subscription & In-app purchases] , Test Env
I have Subscription and In-app purchases product ids [Waiting in Review status] created on app store , when i send the product ids from the app to store for purchase , its returning sku-not-found code in Sandbox/Testflight envirionment , I tried multiple times the result is same. Please guide me on this
Replies
3
Boosts
0
Views
143
Activity
3w
Production StoreKit silently omits one approved auto-renewable subscription product — sandbox returns it correctly, sudden onset 2026-05-09
Hi all, Reporting an active production issue in case anyone else is seeing the same pattern, or has insight into what could cause this. Symptom As of 2026-05-09 morning, one specific auto-renewable subscription product is silently absent from Production StoreKit responses on our live App Store build. The product is still 'Approved' in App Store Connect, all metadata is intact, no error code is returned — the product simply does not appear in the products array. The other 3 products in the same subscription group continue to work normally. 100% of production users are affected. Setup App: live on App Store, version 1.0.0 (build 8) Subscription group with 4 auto-renewable products: standard_monthly_799 ✅ returns correctly standard_annual_6999 ✅ returns correctly unlimited_monthly_1299 ❌ MISSING from production response unlimited_annual_9999 ✅ returns correctly SDK: purchases_flutter (RevenueCat) → StoreKit Same physical device, same code, same RC config behaves correctly in Sandbox — all 4 products are returned and a sandbox purchase of unlimited_monthly_1299 succeeds. Timeline 2026-05-08: working correctly, purchases succeeding normally 2026-05-09 morning: product silently disappears from production StoreKit responses No app update was submitted between those dates No App Store Connect changes were made Onset was simultaneous across all production users at one timestamp What I've verified App Store Connect: Product status: Approved All territories enabled, all prices configured (no N/A in any territory) Subscription group correctly contains all 4 products No 'Submit for Review' pending changes Product attached to live app version 1.0.0 (8) Tax category: Match to parent app Family Sharing: Off (consistent with the working products) Paid Applications Agreement: Status: Active Banking and Tax forms: Active RevenueCat dashboard: All 4 products show Store Status: Approved Default offering contains all 4 packages iOS attachment for the affected product is intact No warnings or sync errors Sandbox StoreKit (today): flutter run (debug) on physical device → all 4 products returned flutter run --release on physical device → all 4 products returned Sandbox purchase of unlimited_monthly_1299 succeeds Production StoreKit (today, broken): App Store-downloaded 1.0.0 (8) on multiple users' devices Multiple Apple IDs / multiple devices / multiple regions — all reproduce Only unlimited_monthly_1299 affected; other 3 products fine Why this looks server-side Sudden simultaneous onset across all users No code or config change preceded onset Sandbox unaffected, only Production affected Single product affected, not the whole subscription group or app No error returned — silent omission only Cannot reproduce with locally signed builds, only with App Store-distributed binary This pattern is consistent with a server-side product indexing or fronting issue specific to one product in Production StoreKit. As a developer I don't have visibility into Apple's product-serving infrastructure to investigate further — looking for guidance from anyone who has seen this before. Questions for the community Has anyone else seen a single auto-renewable subscription silently drop out of Production StoreKit responses while remaining Approved in ASC, with no error code returned? Is there any internal product-state flag (beyond what's exposed in the ASC UI) that could cause Production StoreKit to silently omit a product? Anything similar to a hidden 'review hold' or 'price tier reconciliation' state? Has the asymmetry between RevenueCat package identifiers (Standard uses RC's $rc_monthly/$rc_annual default identifiers, Premium uses custom premium_monthly/premium_annual identifiers) ever been implicated in this kind of failure? RC support has been notified, but worth asking publicly. For anyone who has resolved a similar issue: what action ended up clearing it — ASC re-save, RC re-sync, Apple Support escalation, or did it self-resolve after Apple-side cache propagation? Filings in progress ASC Contact Us ticket: filed Apple DTS technical incident: filed RevenueCat support ticket: filed Feedback Assistant report: in progress Will update this thread with the resolution path once we have one. Thanks, — Kin Pong Lo (developer, Alice: AI English Tutor)
Replies
0
Boosts
0
Views
238
Activity
3w
Auto-renewable subscriptions returning false on RevenueCat Purchase — unable to test in sandbox without Xcode
Hello, I am experiencing a persistent issue with auto-renewable subscriptions during App Review. Despite verifying all configurations, the subscription purchase flow fails and the app continues to be rejected under Guideline 2.1(b). Environment App built with FlutterFlow (no Xcode access, Windows-only development environment) purchases_flutter SDK v9.9.5 (RevenueCat) iOS deployment target: iOS 13+ Review device reported by Apple: iPhone 17 Pro Max, iOS 26.4.2 Configuration verified App Store Connect: Subscription group plateup_pro created and configured Products plateup_pro:monthly (1 month) and plateup_pro:yearly (1 year) created with all required fields Both products status: Waiting for Review Paid Apps Agreement: Active as of May 8, 2026 All tax forms active: Brazil Tax Form, W-8BEN-E, W-8BEN Banking account: Active RevenueCat dashboard: In-App Purchase Key configured and validated: Valid credentials confirmed App Store Connect API Key configured and validated: Valid credentials confirmed Apple Server to Server Notifications: configured correctly Entitlements, Offerings and Packages: correctly configured and linked to both products Purchase tracking: All purchases in RevenueCat (default) App (FlutterFlow): RevenueCat Purchase action configured for both $rc_monthly and $rc_annual packages Action output variables isMonthly and isYearly checked after purchase Both FALSE paths now display an informational alert: "Purchase unavailable. Please try again later." Paywall screen includes subscription title, duration, price, auto-renewal disclosure, EULA and Privacy Policy links, and Restore Purchases button The problem When the reviewer taps "Start 7-Day Free Trial", the RevenueCat Purchase action returns false for both isYearly and isMonthly, causing the informational alert to appear instead of completing the purchase. The reviewer sees this as a bug. Our diagnosis suggests this may be caused by one or more of the following: Subscription products stuck in "Waiting for Review" status — StoreKit may not return products that have not yet been approved, even in the sandbox environment. This appears to be the circular dependency described in this forum thread: https://developer.apple.com/forums/thread/818349 First-time subscription submission flow — The App Store Connect UI shows the message: "Your first subscription must be submitted with a new app version. Create your subscription, then select it from the app's In-App Purchases and Subscriptions section on the version page before submitting the version to App Review." We have attempted to add the subscriptions to the version page before submitting, but the option to select them was not consistently available. Possible SDK compatibility issue with iOS 26 — The purchases_flutter SDK version is managed by the FlutterFlow platform, and we cannot rule out a compatibility issue between the SDK and StoreKit on iOS 26.4.2. Sandbox testing limitation We are unable to reproduce or verify the issue locally because: The app is developed entirely on Windows using FlutterFlow We have no access to Xcode or macOS Enabling Developer Mode on the iOS test device requires Xcode, which we do not have Without Developer Mode, the Sandbox Account option does not appear in iOS Settings → App Store Our only available testing method is TestFlight, which does not support sandbox purchases without Developer Mode enabled This means we cannot confirm whether the purchase flow works before submitting to App Review, creating a dependency on the reviewer's sandbox environment. Questions Can StoreKit return subscription products in the reviewer's sandbox environment while those products are still in "Waiting for Review" status? Or must the products be approved first? Is there a way to correctly attach auto-renewable subscriptions to the app version submission from App Store Connect, given that we do not have access to Xcode or the App Store Connect API? Is there a known compatibility issue between purchases_flutter v9.9.5 (RevenueCat) and StoreKit on iOS 26.4.2 that could cause the purchase action to return false? Is there any alternative way to test sandbox purchases on iOS without enabling Developer Mode — for example, directly through TestFlight? Any guidance would be greatly appreciated. We have now gone through multiple review cycles with the same result and have exhausted all configuration options we can verify from our environment. Thank you.
Replies
0
Boosts
0
Views
44
Activity
3w
How to get IAP/Subscription off "Waiting for Review"
I'm trying to get an app with a subscription through apple review and it keeps failing because the IAP/Subscription component is active, so the payflow never completes for the reviewer (i think?). How do I get the review team to approve the subscription first, then test the app payflow? Have tried to explain it in the latest App Review reply thread. Am i missing something? This is my first time building an app and trying to get it on the app store. Thank you!
Replies
1
Boosts
0
Views
187
Activity
3w
Subscriptions not reviewed with App
Hello, I had an App approved several days ago. But the subscription which is a necessity for most potential users is still marked 'Awaiting Review' This results in users seeing 'unable to load subscription' when attempting to use the app. Not exactly the start I or they, were hoping for. After several days like this, I had hoped the review team would look at the subscription. But Apple support tell me they likely won't because the App itself is already approved, and the subscription won't be seen by them. Can anyone here tell me how best to proceed? This does not help my reputation, and I need to resolve it quickly to limit the damage. Many thanks
Replies
0
Boosts
0
Views
41
Activity
3w
Unlocking a demo mode without IAP
I am aware of the following in the App Review Guidelines; 3.1.1 If you want to unlock features or functionality within your app, (by way of example: subscriptions, in-game currencies, game levels, access to premium content, or unlocking a full version), you must use in-app purchase. Apps may not use their own mechanisms to unlock content or functionality, such as license keys, augmented reality markers, QR codes, cryptocurrencies and cryptocurrency wallets, etc. The app itself operates normally, but imposes limits after a limited time of use. Purchasing the full version removes these limits. This is a one-time IAP, not a subscription. My app is aimed at professionals within the entertainment industry, and will only ever be used within a theatre or other similar venue. I do not intend to provide any other paid route to the full version than via the App Store. However, what I would like to do is provide free use at certain events and to students in their educational venues (e.g. college theatres etc)- is it acceptable to use an external mechanism (e.g. a server based API) to temporarily remove the limitations whilst in that venue? Or, likewise, provide an extension to the free trial period for specific uses. Note this is not a purchase, as there is no payment. Therefore there is no revenue outside of the App Store (which surely is the point of the mandate to use IAP for this purpose) Also, it's not fully 'unlocking' the app (the user doesn't get the full version, they just aren't bound by the trial limit timer when within that venue or for a limited time) I'm aware that another route would be to put a different version of the app in the store that requires a username and password for use (for example) and then provide those credentials to log in - as there's lots of apps that follow that model, but it seems clunky to require the user to download a different app.
Replies
1
Boosts
0
Views
304
Activity
3w
Korea subscription consent: Timing mismatch between push notifications and Settings consent option
Hi all, I've been observing what appears to be a timing mismatch in how Apple handles Korea trial-to-paid consent, and I wanted to see if other developers are seeing the same thing. Per Korean regulations effective Feb 14, 2025, Apple must obtain explicit user consent before converting a free trial to a paid subscription. Apple handles this via email, push notifications, and an in-app consent option accessible from Settings > Subscriptions. For a 7-day trial in the Republic of Korea storefront, I'm observing: Consent push notifications (Agree to continue your subscription without interruption) start arriving ~1 day after trial redemption, at roughly hourly frequency. However, when the user taps the push and navigates to Settings > Subscriptions, there is no consent option available. The only visible action is "Cancel Free Trial". The consent option only becomes available around day 4 of the trial (i.e., 3 days before renewal, matching Apple's documented messaging cadence [1]). For the first ~3 days, users receive hourly push notifications they cannot act on. The only way to stop them is to cancel the subscription entirely. This is happening across multiple apps in the Korean App Store, so it appears to be a platform-level behavior rather than an app-specific issue. Is anyone else observing this behavior? Any insight from Apple engineers or other developers would be greatly appreciated. [1] https://developer.apple.com/help/app-store-connect/reference/in-app-purchases-and-subscriptions/consent-for-subscription-offer-conversions
Replies
1
Boosts
0
Views
355
Activity
3w
How to set up a subscription correctly
Hi to you all, I have a problem with setting up a subscription for an app for the first time. I keep getting a rejection with the message under Guideline 2.1(b) that “one or more of the In-App Purchase products have not been submitted for review.” I don’t know what to add anymore. I only have two monthly subscriptions. I set them up and selected them in the version description and submitted the package. There‘a not more information what exactly is missing. The only other information is the following: “Note you must provide an App Review screenshot in App Store Connect in order to submit In-App Purchases for review.” I’d be glad to get some advice.. Thank you in advance for your help!!
Replies
2
Boosts
0
Views
163
Activity
3w