Currency Switcher for WooCommerce plugin

Currency Switcher for WooCommerce

Currency Switcher for WooCommerce

Rated 5.00 out of 5 based on 2 customer ratings
(3 customer reviews)

Add currency switcher to your WooCommerce shop.

SKU: N/A. Category: . Tags: , , .


Currency Switcher for WooCommerce WordPress plugin extends WooCommerce by adding currency switcher to your shop’s frontend. This is an extended version of free Currency Switcher for WooCommerce plugin.

Main Features

  • Automatic currency exchange rates updates.
  • Prices on per product basis.
  • Currency by country (i.e. customer’s IP).
  • Currency by language (i.e. locale).
  • Option to revert to original currency on checkout.
  • Various currency switcher placement options.
  • Price format options for each currency.
  • Option to add country flags in currency switchers.


Plugin settings are located in “WooCommerce > Settings > Currency Switcher”. Plugin has seven settings sections:


First option in General setting section lets you enable/disable the plugin functionality. It may be helpful if you want to fill plugin’s settings without affecting your site’s frontend.

Next option lets you turn on per product pricing. After enabling the checkbox, new settings will be added to each product’s edit page. There you can set price directly for each product without using exchange rates.

If you need to revert to default currency on checkout, you can enable it here. That is, currency switcher will work as usual, until your customer reaches the checkout page, then currency will be changed back to you shop’s default. This is helpful if you want to display prices in different currencies, but need to charge customer in single currency only (for example, because of limitations of your payment gateway).

General section will also let you select if you want switcher to be placed on single product pages. You can choose between three different switcher looks – radio buttons, select dropdown or links. To put the currency switcher on frontend you can also use switcher widget, shortcodes or functions. Shortcodes:

  • [woocommerce_currency_switcher_radio_list]
  • [woocommerce_currency_switcher_drop_down_box]
  • [woocommerce_currency_switcher_link_list]

Corresponding switchers will look like this:

Next option lets you set rounding options. You can choose between no rounding, round, round up and round down. If rounding is enabled, you can also set rounding precision here.

Last option allows you to disable currency switcher functionality on some selected URI. Enter one URI per line. Leave blank if not sure.


Currencies settings section lets you select which currencies you want to be in switcher. This is the settings section you should visit first. Shop’s default currency is added to switcher automatically, so you don’t need to select it. Number of additional currencies is limited to 2 additional currencies in free version (so 3 total with shop’s default currency) and is unlimited in Pro version. After you change the number of additional currencies, click Save changes button. After that new settings fields will appear, in which you can select which additional currencies to add. If, for example, you select 4 additional currencies, then your switcher will consist of 5 currencies total, that is, your shop’s default plus 4 additional currencies. If some currencies are missing from the list, we suggest using All Currencies for WooCommerce plugin.

In Pro version we’ve added Auto Generate PayPal Supported Currencies button, which will automatically add all 25 currencies supported by PayPal payment gateway (this number will be 24 if your shop’s default currency is supported by PayPal).

Exchange Rates

In exchange rates section you can set exchange rates and (optionally) time when the rates should be updated. You can choose between:

  • Enter Rates Manually
  • Update Automatically Every Minute
  • Update Automatically Hourly
  • Update Automatically Twice Daily
  • Update Automatically Daily
  • Update Automatically Weekly

If you have enabled Currency Switcher on per Product Basis in General section, products which have their pricing set on per product basis won’t use exchange rates. So if, for example, you are going to use per product pricing for all your products, you can leave exchange rates values set to default 1.

You can also Update All Exchange Rates Now or Reset All Rates with single button click.

Near each currency pair there is also button to grab current exchange rate for the pair. Don’t forget to Save changes if you click this button.

Exchange rates can be updated from or European Central Bank servers.


Currency Countries (by IP) section lets you display currency by customer’s country. Customer’s country is calculated by customer’s IP. That is, if new customer visits your shop from some country, corresponding currency is automatically selected. If you won’t display currency switcher on frontend, then your customer won’t be able to change the currency manually, so this Currency Switcher for WooCommerce plugin can be used as “price and currency by country” plugin.

