Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesWooPayments is the simplest route to multi-currency in WooCommerce: enable Multi-Currency under Payments, add the currencies you want to accept, configure rates and price rendering, then place a switcher where shoppers can find it. Use a dedicated currency-switcher extension instead when you need advanced geolocation, country or zone pricing, per-product prices, or controls beyond the payment layer.
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
Multi-currency changes what shoppers see and pay; it does not automatically give you a separate payout in every currency. Before launch, test taxes, shipping, coupons, payment authorization, emails, analytics, refunds, caching and payout accounting in each enabled currency.
As an Amazon Associate I earn from qualifying purchases.
Choose the right WooCommerce multi-currency approach
There are two practical implementation paths. WooPayments provides a first-party payment and currency workflow inside WooCommerce. A dedicated extension adds more merchandising and location rules, but also introduces another compatibility and maintenance point.
| Implementation | Best fit | Main controls | Checks before launch |
|---|---|---|---|
| WooPayments Multi-Currency | Stores that want payment processing and currency selection managed together | Enabled currencies, automatic or manual rates, geolocation, server- or browser-side conversion, switcher block or widget | Payout currencies, conversion fees, cache behavior, refund accounting and gateway compatibility |
| Currency Switcher for WooCommerce | Stores needing advanced front-end controls, zone pricing or per-product prices | Widgets, menus and shortcodes; API or fixed rates; geolocation; MaxMind; zone and product pricing | Feature dependencies, conflicts among currency rules and payment-gateway behavior |
| Multicurrency Switcher and Converter | Merchants who want a dedicated converter with location rules | Plugin settings, automatic rates and IP-detection options | Rate-provider limits, provider terms, checkout, tax and shipping behavior |
WooCommerce advises merchants to define the business reason for multiple currencies and check exchange-rate sources and additional fees. A display converter that changes prices on product pages is not the same as a payment setup that can authorize, capture and refund in the selected currency.
#1 Best Overall
Plan currencies, prices and checkout behavior first
List the currencies you actually need
Start with the countries you serve, your advertising and analytics data, and the currencies your payment account can settle. WooPayments documents support for more than 100 currencies, but the exact list and payout eligibility depend on the merchant’s country and the rules in force when you configure the account. Enable only currencies you can explain to customers and reconcile in your accounting system.
- Keep your store’s base currency as the accounting reference for product costs and reporting.
- Decide whether a customer-selected currency remains active through cart, checkout and order emails.
- Document rounding, decimal precision and whether prices are converted from the base price or maintained separately.
- Decide how fixed-value coupons, minimum and maximum spend rules, deposits and subscriptions should behave.
- Confirm which payment methods can authorize and capture each currency in your country.
Separate display currency from payout currency
WooPayments can show prices in different currencies and let shoppers select a preferred currency. That feature does not mean the merchant receives a payout in every currency a shopper uses. Payout support is a separate question tied to the bank account and country. A payment may be presented and charged in the shopper’s currency while your balance is converted before payout.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Decide whether rates should float or stay fixed
Automatic rates are convenient for a store whose prices should follow regularly retrieved market rates. A manual rate is appropriate when you promise a fixed price for a campaign, need predictable margins, or want to absorb exchange-rate movement. A manually entered value remains in force until you change it. Automatically retrieved values and third-party historical listings are not guaranteed to match to the minute, so do not treat a displayed conversion as a precise historical quote.
Set up WooPayments Multi-Currency step by step
- Sign in to WordPress and open Payments > Settings.
- Open Advanced settings and enable Multi-Currency.
- Add every currency you want customers to use. Avoid enabling currencies merely because they are available; each one creates another combination to test and reconcile.
- Open Manage beside each enabled currency.
- Leave Fetch rates automatically enabled for regularly retrieved rates, or turn it off and enter a manual rate when you require a fixed conversion.
- Choose how converted prices are rendered. Select Optimized for speed to convert on the server before the page loads. Select Optimized for caching to convert in the browser after the page loads; this can leave a short-lived placeholder visible.
- Add the currency switcher block or widget to a header, sidebar, footer or another location that remains visible on product, cart and checkout pages. Stores using the Storefront theme can enable its switcher where the theme exposes that option.
- If desired, enable automatic local-currency switching. It uses geolocation, so present a manual override as well.
- Save the settings and place a test order in every enabled currency, including a refund test before opening the store to the public.
Configure each currency deliberately
Open the management screen for every currency rather than applying one assumption to all of them. Check its symbol and display position, decimal handling, rate source and any rounding behavior. A converted value that looks acceptable on a product page can produce a different total after tax, shipping or a fixed-value discount is applied.
Choose a rendering mode around your cache architecture
Optimized for speed performs conversion on the server before the response is sent. Customers see the selected currency immediately, but full-page caching becomes more complicated because a cached page cannot safely be reused for visitors who selected another currency.
Optimized for caching serves a cache-friendly page and performs conversion in the visitor’s browser. It can improve cache hit rates, but the shopper may briefly see a placeholder or the base-currency value while the conversion runs. Test product pages, mini-cart fragments, structured data and accessibility text so that the temporary state does not become the final one in a crawler or assistive technology.
Free tools Windows power users keep installed
One-click scans. No signup required.
Add a switcher shoppers can find and trust
Put the switcher near the site’s language or country controls, and repeat it in the cart or checkout if your theme permits. Label currencies with both code and name when symbols are ambiguous: “CAD — Canadian dollar” is clearer than a second “$”. Keep the selected currency visible in the cart and order summary, and let the customer change it without clearing the cart.
Use automatic switching as a suggestion, not proof of location
Geolocation can select a local currency for convenience, but it is not authoritative proof of where a shopper is located. A virtual private network, corporate gateway, mobile carrier or masked IP can produce the wrong country. Do not silently lock a customer to the detected currency. Keep the manual switcher available and explain that the final charged currency is the one shown at checkout.
Rank #2
Use a dedicated currency-switcher extension when pricing rules are the priority
A switcher extension is the better fit when the payment layer alone cannot express your pricing model. Typical requirements include country or zone-specific prices, a different price for an individual product, a shortcode in a custom menu, or geolocation rules that need a separate provider.
Typical configuration sequence
- Install and activate the extension through the WordPress administration area, then open its settings from the WooCommerce or plugin menu.
- Select the base currency and add the customer currencies. For each one, choose an automatic API rate or enter a fixed rate.
- Configure the switcher presentation: widget, menu item or shortcode. Put it in a location that survives your theme’s desktop and mobile layouts.
- Define whether the extension controls product, cart, checkout, shipping and billing currencies. Do not assume that a front-end converter also controls the payment gateway.
- Set geolocation behavior and a fallback currency. Treat the detected value as a default and retain a manual override.
- If you use zone pricing or per-product prices, enter and review those values separately from converted prices. Check what happens when a product has no explicit price for a shopper’s zone.
- Run the full checkout, tax, shipping, coupon, email, feed, analytics and refund tests described below.
MaxMind geolocation requirements
The Currency Switcher extension can use WooCommerce MaxMind geolocation. Its documentation requires the WooCommerce default customer location to be set to Geolocate and a valid MaxMind license key in the WooCommerce integration settings. If either prerequisite is missing, location-based currency rules may fall back to the store default or behave inconsistently.
Watch for feature conflicts
Dedicated switchers can expose more controls but also more interactions. Shop currency, zone pricing, billing currency, shipping currency and coupon features may depend on one another. Confirm which component owns the final order currency and ensure only one system is rewriting totals at checkout. Test with every payment gateway you offer; an extension that changes display prices may not be compatible with a gateway that expects the store currency.
Understand exchange rates, fees and rounding
Automatic rates are not a promise of a particular quote
Automatic retrieval reduces maintenance, but the update interval and provider methodology determine how current a value is. Your customer may see a rate that differs slightly from a bank, a card network or a historical listing checked at another time. State clearly that the checkout total is authoritative and avoid advertising a rate as guaranteed unless you have deliberately fixed it.
Manual rates trade freshness for control
A manual rate stays fixed until an administrator edits it. This can protect a margin or keep a campaign price stable, but it can also become unprofitable when the market moves. Record who changed the rate, when and why, and review it on a schedule appropriate to your product margins.
Budget for conversion charges
Conversion fees may be charged by the payment processor or the customer’s bank. Card issuers can add a fee when a card is billed in a non-standard currency. WooPayments charges a currency-conversion fee when the payment currency differs from the currency of a bank account on file. The fee is separate from the rate shown to the shopper, so include it in margin calculations and reconciliation.
Check tax and rounding order
Tax can be calculated before or after conversion depending on the store’s configuration and extension. A one-cent difference can appear when a tax-inclusive base price is converted, rounded, and then taxed, versus when tax is calculated first and the total is converted. Test representative low- and high-value products, tax-inclusive and tax-exclusive displays, and mixed carts. Make the invoice and checkout agree on the currency, tax lines and grand total.
Taxes, shipping, coupons and order data
Taxes
Verify the tax display and calculation for each customer location and currency. Geolocation should not be used as a substitute for the billing or shipping address that your tax rules require. Test logged-in and guest checkout, including a shopper who changes currency after entering an address.
Shipping
Confirm whether shipping methods are priced in the store currency, converted dynamically or maintained as zone-specific values. Check free-shipping thresholds, table rates, flat rates and calculated carrier quotes. A threshold expressed in one currency can be unintentionally generous or restrictive if it is converted with a different rounding rule.
Coupons and spending limits
Fixed-amount coupons require special attention. Test whether a coupon defined as 10 units of the base currency becomes a converted 10-unit discount, a fixed 10-unit discount in the shopper’s currency, or an invalid value. Repeat the test for percentage coupons, minimum spend, maximum spend, usage limits and refunds of partially discounted orders.
Emails, feeds and analytics
Order confirmation, invoice, shipment and refund emails should show the currency code, symbol, line totals, tax, shipping, discount and grand total consistently. Product feeds, advertising catalogs and analytics events must not mix a converted value with a base-currency label. Verify that revenue reports identify the transaction currency and that your accounting export records both the charged amount and the amount eventually settled.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Refunds and payout reconciliation
Refunds deserve a separate test because the exchange rate can change between the original payment and the refund. WooPayments states that the customer receives the exact amount and currency originally paid, while the amount deducted from the merchant balance can differ when the exchange rate has moved. Reconcile the gateway record, WooCommerce order, bank payout and accounting entry rather than assuming that the refund will equal the original base-currency amount.
- Place a small authorized order in each currency.
- Capture it and confirm the customer receipt and merchant balance.
- Issue a full refund, then a partial refund, using the gateway’s normal workflow.
- Compare the customer’s returned currency and amount with the amount removed from your balance.
- Check how fees, taxes, coupons and shipping are represented in the refund record.
- Confirm that the accounting export can explain any exchange difference.
Geolocation, caching and privacy decisions
Automatic currency selection depends on an IP-derived location or another location service, so it can be inaccurate. VPN users, corporate networks, mobile carriers and privacy tools are common causes. Use a visible switcher, provide a neutral fallback, and avoid wording that suggests the detected country is verified.
Caching creates a second risk: a full-page cache can serve one visitor’s converted HTML to another visitor. Choose server-side conversion only with a cache strategy that varies safely by currency, or choose browser-side conversion and test the brief loading state. Purge page, object and CDN caches after changing rates, enabled currencies or rendering mode. Check logged-in and logged-out sessions, private browsing, mobile networks and a second browser before launch.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallPre-launch test matrix
| Area | What to test | Pass condition |
|---|---|---|
| Product pages | Several price points, sale prices, variable products and out-of-stock items | Currency code, symbol, decimals and converted values are consistent |
| Cart | Change currency after adding products; mix products with different tax classes | Line totals, discounts, tax and grand total recalculate without losing items |
| Checkout | Guest and logged-in checkout; billing and shipping addresses in different countries | The final currency and amount are explicit before payment authorization |
| Payment | Authorization, capture, failed payment and retry in every enabled currency | The gateway accepts the intended currency and records a matching order |
| Shipping | Flat rate, free-shipping threshold, local pickup and calculated rates | Methods and thresholds use the documented currency rule |
| Coupons | Percentage, fixed amount, minimum spend, maximum spend and partial refund | Discount and eligibility rules match your written policy |
| Tax | Tax-inclusive and tax-exclusive prices; multiple customer locations | Tax lines and rounding are correct in checkout, email and invoice |
| Emails and feeds | Order, invoice, shipment, refund emails; product and advertising feeds | Every amount carries the correct currency code and no base value is mislabeled |
| Analytics | Purchase, refund and revenue events | Transaction currency and value are passed consistently to reports |
| Refunds | Full and partial refunds after a rate change | Customer receives the original charged currency and reconciliation explains differences |
| Caching | Two browsers, private session, mobile connection and currency changes | No visitor receives another visitor’s currency or stale totals |
Troubleshoot common failures
The switcher is missing
- Confirm the block or widget is assigned to a visible theme region.
- Check that the enabled currency list contains more than the base currency.
- Inspect mobile and checkout templates separately; many themes hide sidebar widgets at small widths.
- Clear page and object caches after saving the placement.
Prices show the wrong currency after navigation
- Check whether browser storage or a cookie is being cleared between requests.
- Look for a full-page cache that does not vary by currency.
- Disable one currency plugin temporarily if WooPayments and a switcher extension are both rewriting prices.
- Use browser developer tools to see whether a conversion script failed or was blocked.
Geolocation selects the wrong currency
- Reproduce the issue on a VPN and a mobile network; an incorrect result may be expected from the IP data.
- Verify the fallback currency and keep the manual switcher enabled.
- For MaxMind-based rules, confirm that WooCommerce’s default customer location is Geolocate and that the license key is valid.
Checkout or a gateway rejects the order
- Confirm the gateway supports the selected payment currency in your merchant country.
- Check whether the extension changes billing or shipping currency in addition to display currency.
- Test authorization and capture separately; a gateway may accept one stage and reject another.
- Review the order metadata and gateway request to identify which currency code was sent.
A refund amount does not match the original base-currency value
Compare the customer-facing refund in the original charged currency with the merchant balance deduction. An exchange-rate change between payment and refund can create a legitimate difference. Record the gateway and bank amounts rather than manually altering the customer’s original currency amount.
Launch checklist and operating routine
- Write down the base currency, enabled currencies, rate source, rounding rule and payout arrangement.
- Confirm your country’s WooPayments currency and payout eligibility, payment-method support and conversion-fee exposure.
- Choose one system to own conversion and checkout currency; avoid overlapping rules from multiple plugins.
- Place a visible manual switcher and explain the final charged currency at checkout.
- Choose server-side or browser-side rendering according to your caching design.
- Complete the test matrix with small real or sandbox transactions and full and partial refunds.
- Record the rate-change process, cache-purge process and who approves manual rates.
- After launch, monitor failed payments, abandoned checkouts, rate-provider errors, unusual currency mix, tax discrepancies and refund variances.
For most stores, WooPayments is the sensible starting point because it keeps currency selection close to payment processing. Move to a dedicated switcher when zone pricing, per-product prices or specialized geolocation rules are central to the business. In either case, the setup is complete only when the currency shown to a shopper, the amount authorized, the tax and shipping calculations, the customer’s refund and the merchant’s payout records all agree with the policy you chose.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




