Every Price, In Their Currency.

Free. Built For WooCommerce.

Ston Currency Switcher shows every price, cart and checkout in your shopper’s own currency — unlimited currencies, automatic exchange rates and a switcher that updates the page without a reload.

WordPress
WooCommerce
Ston Currency
Every Currency

Live demo

Click A Currency. Every Price Follows.

Personal

$49

1 site · sample prices

Agency

$149

5 sites · sample prices

Studio

$399

Unlimited sites · sample prices

no page reload

cache-safe

Features

Everything A Multi-Currency Store Needs

01

Currencies

Add as many as you like. Each has its own exchange rate, optional fee, rounding rule, symbol position, decimals and separators — plus fixed prices on any product or variation.

02

Switcher

Pills, dropdown, select box or inline links, with codes, symbols, names and flags. Place it by shortcode, Elementor widget, classic widget, menu item or a floating button.

03

Store

Checkout in the customer’s currency or always in yours. Coupons, minimum spend, shipping and the free-shipping threshold are converted too.

04

Fast

No jQuery on the front end, one small script loaded only where a switcher is shown, no database queries per price, and a separate cached copy per currency.

01 / How it works

One store currency, every display currency

You manage every price in your WooCommerce store currency. Ston Currency converts at display time, so nothing in your catalogue is rewritten and switching the plugin off leaves the store exactly as it was.

Base currency

your WooCommerce currency — prices are stored and edited in it only

Conversion

price × rate × (1 + fee %) → rounding rule → currency format

Fixed prices

optional per product and per variation, overrides the rate

Visitor choice

switcher → cookie ston_currency · or ?currency=AED in the address

First visit

default currency per country (Cloudflare header or WooCommerce MaxMind)

Switching

?wc-ajax=ston_currency_switch — prices, cart and mini cart refresh in place

Checkout

in the customer’s currency, or forced to the store currency for your gateway

02 / Exchange rates

Automatic, or exactly the number you type

Each currency can follow the live rate or keep a rate you set by hand. A fee covers conversion costs; a rounding rule keeps prices looking deliberate.

Source

open.er-api.com — free, no API key

Schedule

twice a day through WP-Cron, or “Update rates now”

Manual rate

per currency, never overwritten by the update

Fee

optional % per currency, added after conversion

Rounding

none · whole number · round up · charm (x.99) · nearest 5 · nearest 10

Format

symbol, symbol position, decimals, thousand and decimal separators

03 / Placement

Put the switcher anywhere

Every placement renders the same accessible markup: keyboard navigation, visible focus and reduced-motion support.

[ston_currency_switcher]

style="pills|dropdown|select|links" label="code|symbol|code_symbol|name|name_code" flags="yes" show="all|store"

[ston_price amount="49"]

any store-currency amount in the visitor’s currency; aed="179" fixes it per currency

Elementor widget

Ston Currency Switcher, with the same options in the panel

Classic widget

for sidebars and footers of non-Elementor themes

Menu item

appended to the menu location you choose

Floating button

a corner switcher on every page, no theme edits

04 / Extension points

Documented hooks

Change behaviour from your own code without touching the plugin.

ston_currency_current

filter — the currency of a request

ston_currency_converted_amount

filter — adjust a converted amount

ston_currency_switcher_html

filter — change the switcher markup

ston_currency_ajax_regions

filter — page parts refreshed after a switch

ston_currency_is_store_page

filter — where “store pages only” shows the switcher

ston_currency_rates_url

filter — use another exchange-rate source

ston_currency_fetched_rates

filter — inspect or correct fetched rates

ston_currency_switched

action — after a visitor switches currency

05 / Compatibility

Works with the store you already run

Tested against the parts of WooCommerce that usually break currency plugins.

Cart & checkout

classic shortcodes and the block cart / checkout

Orders

HPOS (custom order tables) and legacy post storage

APIs

Store API responses follow the visitor’s currency

Products

simple and variable, with per-variation fixed prices

Caching

WP Rocket and LiteSpeed Cache keep a copy per currency

Clean exit

uninstall removes its options; your products are untouched

06 / Set it up

Four steps, in order

01

Install & activate

Upload the zip under Plugins → Add New. WooCommerce must be active; the base currency comes from its settings.

02

Add currencies

Ston Currency → Currencies. Add codes, choose automatic or manual rates, set fee, rounding and format.

03

Place the switcher

Shortcode, Elementor widget, menu item or floating button — on every page or on store pages only.

04

Choose checkout

Charge in the customer’s currency, or keep checkout in your store currency if your gateway needs it.

07 / Requirements

Free, and light on any hosting

  • WordPress 6.4+
  • PHP 7.4+
  • WooCommerce
  • HPOS ready
  • Block checkout
  • GPL · free forever