Multi Currency Switcher for WooCommerce lets your store display and process prices in multiple currencies β fast, clean, and conversion-focused. Built for modern WordPress stores without the bloat.
Sell globally with confidence. Visitors see prices in their local currency automatically, switch currencies with a single click, and checkout in the currency they trust.
π Full Documentation
Most multi-currency plugins are bloated, ship with telemetry SDKs, or lock core features behind a paywall. Multi Currency Switcher for WooCommerce is different:
Multi-Currency Support
Display and process orders in 150+ ISO 4217 currencies. Enable as many currencies as your store needs from a searchable admin grid with flag emojis.
Auto Exchange Rates
Rates are fetched automatically from the European Central Bank (free, no API key required) or Open Exchange Rates. Cached in transients and a resilient database table β rates are always available even if the API is temporarily down.
GeoIP Auto-Detection
On a visitorβs first page load, the plugin detects their country and automatically sets their local currency. The result is stored in a 30-day cookie β zero repeat API calls, zero impact on performance.
Two Switcher Modes
β Full Mode β prices, cart, shipping, and checkout all process in the selected currency. Orders are saved with the customerβs currency.
β Visual Mode β display prices in any currency on the storefront but charge in your storeβs base currency at checkout. Ideal for stores that cannot process multi-currency payments.
Per-Product Fixed Prices
Override the auto-converted price with an exact fixed amount for any product and any currency. Set a fixed USD price, a fixed EUR price, and a fixed BDT price independently β all from the product edit page.
Smart Price Rounding
Four rounding presets to make converted prices look natural:
β Exact β precise decimal conversion
β Round β round to nearest whole number
β Charm β always end in .95 (e.g. 29.95)
β .99 Pricing β always end in .99 (e.g. 29.99)
Currency Switcher β 2 Styles
β Dropdown β a compact dropdown button with the active currency, expands to list all options
β Button group β all currencies displayed as inline buttons
Both styles support flag emoji display, multiple label formats (symbol, code, symbol + code, full name), and are fully keyboard navigable with proper ARIA roles.
Shortcode
Place the switcher anywhere with [storzen_currency_switcher]. Supports style, show_flag, and class parameters.
Classic Widget
Drag the Multi Currency Switcher widget into any sidebar or footer area from Appearance Widgets.
Accessible & Keyboard-Friendly
β Full keyboard navigation (arrow keys, Enter, Escape, Tab)
β ARIA listbox and aria-pressed roles
β Focus management and roving tabindex
β Screen-reader labels on every interactive element
SameSite=Lax, Secure on HTTPS, and HttpOnly for the country detection cookieSetup (takes 2 minutes):
π Full setup guide
This plugin connects to the following external services. All connections are optional and user-controlled from the plugin settings.
1. European Central Bank (ECB) β Default rate source
* Endpoint: https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml
* When used: when βEuropean Central Bankβ is selected as the rate source (default setting)
* Data sent: none β this is a public XML feed, no personal data is transmitted
* Privacy policy: https://www.ecb.europa.eu/home/privacy/html/index.en.html
* Terms of use: https://www.ecb.europa.eu/home/disclaimer/html/index.en.html
2. Open Exchange Rates β Optional rate source
* Endpoint: https://openexchangerates.org/api/latest.json
* When used: only when βOpen Exchange Ratesβ is selected and an API key is entered by the administrator
* Data sent: your API key as a URL query parameter
* Privacy policy: https://openexchangerates.org/privacy
* Terms of use: https://openexchangerates.org/terms
3. country.is β GeoIP detection
* Endpoint: https://api.country.is/
* When used: only when GeoIP auto-detect is enabled (can be disabled in settings), and only on a visitorβs very first page load β the result is stored in a cookie for 30 days
* Data sent: the visitorβs IP address (sent as part of a standard HTTP request β not stored by this plugin)
* Privacy policy: https://country.is/
No data is ever sent to Storzen servers.