2022 Nov BFCM Marketplace Sale

  1. Documentation /
  2. Currency Converter Widget

Currency Converter Widget

The Currency Converter Widget for WooCommerce allows you to show a widget listing currencies that can be used by customers to dynamically switch the displayed currency prices.


↑ Back to top
  • WooCommerce 3.5+


↑ Back to top
  1. Ensure your store meets the plugin requirements.
  2. Download the extension from your WooCommerce dashboard.
  3. Go to Plugins > Add New > Upload and select the ZIP file you just downloaded.
  4. Click Install Now and then Activate.

If you don’t need to use your own API key, skip to the Setup and Configuration section.

Open Exchange Rate API

↑ Back to top

Currency conversion is done using rates from the Open Exchange Rate API. We include an API key but you may also sign up and use your own: https://openexchangerates.org/signup

Entering your API Key

If you have your own key, optionally add it via WooCommerce > Settings > General > Open Exchange Rate API.

Don’t forget to Save changes.

Setup and Configuration

↑ Back to top

To add the Currency Converter widget:

  1. Go to: Appearance > Widgets.
  2. Drag the WooCommerce Currency Converter, listed under Available Widgets on the left, to one of your sidebars.
  3. Select and enter your preferences:
    • Title: Name the widget
    • Currency codes: Enter one currency code per line.
      • See a list of supported currencies at: http://openexchangerates.org/api/currencies.json
      • Use an asterisk (*) to control how currency symbols are displayed.
        • E.g., SEK* becomes 999kr. USD * becomes 999 $.
      • If you omit * and just provide the currency, WooCommerce’s default currency position will be used.
  1. Currency display mode: Buttons or Select Box (both shown below in Usage)
    • Widget message: Note displayed to users.
    • Show currency symbols in widget: Default is currency codes only.
    • Show reset link – If enabled, a ‘reset’ button will be shown to reset the currency back to your store’s default.
    • Disable location detection: Tick to turn off detection of the user’s location. Geolocation is included as part of the Currency Converter widget, using locale to automatically display currency for their country.
  2. Select Save.


↑ Back to top

What the user sees on the frontend.

With Buttons and Geolocation enabled, detecting users in a country using the euro and highlighting EUR:


With Select Box and Geolocation enabled, detecting users in a country using the euro and pre-selecting in the dropdown:


With Buttons and Currency Symbols selected and Geolocation enabled, detecting users in a country using the euro and highlighting :


With Buttons selected and Geolocation disabled, unable to detect the same user’s location and defaulting to USD.


All prices (formatted using the woocommerce_price() core function) are changed to selected, including:

  • Product prices
  • Sale prices
  • Cart/checkout totals
  • Shipping

Prices are displayed with the currency symbol, e.g., $10 and not 10 USD.

Example of a U.S. online store, but the cart displaying currency conversion in EUR/€ 


Customers will still pay in your base currency. Prices are for display and informational purposes only.

Frequently Asked Questions

↑ Back to top

Missing currency symbol.

↑ Back to top

If you are converting prices to a non-WC-supported currency, you can add it and its symbol using the snippet at Add a Custom Currency Symbol.

Is it possible to display the widget somewhere other than the sidebar?

↑ Back to top

Yes, you can use the shortcode [woocommerce_currency_converter] in the location you wish. If working in the template files, you can use the do_shortcode function like so: echo do_shortcode( '[woocommerce_currency_converter] ' );

The following attributes are available to use in conjunction with the [woocommerce_currency_converter] shortcode.

Currency Converter Attributes

  • currency codes – defaults to USD and EUR (plus your shop’s default currency if it’s neither one of those), but any of the supported currency codes can be added in addition.
  • message – empty by default, but you can add text that will appear above the resulting currency widgets.
  • currency display – by default, the currencies display as a row buttons. By setting this attribute to select , it displays a dropdown menu instead.
  • show_symbols – false (0) by default, can be changed to true (1).
  • show_reset – false (0) by default, can be changed to true (1).
  • disable_location – false (0) by default, can be changed to true (1).

To use additional attributes, you need to pass the values to the shortcode. Here’s the shortcode with all possible attributes, and how it will appear on the page as a result:

[woocommerce_currency_converter currency_codes="AUD, USD, GBP, EUR" message="Prefer to see prices in a different currency?" show_symbols=1 show_reset=1 currency_display="select" disable_location=1]
The Currency Conversion Widget that results from the shortcode and attributes above.
The Currency Conversion Widget that results from the shortcode and attributes above.

Slow page loads/no rates pulled in/conversion not working.

↑ Back to top

Ensure that your server firewall is not blocking requests to the API. The IP address for the service is

Shipping options not converting.

↑ Back to top

The Currency Converter Widget can only convert shipping prices if they are displayed using radio buttons – not dropdown menus.

Using country flags instead of country codes.

↑ Back to top

Flags can be used instead of codes using this code snippet.

Note: We are unable to provide support for customizations under our Support Policy. If you are unfamiliar with code/templates and resolving potential conflicts, select a WooExpert or Developer for assistance.
a[data-currencycode="USD"] {
background-image: url('http://upload.wikimedia.org/wikipedia/en/a/a4/Flag_of_the_United_States.svg') !important;
background-size: 60px !important;
width: 30px;
background-repeat: no-repeat;
font-size: 0;
height: 20px;

Why is the conversion not working for the Cart and Checkout Pages?

↑ Back to top

The shortcode [woocommerce_currency_converter] must be added to both the cart and checkout pages for the conversion to work:

Keep in mind that only the default USD and EUR can be displayed with the shortcode ‘as is.’ You will need to add more currency codes to the shortcode if you would like them to display (see “Is it possible to display the widget somewhere other than the sidebar?” section for more details).

Questions and Support

Something missing from this documentation? Do you still have questions and need assistance?

  • Have a question before you buy this extension? Please fill out this pre-sales form – please include the name of this extension in your query.
  • Already purchased and need some assistance? Get in touch with a Happiness Engineer via the WooCommerce.com Support page and choose this extension name from the “I need help with” dropdown


The most customizable eCommerce platform for building your online business.

  • 30-day money-back guarantee
  • Support teams across the world
  • Safe and secure online payment