WooCommerce Multi Currency

Created: 11/2017

Latest updated: 10/2021 – Updated version: 2.1.22

By: VillaTheme

Thank you for purchasing our plugin. If you have any questions that are beyond the scope of this documentation, please feel free to request support at our Support Forum. Thanks so much!



WooCommerce Multi-Currency is a currency converter plugin for WooCommerce, which allows you to display prices and accept payments in multiple currencies. The plugin can detect customers’ countries and languages, and apply prices as their native currency. It is also convenient for users to switch between different currencies with currencies bar, to find the currency they want, among the available options.





The plugin is flexible with many currency options for front-end display, update exchange rates option

  • Auto-update exchange rate: The plugin automatically updates exchange rates. You can set the time for the automatic update: every 30 minutes, 1 hour, 6 hours, 1 day, 2 days, 3 days, 1 week, 1 month.
  • Successful update exchange rate email: The plugin will send a notification email whenever it updates the exchange rate.
  • Set the exchange rate manually: The plugin also allows you to set up the exchange rate manually.
  • Exchange fee: Every time you exchange money from one currency to another, the bank or money transfer operator may apply a currency exchange fee. The difference between the exchange rate they decide to apply and the real exchange rate traded in the market is the currency exchange fee. WooCommerce Multi-Currency allows you to add permanent exchange fees to exchange rates.
  • Price formatting: Design position for currency symbol
  • Custom currency symbol: You can customize currency symbols. Example: United States Dollar can be displayed as USD, US$, $…
  • Fixed Price: This allows you to set up custom prices in different currencies in every product. The fixed prices will overwrite the prices calculated by exchange rates.
  • Hidden Currency: The plugin allows you to hide currencies that you do not want to be shown on the front-end.
  • Select currency exchange rate sever: You can select to update the exchange rate from VillaTheme.com, Google Finance, Yahoo Finance. More exchange rate servers will be added in the future.
  • Use SESSION: The plugin will use the session instead of cookies to save the selected currency.
  • Currency Price Switcher: A switcher appears under the product price. Allow customers to switch the price between currencies.


WooCommerce Multi Currency can automatically detect customers’ native currency based on their country or language.

*Important: Please take note that the auto-detect county features may not work properly with websites/servers that have a cache. Please try out the free version to check if it works fine on your website.

  • Detect currency based on customers’ country: The plugin will detect customers’ country based on their IP address, then select their currency to display prices.

* Note: This option can be applied to detect at the country level, not working for states or provinces and regions within a country.

  • Currency by country: You can select which currency will be displayed to customers from which country.
  • Approximate Price: With this feature, prices will be displayed in the default currency. But under that, there will be approximate prices that are displayed in the customer’s native currency.  Help customers know how expensive/cheap products are.
  • Auto-select currency based on Polylang language: The plugin will select a currency to display prices base on your site language. For example, there are 2 languages on your site English and Spanish, you can select to display prices in GBP on the English site and in EUR on the Spanish site.
  • Auto-select currency based on WPML language: Similar to Polylang, but prices will be selected based on WPML’s language.


WooCommerce Multi-Currency allows you to select checkout currencies. You can select one or more checkout currencies.

*Important: Please take note that in order to display a payment gateway on the checkout page, that payment gateway must support your default currency. Example: If you have South African Rand ZAR as your default currency, then it is not possible for you to enable PayPal on your checkout page. Because PayPal does not support ZAR, even if you used Multi-Currency to change ZAR to USD on the front-end.

  • Allow multi-currency payment: Customers can purchase in their selected currency. In order to use this feature, you need a payment gateway enabled on your site that supports the customer-selected currency.
  • Selected check-out currencies: The plugin allows you to select check-out currencies. For example, you can display prices in 4 different currencies on your shop but accept payment in 2 currencies only.
  • Display payment methods based on currency: You can select which payment gateway will appear on the checkout page based on the currency.
  • Checkout Currency on Cart page: Change the currency on the Cart page to check out currency.


This setting allows you to make beauty prices, you can set the rules to your product price

  • Accept lower bound: Enable if you accept making price beautiful for both lower bound and upper bound price. Disable this function will be applied for upper bound price only.
  • Add rules: Set the rules to display beauty prices on the front-end. You can read the guidance here.