You can also Auto Assign Countries or Reset Countries with single button click.


Currency Switcher for WooCommerce - Admin Settings - Languages

Currency Languages (Locales) section allows you to assign currencies based on customer’s language (i.e. locale). This can be very helpful if you have a multilingual WordPress site and using some additional plugin for this (e.g. Polylang).

You can use this in two modes: restrict currency by customer’s language, or assign currency by language only once, then allow customer to change currency via switcher. This can be changed with Always Use Locale to Assign Currency checkbox. If you restrict currency by customer’s language (checkbox enabled), then currency can be changed via language switcher (e.g. from Polylang plugin) and there is no need to output currency switcher at frontend.

With Enter Locales as Comma Separated Text checkbox you can choose if you want to select languages from our list, or enter it directly, e.g. en_CA,fr_CA. Don’t forget to save changes after you set this option, to see different input fields.

Same as in Countries section, you can also Auto Assign Locales or Reset Locales with single button click.

Price Formats

Currency Switcher for WooCommerce - Admin Settings - Price Formats

Price Formats section allows you to set different price formats for each currency. Price formats include:

  • Currency position
  • Additional currency code position (optional)
  • Thousand separator
  • Decimal separator
  • Number of decimals
  • Currency Symbol


Currency Switcher for WooCommerce - Admin Settings - Flags

Country Flags section allows you to display country flags in all types of currency switchers on frontend. Flags are assigned automatically for each currency, however you can change which country flag should be displayed for each currency manually.


In addition to three currency switcher shortcodes described earlier, there are two more shortcodes that are designed to display product prices in converted currencies.

[woocommerce_currency_switcher_product_price_table] shortcode will display product price table in all available currencies:

Currency Switcher for WooCommerce - Shortcodes - Product Price Table

[woocommerce_currency_switcher_convert_price] shortcode allows you to convert any price to selected currency. This can be used in two ways:

Calculate price in current (i.e. chosen by user) currency: [woocommerce_currency_switcher_convert_price price="1.99" format_price="yes"]

Calculate price in selected currency: [woocommerce_currency_switcher_convert_price price="1.99" currency="AUD" format_price="yes"]

If you prefer PHP function:

echo alg_convert_price( array( 'price' => 1.99, 'currency' => 'AUD', 'format_price' => 'yes' ) );

Free vs Pro

Free Version Pro Version
Switcher Placement and Format Options yes yes
Revert Currency to Default on Checkout yes yes
Exchange Rates Final Price Correction yes yes
Currency Conversion for Fixed Amount Coupon yes yes
Currency Conversion for Free Shipping Minimum Order Amount yes yes
“Pretty Price” yes yes
Prices on per Product Basis yes yes
Prices via Automatic Exchange Rates yes yes
Currency Countries (by IP) yes yes
Currency Languages (Locales) yes yes
Price Formats & Currency Symbols yes yes
Currencies Maximum 3 currencies (including shop’s default) Unlimited
Country Flags no yes

3 reviews for Currency Switcher for WooCommerce

  1. Rated 5 out of 5

    Great plugin and great support!!!

  2. Hi there,

    I use EURO as my main currency and I use manually entered values for my other currencies (Pound and Thai Baht). Now, I am planning to add Bitcoin as well. However, I cannot use manually entered values for Bitcoin since the value of BTC against other currencies changes so frequently. That means I will need to change BTC values every once in a while to keep up with the latest BTC values. Bitcoin should be automatically converted while other currencies have manually entered values. I checked every setting but I don’t think this is possible. I hope you will bring this feature with the following updates.

    Thank you.

  3. Rated 5 out of 5

    (verified owner)

    This is EASILY the best currency switcher plugin for WordPress and WooCommerce – and I’ve tried (and purchased…) them all.

    Even better, the support is very responsive, with several features added upon request. Brilliant.

Add a review

