Hello,
I’ve uploaded a new build of my macOS app with the first two in-app purchases, but it was rejected under 2.1.0 Performance: App Completeness. After further investigation, it seems that the Apple review team is unable to fetch products. The following code:
private let productIDs = ["co.app.freetrial", "co.app.full"]
self.products = try await Product.products(for: productIDs)
is returning an empty array. (In the TestFlight build, it correctly returns the products.)
For me, everything works as expected via Xcode and on a fresh machine using TestFlight.
Here’s what I’ve tried so far:
-
The in-app purchases were added to the binary with the first build.
-
I confirmed that each in-app purchase is free of any yellow or red warning messages.
-
Downloaded the app from TestFlight and confirmed that all in-app purchases are available.
-
Updated the in-app purchase price in App Store Connect and verified that the new price is reflected in the app (to rule out any ID mismatches).
-
Reviewed all agreements to ensure no missing signatures. (A few sources online suggested that this could potentially cause issues with in-app purchases for the review team.)
-
I created a new build using a 3rd-party certificate and a provision profile. (Older builds - before adding in-app purchases - were signed with a development certificate and no provision profile, yet they still made it to the App Store. I’m not sure how that was possible or if it contributed to this issue.).
Despite these steps, the app continues to be rejected for the same reason. I’m struggling to understand how products are successfully fetched for testers via TestFlight while the review team repeatedly sees zero products.
Any guidance on how to resolve this would be greatly appreciated.
Thank you
Thank you for your post. We believe we have resolved this issue. If you continue to experience issues during review, please contact us.