VoiceOver and currency - high amounts

I’ve noticed that the VoiceOver reads currency amounts correctly when they are below thousand. Then, for higher amounts, for example 12.225,34 € VoiceOver reads ‘twelve point two two five thirty four euros’ If the amount is formatted without the thousand separator (12225,34 €) this problem doesn’t exist. (VO reads twelve thousand two hundred and twenty five euros and thirty four cents) Why is the thousand separator a problem for VoiceOver if this formatting is coming from the currency and locale? This issue exists in English. I changed my device language to Italian and German and in both cases the number was read correctly even with the separator. Is there a way to make it work in English?

Thanks for bringing up this issue, if you haven't already, could you file a bug report using Feedback Assistant so we can make sure we are tracking this issue internally? https://developer.apple.com/bug-reporting/

Please share your feedback ID so we can take a look. Thanks!

In the meantime as a temporary workaround you may consider reformatting the string

I experience the same for English (US and UK). Another issue is that it only announces euro's in English but not the cents.I use a NumberFormatter with currency style and usesGroupingSeparator = false. E.g., €1,645.45 is announced as "One thousand six hundred forty five euro's dot forty five". Do you experience the same? I would expect "One thousand six hundred forty five euro's and forty five cents"

I have implemented a workaround that improves this experience by formatting the amount used in accessibilityLabel without the separator. So I display 12.225,34 € in the app, but accessibilityLabel gets 12225,34 € and then the amount is read correctly by the VoiceOver

VoiceOver and currency - high amounts
 
 
Q