By default, your Storefront charges customers in USD. If you serve customers in Canada, the UK, Australia, or the EU, you can add those currencies so customers are charged in their local currency. You set the exchange rate, and Storefront applies it across your TLD prices automatically.
How exchange rates work in Storefront
Storefront does not automatically update your prices when exchange rates change. When you add a currency, you enter the rate you want to use. Storefront shows the current market rate as a reference, updated nightly from an exchange rate API, but that reference is informational only. Your rate is what customers are charged.
This means two things in practice. First, you control the margin: you can set a rate that builds in a buffer against currency fluctuation rather than using the exact market rate. Second, you are responsible for updating your rates when market conditions shift significantly. A rate you set months ago may no longer reflect what you want to charge.
When you change an exchange rate, Storefront recalculates all TLD prices for that currency immediately using the new rate. TLDs with individual retail prices set per currency are not affected, those need to be updated manually.
Supported currencies
Storefront supports USD plus four additional currencies:
- CAD — Canadian Dollar
- GBP — British Pound Sterling
- EUR — Euro
- AUD — Australian Dollar
How currency selection works for customers
When a customer visits your storefront, Storefront detects their location and shows prices in the matching currency if you offer it. If you don't offer a currency for their region, or their location can't be detected, they see your default currency.
A customer's preferred currency is set on their first purchase and applies to all future transactions including renewals. Customers can change their preference in their account settings.
Geolocation defaults:
| Customer location | Currency shown |
|---|---|
| United States | USD |
| Canada | CAD |
| Australia | AUD |
| United Kingdom | GBP |
| Austria, Belgium, Croatia, Cyprus, Estonia, Finland, France, Germany, Greece, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Portugal, Slovakia, Slovenia, Spain | EUR |
| All other countries | Your store's default currency |
Add a currency
- Log in to Storefront Manager.
- Navigate to Pricing → Overview.
- Click Add Currency.
- Select a currency from the dropdown. Each currency can only be added once — it disappears from the dropdown after being added.
- Enter your exchange rate — how many units of the new currency equal 1 USD. Storefront shows the current market rate as a reference.
- To make this the currency customers see by default, check Set as default currency.
- Click Save.
Storefront converts all your TLD prices to the new currency at the rate you entered. If pretty pricing (rounding) is enabled, rounding is applied after conversion.
Set a default currency
USD is your default currency until you change it. Your default is what customers see when their location doesn't match any currency you offer.
- Navigate to Pricing → Overview.
- Click the three-dot menu next to the currency you want to set as default.
- Select Set as default currency.
You cannot delete your default currency. Set a different currency as default first, then delete the old one.
Edit a currency
- Navigate to Pricing → Overview.
- Click the three-dot menu next to the currency you want to edit.
- Select Edit currency.
- Update the exchange rate and save.
Storefront updates all TLD prices for that currency immediately. TLDs with individual retail prices set for that currency are not affected.
Hide or show USD
If most of your customers are outside the US, you can hide USD from your storefront. Another currency must be present before you can select the three-dot menu next to USD.
- Navigate to Pricing→ Overview.
- Click the three-dot menu next to USD.
- Select Hide USD and confirm in the pop-up.
To show USD again, return to the same menu and select Show USD.
Delete a currency
- Navigate to Pricing → Overview.
- Click the three-dot menu next to the currency you want to remove.
- Select Delete currency and confirm in the pop-up.
Storefront removes the currency immediately. Customers who previously purchased in that currency are switched to your default currency for future transactions. Their existing order history is not affected.
Set per-TLD prices in each currency
When you add a currency, all TLD prices convert from USD using your exchange rate. To override individual TLDs:
- Navigate to Settings → TLD Pricing.
- Find the TLD and click Edit.
- Choose your pricing method:
- Markup % — a percentage above USD cost, applied across all currencies, converted after.
- Retail price — a specific price per currency. When you set a USD price, Storefront auto-fills the other currency fields using your exchange rates. You can then adjust those individually.
- Save your changes.
What your customer sees
At checkout, prices appear in the customer's preferred currency. If they switch currencies in the store navigation, prices update for that session but their account preference doesn't change until they update it in account settings. Order confirmation emails show the currency charged at the time of purchase.
Orders and reporting with multiple currencies
The Orders page shows the currency of each order and lets you filter by currency to view a specific subset.
In Reports, revenue appears in the currency it was charged in. USD and non-USD orders are never combined into a single total, since they cannot be accurately compared without a common currency basis. Costs always display in USD, as OpenSRS charges you in USD regardless of what your customers paid.
Troubleshooting
A customer in Canada is seeing USD instead of CAD.
Storefront uses geolocation to set the initial currency, but only if you offer CAD. Confirm CAD has been added in Settings → Pricing Overview. Also check whether the customer has a stored currency preference in their account that overrides geolocation.
I changed the exchange rate but my TLD prices didn't update.
Storefront updates prices immediately after you save a new rate. Refresh the TLD Pricing page to confirm. TLDs with per-currency retail prices set individually are not affected by the exchange rate change, update those manually if needed.
I want to delete a currency but the option is greyed out.
You cannot delete your default currency. Set a different currency as default first using the three-dot menu, then delete the original.
A customer's renewal was charged in a different currency than expected.
A customer's preferred currency is set on their first purchase and applies to renewals. If their currency preference changed, check the customer's event log in Storefront Manager — currency changes are recorded there.
Related articles
Questions? Contact OpenSRS Support.
Was this article helpful? If not please submit a request here
How helpful was this article?
Thanks for your feedback!