The plugin provides you shortcodes to display currencies exchange widgets, exchange rates on the front-end.



The plugin can be displayed on the front-end as a widget or a currency bar.

  • Currencies bar design: – Type in your currencies bar title, it is “Select your currency” by default. – Select currencies bar position left or right. – Style: there are 5 styles for you to select currency code, currency symbol, flag, flag + currency code, flag + currency symbol. – Color and background color.
  • Conditional tags: Select which page where the bar will appear by using WordPress conditional tags, WooCommerce condition tags.
  • Widget design: You can customize the widget title and widget styles are available to be selected.
  • Custom flag: Some countries use the same flag, this option will help you to display the country as a currency right.
  • Custom CSS: All of these options are not enough? You can add your own CSS to design your widget and currencies bar.
  • Collapse Currencies Bar: Allow to minimize the currencies bar on the front-end. The currencies will appear as one currency and display fully when customers hover their mouse on it.

System Requires

It is recommended using

1. Plugin WooCommerce 3.2 or newer is installed and activated.

2. Make sure that those limits to a minimum as follows in order for free-trouble while installing.

max_execution_time 60
memory_limit 256M
post_max_size 64M
upload_max_filesize 64M

Download Plugin

Get the plugin installation package from your account download page and save it to your desktop.

Install & Active plugin

Go to PluginsAdd NewUpload PluginChoose file/ Select  woo-multi-currency.zip file/ click “Install Now“/ click “Active plugin“.

Install and Set up Video

Done! Let’s start using the plugin.

After installing the plugin, please go to Dashboard/ Multi Currency/ General to set up your currencies and exchange rates. Then there should be a currencies bar to appear on your site, allowing customers to switch between currencies.



In General, you can set up the main features of WooCommerce Multi Currency

  1. Enable: Enable/Disable the plugin
  2. Fixed Price: The plugin allows you to enter custom prices in different currencies for each product. This custom price will overwrite the price calculated by the exchange rate. You can enter fixed prices in product edit pages.
    • Note: To make fixed shipping cost apply to a specific currency, you have to explicitly set all available cost fields in that currency if the respective field in default currency is not empty
    • Important: Even if you enable this option, you still have to Update/Config currency rates properly because rates will be used in case fixed product price/shipping cost is not set for a currency
  3. Use SESSION: By default, the selected currency will be saved in cookies. Turning on this option will let the plugin save this information in session instead of cookies. This option is useful for websites with cache, where the selected currency change back to the default currency after reloads.
  4. Currency Price Switcher: Display a price switcher under product price on product pages, allowing customers to switch the price between currencies.
  5. Switch Currency by JS: Enable it to make currency will be changed, but it does not use URL. It is good for SEO. Now it is not compatible with Caching plugin
  6. Use Cache plugin: Enable this option when you are using any cache plugin on your site to remove the negative impacts of Cache plugin on Currencies changing/converting on your WooCommerce.
  7. Default Currency: The default currency will appear on your site if no auto-select option is enabled.
  8. Hidden: This option allows you to hide some currencies which you don’t want to appear on the front-end. By selecting Yes, you will hide that currency on the front-end.
  9. Currency: Select currencies here
  10. Position: Select position for the currency symbol.
  11. Rate and exchange fee: Rate can be entered by yourself or the plugin will automatically fill in. The exchange fee can be changed by you only.
  12. Number of decimals: Select how many numbers will be displayed after the command in each currency.
  13. Custom symbol: This option allows you to enter a custom symbol for each currency. Example America Dollar can be displayed as $, USD, $ US…
  14. Action: Allow you to update the exchange rate of a specific currency or remove that currency
  15. Update All Rates: Update exchange rates of all your currencies.
  16. Add Currency: This button will duplicate your last currency, then you back to option 8-Currency to select a new currency.
  17. Add All Currencies: Add all currencies on your settings.
  18. Remove All Currencies: Remove all existing currencies.


In Location tab, you can set up the plugin to automatically select currency base on customers’ country or language.

Auto Detect: Auto select currency