19 thoughts on "Currency Switcher for WooCommerce"

  1. zero1dre July 28, 2017 at 2:04 pm #

    Hi, I just installed and tested the plugin.
    When I revert back to my initial currency, my prices are rounded up, despite having disabled rounding.
    Can you please help? This is a critical issue.


    • Algoritmika Ltd. July 28, 2017 at 7:43 pm #


      As discussed in private emails – this was a bug and it’s fixed in v2.4.2.

      Best regards,


  2. Adnan July 31, 2017 at 10:44 am #

    Hi, can i change the price letters ?? for example make change USD into US .



    • Algoritmika Ltd. July 31, 2017 at 7:00 pm #

      Hi Adnan,

      Unfortunately this plugin can’t change currency symbols, however there is another plugin which can do what you need, please take a look –

      Best regards,


    • Algoritmika Ltd. September 8, 2017 at 10:37 am #

      UPDATE: In version 2.5.0 we’ve added “Currency Symbol” option to the “Price Formats” settings section, so it’s now possible to change currency symbol without any additional plugins.

      Best regards,


  3. Jeff Z August 4, 2017 at 3:17 pm #

    Hi there,
    First of all, thanks for your amazing plug-in. I want to test the free vision before buying the pro version.

    However, after installation, when I use Geopeeker or locabrowser to check foreign countries outside the UK, the currency stop switching (esp Euro countries). The default currency should be GBP and other EU countries should be in Euro.
    My site is

    Could you help me with it?
    Best regards,


  4. aavasilev August 12, 2017 at 12:41 pm #

    In section Flags are mistakes. Upon transition to this section the browser freezes up and the error message in the scenario of a script appears
    Thank You


    • Algoritmika Ltd. August 14, 2017 at 9:17 pm #


      Could you please share admin access to your server (at least WP and also preferably FTP) so I could login and check what’s going on? My email is

      Best regards,


    • Algoritmika Ltd. September 8, 2017 at 10:33 am #


      As mentioned in support thread on – I’m still unable to reproduce the error, but in version 2.5.0 we’ve added new “Show Flags in Admin Settings Section” option to “Advanced Options” section in “WooCommerce > Settings > Currency Switcher > General”. Please try disabling the checkbox and then check if flags settings section is accessible.

      Best regards,


  5. Yvette August 29, 2017 at 10:29 am #


    I am using the “VarkTech Minimum Purchase for WooCommerce” plugin to ensure customers place an order of a minimum ZAR amount of R550.

    I am using your (free at this stage) plugin so the customers can also see the prices in AED. I checked the ‘tRevert Currency to Default on Checkout’ box – and I can see it does change back to ZAR on checkout – but not in my cart.

    The Min pur rule is applied on the cart, before checkout. It then doesn’t allow checkout until AED 550 has been selected (if I had switched to AED currency on an item).

    How can I fix this? I’d like the cart to always show in ZAR – rather than just on checkout.

    Your help is greatly appreciated.

    Thank you.


  6. Megat August 30, 2017 at 10:55 am #

    I would like to purchase the pro version after trying out the free version which works out to compatible to my requirements.

    Do you need to uninstall the free version before installing the pro version?



    • Algoritmika Ltd. September 7, 2017 at 5:59 pm #


      Uninstalling free version is not required – when Pro version is activated, free plugin will “disable itself”. However there is also no real purpose having it on your server, so I suggest you uninstall free version. Both plugins share same options, so all your setting will remain.

      Best regards,


  7. Nirvara September 7, 2017 at 8:08 am #


    I just bought your plugin. Is there a way to make the symbols appear beside the currencies in the widget? It looks a little bit empty, there is only the name of the currencies and nothing else. I tried with the flags, but it looks so glitchy and weird!



    • Algoritmika Ltd. September 7, 2017 at 5:52 pm #


      Yes, that is possible. In “General” plugin settings section (in “WooCommerce > Settings > Currency Switcher > General”) in “Switcher Placement and Format Options” section there is “Switcher Item Format” option, which is set to %currency_name% by default. You can also use %currency_code%, %currency_symbol% and %product_price%. So in your case, you should set it to something like: %currency_symbol% %currency_name%.

      Hope I made it little more clear, and please let me know if you have any more questions.

      Best regards,


  8. mario September 7, 2017 at 5:09 pm #

    i want if its possible force url for change currency, example for change EUR or ?cur=USD for change to USD


    • Algoritmika Ltd. September 7, 2017 at 5:56 pm #


      Yes, that’s possible. To force currency by URL, you need to add alg_currency to the address, i.e. something like this:

      Please let me know if you have any more questions.

      Best regards,


  9. Nirvara September 13, 2017 at 7:37 am #

    Hi again!

    Is there a way to place the currency switcher on the home/front page as a drop down and not as a widget?


    • Algoritmika Ltd. September 13, 2017 at 4:59 pm #


      Yes, that’s possible. You can use one of currency switcher shortcodes:

      And in case if you want to add it via PHP, one of these functions:
      Or alternatively in PHP you can just use do_shortcode() function, e.g.:
      do_shortcode( '[woocommerce_currency_switcher_radio_list]' );

      Best regards,


  10. Vince September 20, 2017 at 5:56 pm #

    Hey guys,
    Great Plugin! I am using the shortcode in my header tab. However, the Dropdown appears as empty (therefore one cannot tell that it is, in fact, a currency switcher). Only when clicking the dropdown can one see the currencies.

    I have tested on various browser and deleted cache, etc. Still happens…

    Would love some help here!


