IAP, wrong priceLocale

My devices are connected to the german app store. The current version of our app in the AppStore with IAP shows prices in €, that's correct. But when I create a new version of the app and let it run on a device with iOS 14, prices are in $.

On another device with iOS 13, prices are in €. I updated the iOS 13 device to iOS 14 and now I have the same issue on this device. Prices in $.

I printed current locale before call to the app store, and it's deDE (current).
priceLocale of the fetched products is en
US@currency=USD (fixed).
I have no idea how to fix it.
Answered by hakkib in 641360022
I installed my app through TestFlight. At first it again displayed only in USD. But when I tried the restore option of my app, and after entering Apple ID credentials (although the version in App Store does not ask for credentials if I have already signed in through settings) it displayed the correct currency. Interesting is that after uninstalling both the TestFlight version and the TestFlight app itself, running the app through Xcode 12 also displayed the correct currency.
Somehow the problem seems solved in my case.
What is your configuration in Settings › General › Language & Region?
More specifically, do you have Germany as a region?

Alternatively, you can display the price using an NumberFormatter with .currencyStyle, and eventually force the device's current locale if needed.

If that's still an issue, I'd encourage you to send a feedback.
I experience the same for my app. Regardless of the region selected, if I install my app using Xcode 12 on a iOS 14 phone the price is fetched as USD price only.

I tried Xcode 12.2 beta and the problem continues.

However there is no problem with iOS 13 or previous iPhone.

My same app currently on App Store loaded with Xcode 11 both shows correct price in iOS 14 and iOS 13 or previous versions.

Tried all the suggestions from Apple Staff but the problem is not solved.
This is a bug on the new Xcode. I solved it when I run the app on my device on Testflight and not from Xcode or on the simulator
Xcode 12.0.1 has not fixed the issue too.

At the moment it is not possible for me to load a new version to the App Store.

Let’s hope it gets fixed soon.
Displaying the price with NumberFormatter doesn't solve the issue because prices in Germany and the US are different.
And it doesn't depend on the Xcode version. Happens with Xcode 11.4 also. And with Xcode 11.4 I uploaded the current version to appstoreconnect. The current store version has no issue.
Even installing the app from TestFlight doesn't solve the problem.
I sent a feedback to apple. Hope it will be fixed soon.

Even installing the app from TestFlight doesn't solve the problem. I
sent a feedback to apple.

What was your bug number?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Feedback ID is FB8750506
FB8751659

This my feedback I’d.
Unfortunately, Xcode GM Seed Version 12.1 (12A7403) does not solve the problem either.
Accepted Answer
I installed my app through TestFlight. At first it again displayed only in USD. But when I tried the restore option of my app, and after entering Apple ID credentials (although the version in App Store does not ask for credentials if I have already signed in through settings) it displayed the correct currency. Interesting is that after uninstalling both the TestFlight version and the TestFlight app itself, running the app through Xcode 12 also displayed the correct currency.
Somehow the problem seems solved in my case.
Restoring the purchases in our app also worked for me.
Is this a confirmed bug on Apple's side and does it happen only for Testflight builds?
Can we trust that production users will get the correct currency and pricing?
Anyone have definite word on this after a submission? We are struggling with this as well. No confidence to submit our first IAP release given this bug in iOS 14. I can confirm iOS12 devices handle it correctly on TestFlight
I can confirm that after going live, price locales are being reported accurately!

I am experiencing this at the moment on tvOS 15 beta 19J5340a. When signed into a real account tied to the Spain App Store, the "priceLocale" field of a SKProduct fetched in our app is showing "GB" or Great Britain. The app is not available in the App Store in Great Britain.

I am able to observe this on Testflight but it may be occurring in production as well. I have created a feedback ticket with ID FB9579894.

IAP, wrong priceLocale
 
 
Q