1. Auto Detect: There are 4 option for you to select
– No: Turn off the auto detect currency option, customers will select currency by themselves
– Auto select: Auto detect currency base on the country of customers. The plugin will detect customers’ countries base on their IP Address. Then select the currency which you assign in option 4 of this tab.
– Approximate Price: The plugin will detect customers’ country then display an approximate price in their native country under WooCommerce price
– Polylang: Auto select currency base on Polylang language.
2. Geo API: The Geo API you want to use to detect customers’ countries.  There are 2 options WooCommerce and External.

–  If choose WooCommerce, the 3rd service WooCommerce uses:
‘ipinfo.io’ => ‘https://ipinfo.io/%s/json‘,
ip-api.com‘ => ‘http://ip-api.com/json/%s‘,
If choose external, we use: http://www.geoplugin.net

3. Currency by Country: With Auto Detect being set as “Auto select country”, when this option is turned on, currencies will be displayed base on customers ‘s countries.

If the Auto Detect feature is set to be “Approximate price’

– Enable: Approximate price will be detected based on country’s respective currency as in the table below the option

– Disable: Approximate price will be detected based on the country’s official currency
4. Countries: Select which currency will be displayed for customers from which countries.
5. Select all: Select all countries for displaying a specific currency.
6. Remove all: Remove all existing countries.
7. Get country by currency: Automatically enter the countries that use the corresponding currencies.


Auto detect: Approximate Price

This option allows displaying the approximate price based on Customers’ country.

With Auto Detect feature being set as Approximate Price, there will be options:

  • Show Approximate price for: Select where you want to show approximate price, other than only show with product price
  • Approximate price’s label: Add label for Approximate price if you want
  • Approximate price’s position: Choose a position for the approximate price

Other options have the same function as above.

As in the image below, approximate price is displayed below original price, with label “Approximately”


In Checkout tab, you can select which currencies will be able to check out. And which payment methods are able to check out with each currency.

  1. Enable/Disable: the option to change currency to available checkout currency in the checkout page.
  2. Enable Cart Page: Change currency in the Cart page to check out currency.
  3. Default currency: The default currency on the checkout page. When the selected currency is not available for checkout. The currency on the checkout page will be forced to the default checkout currency.
  4. Checkout Curency: Select which currency is available for checkout.
  5. Payment methods: Select which payment methods will be available on the checkout page for each currency.
  6. Currency by Payment method: Use this option if you want to put a mandatory currency with the respective pament gateway after clicking on the “Place order”
  7. Change currency follow: the currency on checkout pagre can choose to change follow to : Shipping address, Billing address or None.
  8. Display multi currencies: Enable to display both in store pages and checkout page if they are different at the check out page.


Design tab, where you can configure the front-end interface of the plugin.

Design Currencies Bar

  1. Enable/Disable the currencies bar: The bar float on a sidebar of your site, allows customers to switch currencies.
  2. Title: Enter the title of the currencies bar.
  3. Position: Select currencies bar position.
  4. Desktop: Enable it to allow Currencies Bar Collapse on desktop,  this option allows you to minimize the currencies bar on desktop. The currencies bar will appear as 1 selected currency and will display full when customers hover their mouse on it.
  5. Mobile: Enable it to allow Currencies Bar Collapse on mobile.
  6. Max height(px): Enter the max height for currencies bar.
  7. Text color: Select the color of currency bar text.
  8. Style: Select the style of the currencies bar, there are 4 options for you to select: Default (Currency code), Symbol, Flag,  Flag & Currency Code, Flag & Currency symbol.
  9. Main color: Configure the color of the currencies bar.
  10. Background color: Configure te background color of currencies bar.

Conditional Tags and Widget

  1. Check out page: Enable to hide currencies bar on the checkout page.
  2. Cart Page: Enable to hide currencies bar on the cart page.
  3. Other pages: Configure where will the currencies bar appear by using WP conditionals Tags.
  4. Flag Custom: The option for you to replace a flag with your own flag.

Shortcode and Custom CSS

  1. Text color:
  2. Background color:
  3. Activate text color:
  4. Activate background color:
  5. Custom CSS: Allow you to add your own CSS code to design the currencies bar or widget.


Price Format

This setting allows you to make your price more beautiful, you will set the rules to create your desired product price.

