App name: Hold My Bouquet
Bundle ID: com.holdmybouquet.app
App Store Connect App ID: 6807080553
In-App Purchase Product ID: com.holdmybouquet.app.page_unlock (Non-Consumable, £3.99)
Our app was rejected on Guideline 2.1 because the reviewer could not complete this in-app purchase. Since the rejection, we have verified and corrected every configuration item we can control, but the purchase still fails identically in sandbox testing on a physical device.
Confirmed correct:
Paid Applications Agreement: Active
com.holdmybouquet.app.page_unlock: status "Ready to Submit," Cleared for Sale, pricing and availability set
Bundle ID matches exactly across Xcode, App Store Connect, and our purchase provider (RevenueCat)
Product ID matches exactly, no typos or case mismatches
Sandbox tester account verified and signed in on-device (Settings → Developer → Sandbox Account)
No local StoreKit Configuration file overriding real data (confirmed "None" in the Xcode scheme)
To rule out our purchase provider entirely, we bypassed it and called Apple's native StoreKit 2 API directly from the app:
let products = try await Product.products(for: ["com.holdmybouquet.app.page_unlock"])
This also returns zero products, with no error — confirming the issue is not a third-party SDK integration problem.
Has anyone seen this before, or can anyone from Apple advise what else to check? We are otherwise ready to resubmit for review.
1
0
43