Compatibility

Sales By Country for WooCommerce is designed to work alongside the most popular WooCommerce multi-currency, multi-language, and country-based pricing extensions. When a supported plugin is active, the report detects it automatically — no configuration is required — and adjusts how country sales are calculated and displayed.

How the Base Currency Works

Your store’s base currency is the currency configured in WooCommerce › Settings › General › Currency. It is the currency WooCommerce uses to record and total every order, and it is the default currency the Sales By Country report displays. Understanding it makes the multi-currency behaviour below much clearer.

Default view — no currency selected

When you first open the report, no currency is selected in the Currency filter. In this state, sales from every currency are combined and shown in your store’s base currency. Orders that were paid in another currency are converted to your base currency using the exchange rate recorded on each order at the time it was placed — so the totals reflect the value the order actually had, not today’s rate.

Selected-currency view

When you choose a currency from the Currency filter, the report switches to that single currency. It shows only the orders that were actually paid in the selected currency, expressed in that same currency — again using each order’s historical rate rather than the current one. Switching currency does not re-total your entire store into a live-converted figure; it isolates the sales that genuinely happened in that currency.

Where each plugin’s rate comes from

PluginHow amounts relate to the base currency
CURCY – WooCommerce Multi Currency (VillaTheme)Order totals are normalized to the base currency when WooCommerce imports the order, so the default view is already exact. Selecting a currency multiplies each base value back by the order’s saved historical rate.
WPML, Yay Currency, WooCommerce Multi-Currency, Aelia Currency SwitcherEach order stores the exchange rate that applied at checkout. The report uses that saved rate to convert to your base currency, or to the currency you select.
WooCommerce Price Based on CountryCountry-specific prices are recorded on each order, and the report reads those recorded amounts directly against the base currency.
The report never uses live or today’s exchange rates. Every converted figure is based on the rate stored on the order when the customer paid, so your historical reports stay stable over time.

Multi-Currency Plugins

When a supported multi-currency plugin is active, a Currency filter appears at the top of the report. Selecting a currency shows the sales for orders placed in that currency, displayed in the same currency. With no currency selected, figures are shown in your store’s base currency. The table below is a quick reference; each plugin is explained in full underneath.

PluginHow it works in the report
WPML – WooCommerce Multilingual and MulticurrencyWhen multi-currency mode is enabled, a Currency filter lets you view each country’s sales per currency. WPML also adds a Language filter (see Multilingual below).
Yay CurrencyEach order’s Yay Currency conversion rate is applied so country sales are reported in the selected currency.
WooCommerce Multi-CurrencyDetected automatically; the currency selector lists the plugin’s active currencies and reports sales accordingly.
Aelia Currency SwitcherCountry sales are converted using each order’s stored exchange rate and shown consistently, including in CSV exports.
WooCommerce Price Based on CountrySupported for both the legacy and HPOS order storage. Orders using country-based pricing are reported with the correct amounts.
CURCY – WooCommerce Multi Currency (VillaTheme)Fully supported — see the dedicated section below.

WPML – WooCommerce Multilingual and Multicurrency

WPML’s WooCommerce Multilingual and Multicurrency add-on lets you run your store in several currencies and languages. When its multi-currency mode is enabled and more than one currency is configured, Sales By Country adds a Currency filter to the report.

Choosing a currency displays each country’s sales for the orders placed in that currency, converted using the exchange rate WPML recorded on each order at the time it was placed. If multi-currency mode is turned off, or only your default currency is configured, the report simply shows all sales in your store’s base currency. WPML also powers the Language filter described in the Multilingual section below, so you can analyse sales by both country and storefront language.

Yay Currency

When Yay Currency is active, the currencies you have configured in it appear in the report’s Currency filter. Selecting a currency reports each country’s sales in that currency, using the conversion rate Yay Currency stored on each individual order when the customer paid. Because the rate is read from the order itself, historical orders keep the exact rate that applied at purchase time rather than today’s rate — so past reports stay consistent.

WooCommerce Multi-Currency

WooCommerce Multi-Currency is detected automatically. Its active currencies are added to the report’s Currency filter, and country sales are reported using the plugin’s currency conversion. No setup is needed inside Sales By Country — activating the currency plugin is enough for the filter to appear.

Aelia Currency Switcher

Aelia Currency Switcher records the exchange rate used for each order at checkout. Sales By Country reads that stored rate so every country’s totals are converted accurately and match what your customers actually paid, including refunded orders. The same converted values are carried through to the CSV export, so downloaded reports use the same currency and figures as the on-screen report.

WooCommerce Price Based on Country

WooCommerce Price Based on Country lets you set different product prices for different countries or pricing zones. Sales By Country is compatible with both the plugin’s legacy storage and its newer HPOS-based storage, so orders placed with country-specific pricing are reported with the correct amounts for each country.

CURCY – WooCommerce Multi Currency (VillaTheme)

CURCY (by VillaTheme) stores every order’s totals in your store’s base currency inside WooCommerce Analytics. Because of this, the default report view — with no currency selected — is already accurate and shown in your base currency.

The Currency filter lists all of the currencies you have enabled in CURCY. Selecting one shows only the orders that were actually paid in that currency, with each amount converted back using the exchange rate stored on the order at the time of purchase. This applies consistently to the main country table, the Products by Country table, and the single-country Orders table. Refunds are matched to their parent order, so refunded amounts are always included correctly.

If you enable CURCY on a store that already has orders, go to WooCommerce › Analytics › Settings and run Rebuild so your historical order data is normalized to the base currency. Until you rebuild, past orders may show incorrect totals in the report.

Multilingual (WPML)

When WPML WooCommerce Multilingual is active, the report gains a Language dropdown filter in addition to the country controls. This lets you see how sales break down across the different storefront languages your customers used — useful for multilingual stores that want to understand which language versions of the site drive sales in each country. The Language filter works together with the date range, the billing/shipping toggle, and the country filter.

Platform Compatibility

Beyond currency and language plugins, Sales By Country is built to run on modern WooCommerce and WordPress environments.

FeatureSupport
High-Performance Order Storage (HPOS)Fully supported — the report works with both the legacy post-based order storage and HPOS.
WooCommerceVersion 5.0 and above (tested up to 10.9.4).
PHPCompatible with PHP 8.2.