Your Cart
WooCommerce multi-currency WPML

How to Configure WooCommerce Multi-Currency with WPML: Currencies, Switchers and Payment Gateways

WooCommerce uses one base currency for a store, but customers in different markets may need to view prices and complete checkout in other currencies. WooCommerce itself does not provide a complete multi-currency workflow for this purpose, so an additional multicurrency extension or plugin is required. WPML provides settings for adding currencies, managing prices, formatting values, displaying a currency switcher and controlling payment gateways by currency.

A reliable setup requires more than placing a switcher on the website. You must distinguish between displaying a converted price and accepting payment in that currency. The practical workflow is to confirm the WooCommerce base currency, configure WPML multicurrency, choose manual or exchange-rate pricing, add the switcher, assign suitable gateways and test cart and checkout behavior. Compatibility with specific gateways, themes, caching layers, taxes and other extensions still needs separate verification.

What WooCommerce and WPML Each Handle

Base currency versus additional currencies

WooCommerce has one base currency, configured under WooCommerce > Settings > General. This is the starting point for the store’s currency configuration. If the store should support additional display or payment currencies, a multicurrency extension or plugin is needed. WPML’s multicurrency workflow supplies settings for that additional configuration.

Adding currencies through WPML is not the same as changing the WooCommerce base currency. Changing the base currency does not automatically convert existing product price numbers. Payment-gateway support for the new base currency should also be checked before making such a change.

Display, pricing and payment are separate checks

A currency switcher can change the currency shown to a visitor, but that alone does not confirm that the selected currency can be used at checkout. Price formatting, price calculation and payment processing are separate parts of the setup. A gateway must support the currency, and its account and processor configuration must also be suitable.

Exchange-rate and currency-conversion charges may be imposed by the payment processor or the customer’s bank rather than by WooCommerce. For this reason, a displayed currency should never be treated as proof that the complete payment path is ready.

Before You Configure Multicurrency

Decide how prices will be managed

First confirm the WooCommerce base currency and list the additional currencies the store intends to offer. Then choose how product prices will be handled. WPML supports manual prices per currency as well as automatic exchange-rate conversion. Manual pricing means that separate values can be entered for each currency. Automatic conversion calculates prices through an exchange-rate approach available in WPML settings.

Neither method is universally preferable. The appropriate choice depends on the store’s pricing and market strategy. Before enabling the configuration, review the resulting product prices and consider how currency changes may affect taxes, shipping costs, discounts, subscriptions and cart totals.

Check checkout dependencies before launch

Review payment-gateway support for every intended currency before enabling checkout. Confirm the relevant merchant-account and processor configuration rather than assuming that a gateway supports every currency selected in WPML.

Plan the work in a staging environment. Tests should cover successful payments, declined payments, refunds and failed webhook or callback scenarios. Compatibility with a specific payment-gateway plugin, theme, caching layer, tax configuration or WooCommerce extension is not established by the general WPML settings and must be tested separately.

How to Enable Multiple Currencies in WPML

Enable multicurrency and add currencies

After confirming the WooCommerce base currency, open WPML > Settings > Multicurrency. Enable the multicurrency workflow and add the currencies the store will offer. The selection should reflect the store’s actual pricing and checkout plan, not simply every currency that appears useful for display.

At this stage, verify that the selected currencies are available in the intended payment path. Adding a currency to WPML does not by itself configure a payment processor or confirm that an account can charge customers in that currency.

Configure formatting and price calculation

WPML allows currency formatting to be configured for each currency. Review the symbol position, decimal separator, thousand separator and number of decimal places. These settings affect how prices are presented throughout the store and should be checked on product pages, in the cart and at checkout.

Next choose between manual prices per currency and automatic exchange-rate conversion. Rates can be set manually or obtained from a configured source according to the available WPML settings. Review the calculated or entered values before making the configuration live. Conversion may also have implications outside the displayed product price, including taxes, shipping, discounts, subscriptions and final cart totals.

How to Add a WooCommerce Currency Switcher

Choose a placement method

WPML documents three ways to display a currency switcher. In the block editor, add the Currency Switcher block. Alternatively, place the Currency Switcher widget in an available widget area. A third option is to insert the [currency_switcher] shortcode in a page, post or template.

The switcher is useful only after multicurrency has been enabled and alternative currencies have been configured. Choose the placement that fits the store’s existing layout, then test it with product pages, the cart and checkout rather than checking only whether it appears visually.

Review layout and displayed information

WPML’s multicurrency settings allow the switcher layout and displayed currency information to be configured. Review how currencies are identified and whether the selected presentation is clear to visitors. The front-end display should correspond with the prices shown after a customer changes currency.