Leave a Reply


= 2.5.2 - 05/09/2017 =
* Dev - General - Switcher Placement and Format Options - "Link List Switcher - Separator" option added.

= 2.5.1 - 03/09/2017 =
* Fix - Price Formats - "Currency Code" option renamed to "Currency Symbol".
* Dev - Flags - Settings description updated.

= 2.5.0 - 02/09/2017 =
* Dev - format_price attribute (defaults to yes) added to alg_convert_price() function (and [woocommerce_currency_switcher_convert_price] shortcode).
* Dev - "Currency Languages (Locales)" section added.
* Dev - General - "Show Flags in Admin Settings Section" option added.
* Dev - General - Settings section restyled.
* Dev - Countries - "Enter Countries as Comma Separated Text" option added.
* Dev - Countries - Section renamed from "Currency Countries (by IP)".
* Dev - Price Formats - "Currency Code" options added.
* Dev - Minor code refactoring.

= 2.4.4 - 02/08/2017 =
* Dev - Flags added.

= 2.4.3 - 30/07/2017 =
* Fix - General - Pretty Price - If "Price Formats" section is enabled - now uses corresponding currency "Number of decimals" instead of shop's default.
* Dev - General - Advanced Options - "Apply Rounding and Pretty Price to Shop's Default Currency" option added.
* Dev - Price Format - Default shop currency added ("Additional currency code position (optional)" as new option; other options are copied from "WooCommerce > Settings > General").
* Dev - Functions - alg_get_product_price_by_currency() - Code refactoring.

= 2.4.2 - 29/07/2017 =
* Fix - Skipping price by currency calculation for shop default currency (this fixes the issue with original prices rounded, when rounding is enabled).
* Fix - Skipping price formatting for shop default currency.

= 2.4.1 - 28/07/2017 =
* Dev - [woocommerce_currency_switcher_convert_price] shortcode added.

= 2.4.0 - 03/07/2017 =
* Dev - "Price Formats" section added.
* Dev - "Reset settings" option added.
* Dev - Autoloading plugin options.
* Dev - Code cleanup.
* Dev - Plugin link updated from to

= 2.3.1 - 21/05/2017 =
* Dev - "Apply Currency Conversion for Fixed Amount Coupons" option added.

= 2.3.0 - 14/04/2017 =
* Dev - WooCommerce v3.x.x compatibility - Price filters.
* Dev - WooCommerce v3.x.x compatibility - Product ID.
* Dev - WooCommerce v3.x.x compatibility - alg_get_product_display_price().
* Dev - WooCommerce v3.x.x compatibility - wc_get_formatted_variation().
* Fix - alg_get_product_price_html_by_currency() - variable and grouped products fixed.
* Dev - Functions - alg_get_exchange_rate_yahoo() - cURL prioritized over allow_url_fopen (file_get_contents()).
* Tweak - Per product settings metabox restyled.

