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.
Installation ↑ Back to top
- Ensure your store meets the plugin requirements.
- Download the extension from your WooCommerce dashboard.
- Go to Plugins > Add New > Upload and select the ZIP file you just downloaded.
- 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:
- Go to: Appearance > Widgets.
- Drag the WooCommerce Currency Converter, listed under Available Widgets on the left, to one of your sidebars.
- Select and enter your preferences:
- Title: Name the widget
- Currency codes: Enter one currency code per line.
- See a list 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.
- 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.
- Select Save.

Usage ↑ Back to top
What the user sees on the frontend.
With Buttons and Geolocation enabled, detecting user in a country using the euro and highlighting EUR:

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

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

With Buttons selected and Geolocation disabled, unable to detect 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 resulting currency widgets.currency display
– by default the currencies display as a row buttons. By setting this attribute toselect
, 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]

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