StoreKit returns no in-app subscriptions on TestFlight despite correct App Store Connect configuration

Hello Applet, I’m experiencing an issue with StoreKit on a TestFlight build. My app uses auto-renewable subscriptions through StoreKit and RevenueCat. Configuration already verified: App installed through TestFlight (not debug). Bundle Identifier: com.ciborgu.vytalai Paid Applications agreement is active. In-App Purchase capability is enabled. Three auto-renewable subscriptions exist in App Store Connect. Product IDs match exactly between App Store Connect, RevenueCat and the application. RevenueCat initializes successfully. A Sandbox test account has been created. Tested on a physical iPhone. Device restarted and app reinstalled from TestFlight. VPN and iCloud Private Relay disabled. When attempting to purchase a subscription, the Apple payment sheet never appears. Our diagnostics indicate that StoreKit does not return any available products for the configured Product IDs, preventing the purchase sheet from opening. Expected Product IDs: vytalai_premium_monthly vytalai_premium_yearly vytalai_premium_yearly_intro Could you please verify if there is any issue with the App Store Connect configuration, StoreKit availability, or the processing state of these subscriptions on Apple’s side? If additional logs or diagnostics are required, I can provide them. Thank you.

I have already contacted Apple Developer Support regarding this same issue. Previously, I was advised to schedule a technical support meeting. However, when I requested the meeting, my request was declined because of the subject of my issue, so I was unable to speak with an Apple engineer. Since I have now completed all the recommended troubleshooting and the issue still persists, I would greatly appreciate it if this case could be reviewed by the appropriate technical team or a StoreKit engineer. Thank you for your assistance.

Hello -

TestFlight uses the Sandbox environment when testing In-App Purchases.

To troubleshoot issues with IAP products in a TestFlight build, please refer to this TechNote and review all of the topics covered to ensure your app and IAP products are correctly configured and ready for testing.

If you have addressed everything in the TechNote and are still having problems, please reply again to this thread with any additional details and we will be happy to try and assist further.

Thank you.

Hello,

Thank you for pointing me to TN3186. I have reviewed every item. Summary:

App: Vytal AI Bundle ID: com.ciborgu.vytalai ASC App ID: 6767160542 Team ID: JZF7CR3W8Z Test environment: TestFlight (build 115, version 1.1.0) Platform: Capacitor + RevenueCat Purchases SDK (@revenuecat/purchases-capacitor)

Subscription Product IDs (auto-renewable, subscription group "Vytal AI"):

  • vytalai_premium_monthly
  • vytalai_premium_yearly
  • vytalai_premium_yearly_intro

TN3186 checklist: ✓ Bundle ID matches ASC app record ✓ Explicit App ID (not wildcard) ✓ In-App Purchase capability enabled on App ID ✓ App signed with valid distribution profile via EAS ✓ Active Apple Developer membership ✓ Paid Apps Agreement: Active ✓ Banking and tax: complete ✓ Price and localizations on all 3 subscriptions ✓ No StoreKit Configuration file in project

Issue: When calling StoreKit via RevenueCat on a physical iPhone (TestFlight), Product.products / getProducts returns ZERO products for all 3 identifiers. Purchase sheet never appears. In-app diagnostic shows:

  • Bundle: com.ciborgu.vytalai (correct)
  • RevenueCat iOS API key present (appl_…)
  • StoreKit products[]: 0

I also run a minimal test (configure → getOfferings → purchasePackage) with the same result.

Could you please verify on your side whether these 3 subscription product IDs are available in sandbox for bundle com.ciborgu.vytalai? Is there a server-side block or metadata issue preventing sandbox catalog sync?

Device: [iPhone model], iOS [version] Sandbox tester: [email if created] Date/time of last test: [date]

Thank you.

StoreKit returns no in-app subscriptions on TestFlight despite correct App Store Connect configuration
 
 
Q