StoreKit prevents In-App purchases from being made by insisting the user's currently selected App Store is wrong although it isn't

Originator:kastansn
Number:rdar://19113176 Date Originated:2014-12-02
Status:Closed Resolved:
Product:OS X Product Version:10.10
Classification:Serious Reproducible:Always
 
I'm selling an OS X app on the Mac App Store which due to its intended purpose is useful in Germany only. Consequently, it isn't localized but available solely in German language: It doesn't employ Base localization and its Info.plist's CFBundleDevelopmentRegion key is set to German. On the Mac App Store it's correctly displayed as being available in German language only.

I have recently added In-App Purchase functionality to this app. It works fine but there is a major issue regarding localization: Whenever an user is trying to make an In-App Purchase, StoreKit displays an misleading alert insisting that the user is logged in to the wrong store and needs to switch to the German store because the In-App Purchase item is only available in the German store. Naturally, this scares away potential German customers as they of course *are* already logged in to the German store and the message that is displayed nevertheless makes no sense to them. Furthermore, within the app the selling price of the purchase is displayed using the wrong currency ($ instead of €) because StoreKit somehow doesn't honor the user's App Store region affiliation. Note: I'm making use of SKProduct's priceLocale property of course when displaying the price - this is not the cause of the issue.

This feels like a bug in StoreKit / the Mac App Store as not only mine but others' apps are affected by it, too. For example, please refer to this thread on the Developer Forums: https://devforums.apple.com/thread/255258
In fact, every (!) Mac app featuring In-App purchases seems to be affected. The issue occurs on OS X 10.10, OS X 10.9 isn't affected. Expedited investigation of this issue would be greatly appreciated because it prevents customers from making In-App purchases.

Steps to Reproduce:
1. Download any app on the Mac App store that features In-App purchases
2. Try to purchase an In-App item BY USING A NON-US APP STORE ACCOUNT - otherwise you won't see the issue.

Expected Results:
The purchase should be made without any message alert redirecting the user back into the Mac App Store. Furthermore, the price of the In-App purchase item should be displayed in the user's locale.

Actual Results:
StoreKit is bringing up an alert insisting that the item isn't available for purchase in the user's currently logged in App Store. It opens the Mac App Store application and stalls without giving any hint to the user what to do next. Furthermore, the price of the In-App purchase is always displayed in US-$, regardless of the user's locale.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!