In my TestFlight app, StoreKit reports the Japan storefront (JPN, ID 143462), but product prices are returned in USD.
Environment:
- iPhone 15, iOS 26.6.2
- TestFlight version 0.4.2 (build 52)
- Product ID: line_stamp_8pack_1980
- Product type: consumable
- Feedback Assistant report: FB25133058
Steps to reproduce:
- Sign out of the regular account under Media & Purchases.
- Sign in to a Sandbox Apple Account configured for Japan under Settings > Developer.
- Launch the TestFlight app and request product information.
Expected result: The current Japan price configured in App Store Connect is JPY 1,980. The base country is Japan, and no future price changes are listed.
Actual result:
- Storefront country: JPN
- Storefront ID: 143462
- Product price: 11.99
- Currency: USD
- Display price: $11.99
- StoreKit 1 priceLocale: en_US@currency=USD
I compared native StoreKit 2 Product.products(for:), StoreKit 1 SKProductsRequest, and expo-iap fetchProducts. All three returned the same USD price without errors. The storefront remained JPN before and after each request.
The issue persists after restarting the app and rebooting the iPhone. No purchase was performed.
What additional diagnostics or configuration checks would help identify why the product currency differs from the reported storefront? Is there a supported workaround for testing Japanese prices in this situation?