Hi,
I'm integrating in-app subscriptions using StoreKit 2 in my iOS app, and I've run into an issue where I'm unable to fetch any subscription products via:
let products = try await Product.products(for: productIDs)
This consistently returns an empty result (products.count == 0) when running on a real device using a sandbox account.
Here's some relevant context of my current setup:
This is the first version of the app adding in-app purchase subscriptions.
In-App Purchase products are configured in App Store Connect, and marked as "Ready to Submit". The products are attached to the app version, and fully saved.
A sandbox account is logged in on the test device.
StoreKit Configuration local debug works fine — I can simulate purchases locally from Xcode.
However, in the real sandbox environment, any attempt to fetch products returns no results.
In App Store Connect > Agreements, Tax, and Banking, I currently see:
Paid Application Agreement: Status = "Waiting for User Info"
Banking Info: “In Progress”
Tax Info: Not yet submitted
❓❓❓ My key question is:
Does the "Paid Applications Agreement" need to be fully active (including bank + tax info complete) before in-app purchase products can be fetched in the sandbox environment?
If so, it seems that this may be blocking my ability to:
Test real subscription flows with sandbox accounts
Pass App Store Review (since products cannot be loaded)
Any clarification would be greatly appreciated!
Thanks in advance.
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
StoreKit Test
App Store Connect
In-App Purchase