Remember that the switcher communicates a display or selection choice. It does not guarantee that the selected currency is supported by the payment gateway. That relationship must be verified during checkout testing.

Assigning Payment Gateways by Currency

Configure gateways for each currency

WPML can enable or disable payment gateways separately for each configured currency. In WPML > Settings > Multicurrency, edit the settings for a currency and select the payment gateways that should be available for it. Repeat the process for each currency used by the store.

With this configuration, customers can see only the gateways enabled for their selected currency. This helps align the checkout options with the intended payment route, but it does not replace verification of the gateway account, merchant configuration or processor support.

Validate the payment path

Test every relevant currency-and-gateway combination in staging. Check a successful payment and a declined payment, then verify refunds and failed webhook or callback scenarios. Review the final order currency and the amount passed through the payment process.

Do not assume that every payment gateway supports every currency. WPML is not the developer or support provider for third-party payment gateways, so compatibility and account requirements must be confirmed separately with the relevant provider before checkout is enabled.

What Happens to Cart Items When the Currency Changes

Choose a cart-change behavior

Currency changes require a defined behavior when products are already in the cart. WPML documents an option to synchronize and reprice cart contents after the customer changes currency. This keeps the cart aligned with the newly selected currency, subject to the configured pricing and other store rules.

The alternative is to prompt the customer for confirmation and reset the cart. This can make the currency change explicit, but it removes the existing cart contents. The appropriate choice depends on the store’s checkout and pricing policy. Neither behavior should be assumed to work identically with untested extensions or configurations.

Test existing-cart scenarios

Test a currency change with products already in the cart. Review product prices, taxes, shipping costs, discounts and the final cart total. Also check situations involving subscriptions where they are relevant to the store. Currency changes can affect more than the visible product amount.

Cart synchronization requires the WPML language cookie. If synchronization is unavailable, check cookie-related settings before assuming that the pricing configuration is incorrect. Confirm the resulting order totals before making the behavior live.

Testing and Troubleshooting Checklist Before Launch

Configuration and front-end checks

Use a staging environment to verify the complete workflow before deployment. Start with the WooCommerce base currency, then review the currencies added in WPML, their formatting and the selected pricing method.

  • Confirm that the Currency Switcher block, widget or [currency_switcher] shortcode appears in the intended location.
  • Change currency on product pages and confirm that displayed prices respond as expected.
  • Test the cart and checkout after changing currency.
  • Check existing-cart behavior, including repricing or confirmation and cart reset.
  • Review taxes, shipping costs, discounts, subscriptions and final totals in the relevant currencies.
  • Check the WPML language cookie if cart synchronization does not work.

Also review caching and geolocation behavior as separate compatibility considerations. The documented multicurrency workflow does not establish that every caching layer, theme or visitor-location configuration will behave correctly without testing.

Payment and order checks

For every enabled currency, verify the gateways shown at checkout and confirm that they match the intended configuration. Test each applicable currency-and-gateway combination rather than testing only one representative path.

  • Complete a successful payment and review the resulting order currency and total.
  • Test a declined payment and confirm the customer-facing result.
  • Process or verify a refund scenario for the relevant currency.
  • Test failed webhook or callback scenarios.
  • Review any exchange-rate or currency-conversion charges that may come from the processor or customer’s bank.
  • Confirm that the final setup is supported by the configured gateway account and processor.

Do not treat a visual currency change as proof of payment compatibility. Before launch, verify the complete sequence from currency selection through order creation and payment result. If a specific gateway plugin, theme, tax setup, caching layer or WooCommerce extension is involved, include that combination in the staging tests.

Configuring WooCommerce multi-currency with WPML involves several connected decisions: confirm the WooCommerce base currency, enable multicurrency in WPML, add and format currencies, choose manual pricing or exchange-rate conversion, and expose a switcher through a block, widget or shortcode. Then assign payment gateways by currency and define what happens to existing cart items when the currency changes.

The final step is testing. Check product, cart and checkout totals, payment outcomes, refunds, callbacks, taxes, shipping, discounts and subscriptions where relevant. Gateway support, conversion charges and compatibility with the wider store stack must be verified before deployment. Explore our WordPress plugins, WooCommerce extensions, themes and membership plans to find the right tools for your website.

Free Worldwide shipping

You can download the products right away at wpbetterplugins.com

Immediate delivery

After the payment is credited, the product is ready for download

International Warranty

Offered in the country of usage

100% Secure Checkout

Stripe / Apple Pay / Google Pay / MasterCard / Visa

Zadzwoń