Price Based on Country for WooCommerce


Price Based on Country for WooCommerce allows you to sell the same product in multiple currencies based on the country of the customer.

How it works

The plugin detects automatically the country of the website visitor throught the geolocation feature included in WooCommerce (2.3.0 or later) and display the currency and price you have defined previously for this country.

You have two ways to set product’s price for each country:

  • Calculate price by applying the exchange rate.
  • Set price manually.

When country changes on checkout page, the cart, the order preview and all shop are updated to display the correct currency and pricing.


Sell and receive payments in different currencies, reducing the costs of currency conversions.

Country Switcher

The extension include a country switcher widget to allow your customer change the country from the frontend of your website.

Shipping currency conversion

Apply currency conversion to Flat and International Flat Rate Shipping.

Compatible with WPML

WooCommerce Product Price Based on Countries is officially compatible with WPML.

Upgrade to Pro

This plugin offers a Pro addon which adds the following features:

  • Guaranteed support by private ticket system.
  • Automatic updates of exchange rates.
  • Add an exchange rate fee.
  • Round to nearest.
  • Display the currency code next to price.
  • Compatible with the WooCommerce built-in CSV importer and exporter.
  • Thousand separator, decimal separator and number of decimals by pricing zone.
  • Currency switcher widget.
  • Support to WooCommerce Subscriptions by Prospress .
  • Support to WooCommerce Product Bundles by SomewhereWarm .
  • Support to WooCommerce Product Add-ons by WooCommerce .
  • Support to WooCommerce Bookings by WooCommerce .
  • Support to WooCommerce Composite Product by SomewhereWarm.
  • Support to WooCommerce Name Your Price by Kathy Darling.
  • Bulk editing of variations princing.
  • Support for manual orders.
  • More features and integrations is coming.

Get Price Based on Country Pro now


WooCommerce 2.6.0 or later.


  • /assets/screenshot-1.png
  • /assets/screenshot-2.png
  • /assets/screenshot-3.png
  • /assets/screenshot-4.png
  • /assets/screenshot-5.png
  • /assets/screenshot-6.png


  1. Download, install and activate the plugin.
  2. Go to WooCommerce -> Settings -> Product Price Based on Country and configure as required.
  3. Go to the product page and sets the price for the countries you have configured avobe.

Adding a country selector to the front-end

Once you’ve added support for multiple country and their currencies, you could display a country selector in the theme. You can display the country selector with a shortcode or as a hook.


[wcpbc_country_selector other_countries_text=”Other countries”]

PHP Code

do_action(‘wcpbc_manual_country_selector’, ‘Other countries’);

Customize country selector (only for developers)

  1. Add action “wcpbc_manual_country_selector” to your theme.
  2. To customize the country selector:
    1. Create a directory named “woocommerce-product-price-based-on-countries” in your theme directory.
    2. Copy to the directory created avobe the file “country-selector.php” included in the plugin.
    3. Work with this file.


How might I test if the prices are displayed correctly for a given country?

If you are in a test environment, you can configure the test mode in the setting page.

In a production environment you can use a privacy VPN tools like TunnelBear or ZenMate

You should do the test in a private browsing window to prevent data stored in the session. Open a private window on Firefox or on Chrome


July 19, 2019
After searching for a suitable, and robust, plugin we finally came across Price Based on Country for WooCommerce. We had one small query that we sent to the author - we heard back very quickly and the query was resolved. We are very impressed by this plugin and also by the fantastic support. Keep up the great work!
July 17, 2019
This plugin is the reason we made our most recent website on WooCommerce and not Shopify. It works perfectly as soon as you plug it in. If you need support (you probably won't), it's fast and helpful. On a tech note, it provides shortcodes to embed the currency changer wherever you want it. We used this alongside a bit of fairly basic html/css to create a floating currency switcher which expands and gives you the options when you hover over it. Particularly relevant for our customers who are primarily international businesses which will order in different currencies depending on external factors. Don't try and run an international e-commerce store without this plugin.
May 31, 2019
The Plugin does the job and the support is fast and wokrs professionally
May 30, 2019
With good free functionality you can sell your products with multiple currency. Other plugins didn't work as well for me in a seamless way. I like minimal and this fits me 🙂 Great support. Well maintained. I will go pro too.
Read all 154 reviews

Contributors & Developers

“Price Based on Country for WooCommerce” is open source software. The following people have contributed to this plugin.



1.8.11 (2019-08-13)

  • Added: WooCoomerce 3.7 compatibility.

1.8.10 (2019-08-06)

  • Fixed: other_countries_text index is undefined on the country selector widget.
  • Fixed: ‘WCPBC_Admin_Notices’ does not have a method warning.
  • Dev: Prevent that the filter wc_price_based_country_shortcode_atts overrides the default shortcode attributes.

1.8.9 (2019-07-04)

  • Fixed: Double discount in cart related to discount plugins.
  • Fixed: Switchers don’t work on the checkout page.
  • Dev: New filter to allow to third-party adding product type supported.

1.8.8 (2019-06-06)

  • Fixed: Products with sale price zero use the regular price instead of the zero sale price.
  • Tweak: A tool (WooCommerce > Status > Tools) to updates the database to the latest version.

1.8.7 (2019-05-21)

  • Fixed: Store notice of the “Test mode” option displays a plain HTML.
  • Fixed: empty_no_zero function detects “false” as a empty value different to zero.

1.8.6 (2019-05-14)

  • Fixed: Duplicate variable products when order by price.
  • Fixed: Minor bugs.
  • Tweak: Use a javascript file instead of an inline script for the country selector.
  • Dev: New JavaScript events.

1.8.5 (2019-05-03)

  • Fixed: “No products were found matching your selection.” error on WC 3.6.

1.8.4 (2019-05-02)

  • Fixed: WC 3.6 and external products issue.
  • Fixed: Compatible with discount plugins for WC 3.6.
  • Fixed: Order products by price does not work.
  • Fixed: Error on “order by price” main query.
  • Fixed: Refresh the Ajax geolocation transient after the pricing zone update.

1.8.3 (2019-04-19)

  • Fixed: Shipping calculator form does not change the pricing zone.
  • Fixed: Removed the stock check from the synchronization variable product prices with children.
  • Fixed: Variable Subscription products page does not load.
  • Added: Cache the geolocation AJAX response to improve performance.
  • Tweak: Improve compatibilty with plugins and themes which uses AJAX to load content.
  • Tweak: Force display of price in the geolocation AJAX function to fix plugins conflict.

1.8.1 (2019-04-10)

  • Added: Warning to users who uses a deprecated version of the Pro add-on.
  • Added: get_regions as deprecated function.

1.8.0 (2019-04-09)

  • Added: Compatible with WooCommerce 3.6.
  • Added: New option to allow users to disable the tax adjustment based on location when the prices are entering with tax included.
  • Added: Test to detect geolocation problems in system report.
  • Added: New constant to allow users uses the remote_addr as customer IP.
  • Added: New interface for pricing zone table.
  • Tweak: Country switcher template compatible with defer script attribute.
  • Tweak: Button to unselect Eurozone form the countries list of the pricing zone.
  • Fixed: Minor security issues.
  • Dev: Adapt code to the WordPress code standards.
  • Dev: New admin frawework.

See changelog for all versions.