= 2.2.4 - 11/03/2017 =
* Dev - General - "Switcher Wrapper" option added.
* Dev - General - Switcher Item Format - %currency_symbol% value added.
* Dev - General - Switcher Item Format - %product_price% value added.
* Dev - [woocommerce_currency_switcher_product_price_table] shortcode added.
* Dev - Code refactoring.

= 2.2.3 - 06/03/2017 =
* Dev - General - "Reposition Page after Currency Switch" option added.

= 2.2.2 - 01/03/2017 =
* Dev - Functions - alg_get_exchange_rate_yahoo() - cURL fallback added for Yahoo server rates (in case allow_url_fopen is disabled).
* Dev - Functions - alg_get_exchange_rate_yahoo() - Time limit (set_time_limit()) increased to 10 seconds.
* Dev - Language (POT) file updated.

= 2.2.1 - 20/02/2017 =
* Dev - Free shipping minimum order amount conversion by currency added.
* Dev - Language (POT) file updated.
* Tweak - General - Settings divided in sections.

= 2.2.0 - 19/02/2017 =
* Fix - Rounding and Precision added to variable hash.
* Dev - General - "Make Pretty Price" option added.
* Dev - Exchange Rates - "Exchange Rates Server" option added (and "European Central Bank" server added).
* Dev - JS "grab exchange rate" button changed to AJAX.
* Dev - Autoload set to no in add_option.
* Dev - Language (POT) file updated.
* Tweak - Link to "All Currencies for WooCommerce" plugin added.

= 2.1.1 - 31/12/2016 =
* Dev - Admin - General - "Advanced: Fix Mini Cart" option added.
* Dev - Admin - General - "Switcher Format" option added.
* Dev - Admin - General - "Advanced: Additional Price Filters" option added.
* Dev - Language (POT) file updated.
* Tweak - Tag added.

= 2.1.0 - 14/12/2016 =
* Dev - Admin - General - "Advanced: Disable on URI" option added.

= 2.0.0 - 08/12/2016 =
* Dev - Admin - Exchange Rates - "Reset All Rates" button added.
* Dev - Admin - Currencies - "Update All Exchange Rates Now" button added.
* Dev - Admin - Currencies - "Auto Generate PayPal Supported Currencies" button added.
* Dev - "Currency Countries (by IP)" section added.
* Fix - load_plugin_textdomain moved to constructor.
* Tweak - get_woocommerce_currency() replaced with get_option( 'woocommerce_currency' ).
* Tweak - Admin - Exchange Rates - Full currency name and number added.
* Tweak - Admin - Exchange Rates - "Grab rate" button restyled.
* Tweak - Admin - Currencies - "Currency (Shop's Default)" added.
* Tweak - Admin - Currencies - Code added to currency name in list.
* Tweak - Tooltip added to custom number admin settings.
* Tweak - Check for Pro rewritten.
* Tweak - Author added.
* Tweak - Major code refactoring.

= 1.0.1 - 04/08/2016 =
* Fix - custom_number replaced with alg_custom_number - this fixes the issue with "Total Currencies" field duplicating.
* Dev - Language (POT) file added.

= 1.0.0 - 24/07/2016 =
* Initial Release.


  • Buy the plugin 🙂
  • Download plugin’s zip to your computer (you will receive an email with download link, or you can always download the plugin from your account).
  • Go to Admin Dashboard > Plugins > Add New > Upload Plugin and browse for downloaded zip file.
  • If plugin is successfully installed – you should see it added in the Plugins list.


Name: Currency Switcher for WooCommerce Pro
Version: 2.5.2
Last updated: 3 weeks ago
Requires WordPress version: 4.1
Tested up to WordPress version: 4.8
Tested up to WooCommerce version: 3.1.2
Tags: , ,
Author: Algoritmika Ltd.

Free Version

Support forum