price format

  • Enable: To activate the option.
  • Accept lower bound: Enable if you accept making price beautiful for both lower bound and upper bound price. Disable this function will be applied for upper bound price only.
  • Add rule: You can add rule for price format following two rules below:


* Note: This feature is not applied for shipping. 




In Update, you can find options about the auto-update currency exchange rate and the plugin.

  1. Auto update exchange rate: Select the time when the plugin will update exchange rates. Every 30 minutes, 1 hour…
  2. Finance API: Select where exchange rate will be got. From Google, Yahoo, Transferwise and Cuex.
  3. Rate decimals: Select the exchange rate decimals
  4. Emails: Enable this option to receive an email whenever exchange rates are updated successfully.
  5. Email Custom: When you don’t want to receive updated exchange rate email in admin email.
  6. Auto Update Key: Fill in your key what you get from https://villatheme.com/my-download to automatically update WooCommerce multicurrency plugin. You can follow this guide.

Bulk Fixed Price

From version 2.1.13 of this plugin, the Bulk Fixed Price feature is updated that allows to bulk add fixed prices for products. This helps you to save time for adding fixed prices for products in multiple currencies.

Step 1: Go to Mul Currency > Bulk Fixed Price

Step 2: Export product file in CSV format

Step 3: Fill or change the fixed regular/sale price of each currency

Step 4: Upload the same file in CSV format to import.




The plugin provides you shortcodes to display currencies exchange widgets, exchange rates on the front-end.

  • Currency Selector widgets with different front-end styles.
Shortcode Description

Note: This is applied for specific product pages built with Elementor or other page builders.

    • Exchange rate shortcodes allow you to display live exchange rates on the front-end.
      [woo_multi_currency_rates currencies="GBP,EUR"] This shortcodes will display the exchange rate between GBP, EUR and your default currency on front-end. You can change to other currencies by change the currencies codes GBP, EUR
      [woo_multi_currency_exchange price="100" currency="EUR”] Example I have USD as my default currency, this shortcode will display the EUR amount converted from 100 USD.
    • Shortcode for configuring the size of flag: adding the short code flag_size= value[0-1] to the shortcode of currency selector widget. Example: [woo_multi_currency_layout4 flag_size=0.4]





Plugin Author Converted Price Fixed Price
WooCommerce Product Bundles SomewhereWarm Yes No
WooCommerce PDF Invoices & Packing Slips Ewout Fernhout Yes No
WooCommerce Bookings WooCommerce Yes No
Printful Integration for WooCommerce plugin Printful Yes No
Table Shipping Rate WooCommerce Yes No
WooCommerce Wholesale prices Rymera Web Co Yes No
LearnPress ThimPress Yes No
WooCommerce Dynamic Pricing & Discounts plugin RightPress Yes No


Plugin Author Compatible
Polylang Frédéric Demarle Change currencies base on language
WPML OnTheGoSystems Change currencies base on language
Autoptimize Frank Goossens (futtta) Require to change WooCommerce settings
WP Fastest Cache Emre Vona Require to change WooCommerce settings
WP Super Cache Automattic Require a free plugin
WP Rocket WP Media Fully compatible
W3 Total Cache Frederick Townes Fully compatible
Extra Product Options for WooCommerce Themehigh Fully compatible
Event Tickets Modern Tribe, Inc. Fully compatible
The Events Calendar Modern Tribe, Inc. Fully compatible
Name Your Price Kathy Darling Fully compatible
WooCommerce PDF Invoices, Packing Slips, Delivery Notes & Shipping Labels WebToffee Fully compatible
Woo Discount Rules Flycart Bulk discount (percentage + fixed), Product adjustment (percentage + fixed), Cart adjustment (percentage discount only)
WooCommerce Product Add-ons WooCommerce Fully compatible
Elementor Elementor.com Fully compatible
Catna – WooCommerce Name Your Price and Offers Villatheme Convert price + support fixed price for Name your price fields
WooCommerce Boost Sales Villatheme Dynamic price and discount for bundle



Template Usage
/woo-multi-currency-selector.php [woo_multi_currency],[woo_multi_currency_plain_vertical_2] shortcode

Extra Information

Thank you for your attention!

If you have any question, please create a topic at our FORUM, we will support within 24 hours.