Skip to main content
Solved

Facing a currency display issue in our app

  • March 10, 2026
  • 1 reply
  • 34 views

Forum|alt.badge.img

All subscription prices are correctly configured in App Store Connect for all countries and regions. We are currently testing on devices configured for India, where the device region, App Store region, and Apple ID are all set to India.


However, during testing in TestFlight, we are seeing inconsistent currency behavior:

  • In our custom paywall UI / RevenueCat paywall, the prices returned from RevenueCat offerings appear in USD ($).

  • When the Apple in-app purchase sheet opens, the price is displayed correctly in INR (₹).

Current flow:

  • Paywall (RevenueCat offerings): $ USD

  • Apple Purchase Sheet: ₹ INR (correct)


This creates a confusing experience because users initially see USD on the paywall, but the actual purchase sheet shows INR.

We have verified the following:

  • Pricing is correctly configured in App Store Connect for all regions.

  • Device region is set to India.

  • Apple ID region is set to India.

  • The behavior occurs on multiple devices using TestFlight.


Since the pricing configuration appears correct and the Apple purchase sheet shows the expected localized currency, we wanted to confirm whether this discrepancy could be related to the sandbox/TestFlight environment.
 

Could you please advise if the currency returned by RevenueCat offerings is expected to display correctly in production once the app is released, even though it appears as USD in TestFlight? Or is there any additional configuration we should verify to ensure the paywall shows the correct localized currency (₹ INR) before release?


Any guidance would be greatly appreciated. 🙂

Best answer by guilherme

Hey ​@pushpam-8ede79 !

Thanks for the thorough testing and for listing everything you've already verified!

This is a known Apple sandbox/TestFlight limitation. In those environments, StoreKit can return USD pricing regardless of the test account's configured storefront region. Since RevenueCat displays whatever price and currency StoreKit gives us (we don't modify or convert prices), the offerings end up showing USD in your paywall.

From our docs:

In sandbox, StoreKit Test, and TestFlight environments, prices will often not reflect the actual prices set in App Store Connect. This is due to these environments being relatively unstable, does not necessarily indicate an issue with your implementation, and is not commonly seen in the production environment.

In these testing environments, you should ensure the purchase flow works as expected, rather than the prices and metadata being accurate.

More details here and here

In production, StoreKit returns the correct localized price based on the user's actual App Store storefront, so this discrepancy won't occur. No additional configuration is needed on the RevenueCat side either, as everything you've described sounds correctly set up.

That said, if you do see this same behavior after a live release, definitely let us know and we'll dig into it further!

In case you haven’t come across it yet, we also have a breakdown of each environment and some of their quirks in this Blogpost here: https://www.revenuecat.com/blog/engineering/the-ultimate-guide-to-subscription-testing-on-ios/, which can be helpful context.

1 reply

guilherme
RevenueCat Staff
Forum|alt.badge.img+6
  • RevenueCat Staff
  • Answer
  • March 11, 2026

Hey ​@pushpam-8ede79 !

Thanks for the thorough testing and for listing everything you've already verified!

This is a known Apple sandbox/TestFlight limitation. In those environments, StoreKit can return USD pricing regardless of the test account's configured storefront region. Since RevenueCat displays whatever price and currency StoreKit gives us (we don't modify or convert prices), the offerings end up showing USD in your paywall.

From our docs:

In sandbox, StoreKit Test, and TestFlight environments, prices will often not reflect the actual prices set in App Store Connect. This is due to these environments being relatively unstable, does not necessarily indicate an issue with your implementation, and is not commonly seen in the production environment.

In these testing environments, you should ensure the purchase flow works as expected, rather than the prices and metadata being accurate.

More details here and here

In production, StoreKit returns the correct localized price based on the user's actual App Store storefront, so this discrepancy won't occur. No additional configuration is needed on the RevenueCat side either, as everything you've described sounds correctly set up.

That said, if you do see this same behavior after a live release, definitely let us know and we'll dig into it further!

In case you haven’t come across it yet, we also have a breakdown of each environment and some of their quirks in this Blogpost here: https://www.revenuecat.com/blog/engineering/the-ultimate-guide-to-subscription-testing-on-ios/, which can be helpful context.