Hello Apple Developer Community,
I'm developing an iOS app called Rozděluj – společné výdaje (Bundle ID: cz.rozdeluj.rozdelujapp). StoreKit returns no products for any of our four In-App Purchases in TestFlight.
Environment
- iPhone running iOS 27.0.1
- Flutter 3.47.5
in_app_purchase3.3.1in_app_purchase_storekit0.4.13- TestFlight builds 57, 58 and diagnostic build 59
Products
cz.rozdeluj.plus.yearly— auto-renewable subscriptioncz.rozdeluj.unlimited.yearly— auto-renewable subscriptioncz.rozdeluj.plus.lifetime— non-consumablecz.rozdeluj.unlimited.lifetime— non-consumable
Diagnostic results
Flutter IAP:
isAvailable: true- Products returned: 0
- Not found IDs: all four
- Error:
storekit_no_response - Message:
StoreKit: Failed to get response from platform.
We also added an independent native Swift StoreKit 2 diagnostic using Product.products(for:) with the same four identifiers.
Native result:
status: okcount: 0foundIDs: []missingIDs: all four
The native query completed without throwing an error, but returned an empty product array.
Configuration verified
- Bundle ID matches App Store Connect.
- In-App Purchase capability is enabled.
- Paid Apps Agreement, bank account and tax forms are Active.
- Product IDs match exactly.
- Pricing and worldwide availability are configured.
- Czech localization is configured for the inspected product.
- Automatic App Store distribution signing is enabled in Codemagic.
All four IAPs currently have Rejected status following an App Review Guideline 3.1.2 rejection related to missing Terms of Use links. The app has since been updated to address that issue.
Questions
- Could the Rejected status prevent these products from being returned by StoreKit 2 in TestFlight Sandbox?
- Is there another App Store Connect or Sandbox configuration that could cause
Product.products(for:)to return an empty array without throwing an error? - What additional diagnostics would help identify the cause?
I would appreciate guidance before recreating any products or modifying the purchase implementation.
Thank you!