Currency Switcher for WooCommerce plugin

Currency Switcher for WooCommerce

Currency Switcher for WooCommerce

Add WooCommerce currency switcher to your shop.


Tested on WooCommerce v3.1.1 and WordPress v4.8

  • Version: 2.4.0
  • Last updated: 3 weeks ago

Author: Algoritmika Ltd..


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).
  • Option to revert to original currency on checkout.
  • Various currency switcher placement options.
  • Price format options for each currency.


There are four 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]

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.

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 are updated from server.

Currency Countries (by IP)

This 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 plugin can be used as “price and currency by country” plugin.

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


There are no reviews yet.

Be the first to review “Currency Switcher for WooCommerce”

Leave a Reply

= 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.