Subscriptions unavailable during App Review, but loading and sandbox purchases work in our tests (RevenueCat / StoreKit)

Hello,

Our first release was rejected under Guideline 2.1(b) because subscriptions were unavailable during App Review. We have been unable to reproduce the issue and would appreciate guidance on further
diagnostics.

Review environment

  • App version: 1.0.0 (9)
  • Device: iPad Air 11-inch (M3)
  • OS: iPadOS 27.0.1
  • Internet connection: Active, according to the review message

The app integrates StoreKit through RevenueCat and offers three auto-renewable subscriptions.

We verified that :

  • The Paid Apps Agreement, banking information, and tax forms are active.
  • All three subscriptions and their subscription group are included in the submission.
  • The subscriptions are available in all countries and regions.
  • The submitted build uses the RevenueCat App Store SDK key, rather than a Test Store key.

We tested subscription loading 15 times across two networks, including on iPad. Prices loaded successfully, and we completed a sandbox purchase that unlocked Premium.

Additional diagnostics on an iPad Air 11-inch (M3) simulator running iPadOS 26.5 returned all three products both through a direct StoreKit Product.products(for:) request and through RevenueCat. No
local StoreKit configuration file was attached.

We have not reproduced the exact iPadOS 27.0.1 review environment. The simulator runtime is unavailable through our installed Xcode.

The rejection message states that subscriptions were unavailable, but does not identify whether product retrieval failed, the subscription options were missing, or a purchase attempt failed. We are
asking App Review for those details and a retry.

We were wondering:

  1. What additional diagnostics would help investigate product availability failures that occur only during App Review?
  2. Are there sandbox account or storefront conditions we should test beyond successful product loading and sandbox purchases?
  3. Is there a recommended way to collect useful StoreKit error information from a review session when the failure cannot be reproduced locally?

Thanks !