U2Code Product Multicurrency for WooCommerce

Description

U2Code Product Multicurrency lets your WooCommerce store display prices and accept payments in any number of currencies.

Currencies & rates

  • Unlimited currencies, ordered the way you want them in the switcher
  • Automatic exchange rates from ECB, Frankfurter, FloatRates (free, no key), Open Exchange Rates or Fixer
  • Hourly to weekly update schedule, or manual-only, with an “Update now” button
  • Manual rate override per currency — automatic updates never touch it
  • Percentage fee (markup) and fixed fee per currency
  • Price rounding per currency: to the nearest/up/down step (0.01 … 100) plus charm endings (19.99) — with a live preview while you configure
  • Per-currency symbol, symbol position, decimals and separators — zero-decimal currencies like JPY handled correctly
  • If a rate is ever missing or broken, prices fall back to the base currency — never to zero

Detection & switching

  • Currency switcher everywhere you need it: Gutenberg block (works in Site Editor headers), shortcode [u2code_currency_switcher], classic widget, floating panel, navigation menu items (any number of menus, with a currency submenu), under the price on product pages, and an Elementor widget — five styles (dropdown, buttons, native select, flags only, text links), with flag emojis (no image sprites)
  • Geolocation: map countries to currencies and first-time visitors see their local one (crawlers always get the base currency)
  • The visitor’s choice is remembered in a cookie; ?currency=EUR links switch too
  • Cache compatibility mode: prices are re-drawn in the browser on cached pages; WP Rocket cookie registration built in

Checkout & orders

  • Choose: customers pay in the selected currency, or the checkout always charges the base currency (display-only switching)
  • Every order stores the currency, the exchange rate at purchase time and the total in your base currency
  • WooCommerce Analytics reads coherent base-currency numbers — reports never mix currencies
  • The order-pay page always charges the order’s own currency

Compatible by design

  • HPOS and Cart/Checkout Blocks compatible, Store API aware
  • Shipping costs, fixed-amount coupons, coupon limits and free-shipping thresholds are all converted
  • Ships integrations for Tiered Pricing Table, U2Code Product Addons, Elementor and WP Rocket — each can be toggled off
  • Extensive hooks for developers (see DEVELOPERS.md in the plugin folder)

Premium

  • Fixed per-product prices per currency (simple products and variations) that replace the calculated conversion
  • Restrict payment gateways per currency

External services

This plugin can fetch currency exchange rates from an external service. It only contacts the one provider you select under WooCommerce Settings Multicurrency Exchange Rates, on the schedule you choose there (or when you press “Update rates now”). The request is made from your server and contains only the currency codes you configured — plus your own API key for the providers that require one. No visitor data and no personal data is ever sent.

Available rate providers:

If “Detect currency by visitor location” is enabled, the visitor’s country is determined by WooCommerce’s built-in geolocation on your own server. This plugin does not send visitor data to any external geolocation service.

Source code & build

The admin app in assets/admin/ is compiled with @wordpress/scripts (webpack) from the human-readable sources shipped in js-source/. To rebuild it:

cd js-source && npm install && npm run build

All other JavaScript and CSS in assets/ is hand-written; .min files are generated from the adjacent source file of the same name.

Screenshots

Blocks

This plugin provides 1 block.

  • Currency Switcher

FAQ

Where do I configure it?

WooCommerce Settings Multicurrency. Add currencies, pick a rate provider, choose the checkout behavior and the switcher design.

Do rates update automatically?

Yes — pick a provider and a schedule on the Exchange Rates tab. Currencies set to “Manual” keep their rate forever.

Can I set exact prices per currency for one product?

With Premium, yes. Each product (and each variation) gets fixed-price fields per currency; a fixed price replaces the calculated conversion, and the values are kept even if you switch back to automatic conversion.

Does it work with a page cache?

Yes. With WP Rocket the currency cookie is registered automatically. For other full-page caches enable “Cache compatibility mode” in Behavior — prices are then refreshed in the browser after the cached page loads.

Which currency do reports use?

Orders keep the currency the customer paid in, and also store the rate and base-currency total. WooCommerce Analytics receives amounts converted to your base currency, so revenue reports stay coherent.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“U2Code Product Multicurrency for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.0

  • Initial release.