Skip Navigation

This is a guest post by Neil Matthews from

In this post Neil will talk about building multi language and multi currency websites with WPML and WooCommerce.

If you need to set up subscriptions within your website then one of the best softwares out there is Pabbly Subscriptions which contains a number of features including recurring and one time billing, coupons and the ability to create unlimited products and plans.

Why Build Multi Currency / Multi Language Websites?

If English is the Lingua Franca of international business and the USD is seen as the recognised currency of online transactions, why do we need to go to the trouble of creating a multi language / multi currency e-commerce site?

The answer is plain and simple, to keep your potential customers happy. They don’t care if we are all meant to read English and spend in dollars, they are the one about to click add to card and pull out their credit card, you should be thinking about their needs and making your e-commerce site accessible in their language and currency.

The ability to give your potential customers details of your products or services in their native language and in their local currency helps to break down any barriers they may have to purchasing from you.

If you can price your products in someone’s local currency they know exactly what the price is and don’t have to do mental exchange rate dance.

WPML & WooCommerce Make This Easy

Thanks to the great collaboration between WPML and WooCommerce setting up an e-commerce site that supports multiple languages and currencies is a much easier task than it was a few years ago.  With a couple of plugins and some configuration you are good to go, no custom coding required.

Using techniques you already know from translating content, you can translate your products or outsource the translation with iCanlocalize and have a multi language / multi currency site.

Setting Up Multi Language E-Commerce

Here are the plugins you need to set up a multi language multi currency site (MLMC from now on) .

WPML of course -, I’m not going to talk about installing and configuring WPML in this post, there are more than enough excellent resources on this site already, But you will need to download and install WPML, add the languages you plan to support and add a language selector.

WooCommerce – You need to install and configure WooCommerce. Full details of how to do this are beyond the scope of this post, but I will be demonstrating them in a webinar (see base of post for details), but you will need to install the plugin, setup the checkout and cart pages, setup your payment processor, setup shipping costs and then start adding products.

Woocommerce Multi Languge Plugin  -There is an additional WPML plugin you need to add to your site.  This manages the integration between WooCommerce and WPML and also adds multi currency functionality to  your WPML dashboard menu.

WooCommerce Special Pages

A number of special pages are required to make WooCommerce work correctly.  They are a cart page, a store front page, and checkout page and some miscellaneous pages such as customer account pages.

These are setup by adding short codes to pages which tell WooCommerce to display the cart or checkout.  Don’t worry too much about this configuration stage, there is a wizard which will create these pages and add the short codes for you when you install WooCommerce.

Once these are setup they will allow you to display products, manage your shopping cart and checkout to buy items.  All of these special pages come pre-translated so when you switch languages, your cart , store front and checkout pages will all be displayed in the supported language.

Creating Products

Creating a product in WooCommerce is much like writing a blog post in WordPress.  You add a product description in the normal post editor, then add product specific information such as price, size, colour options , SKU, stock levels etc.

You can add one or more product image and save your new product and publish it much like you would a blog post.

Once published it will automatically appear in your store page.

Translating Products

If you are familiar with translating content in WPML then translating products will be very easy for you.

There is the familiar WPML user interface where we can create a base language product then add translations in our desired language.

Translating Products
Translating Products

Multi Currency Pricing

There are two ways to price your products in multi currency.  You can manually set the prices in different currencies for a product, or you can use the prices generated automatically based on the exchange rate table.

A currency is associated with a language and when you switch to that language products are automatically shown in the new currency.

Enable Multi-Currency
Enable Multi-Currency


Some things you should take in account when running a MLMC e-commerce site.

Fluctuations in exchange rates – exchange rates go up and down, you should keep your finger on the pulse of your various exchange rates and update as required.  The exchange rate table is static and will require management so you don’t lose out if there is a big change in rates.

Multi Currency fees with your payment provider – you should factor in payment processor fees when pricing your products, you will probably have to pay a fee when you withdraw your money if you bill in a foreign currency.  For example I’m based in the UK but most of my clients are from the US, I bill in dollars but when I withdraw money from Paypal as GBP I am hit with a foreign currency exchange fee.


See It In Action

Here is a quick screencast video to show you what a MLMC shop with a single product looks like.

Want To Learn More?

I’m running a live webinar where I will showing you exactly how to setup a MLMC e-commerce site. The webinar is on Tuesday 21st May at

  • 9am-10am Pacific
  • 12pm-1pm Eastern
  • 5pm-6pm London
  • you can select your local time zone when you click the link below

The things I will teach are:

  • Installing WooCommerce & WPML
  • Making WooCommerce Multi Langauge/Multi Currency ready
  • Adding multiple currencies and associating with languages
  • Adding and manageing products in multiple languages
  • Integrating your store with paypal for multiple currencies
  • Q & A where I answer any questions you have about MLMC e-commerce

To join the webinar click on the link below and leave your details, the webinar is at no cost, but slots are limited to 100 so book your seat now.

About Neil Matthews

Neil is the owner of, a web development agency specialising in mulit language websites.  Neil is also recognized as one of our Expert WPML Contractors

42 Responses to “Building Multi Language and Multi Currency Websites with WPML and WooCommerce”

  1. Im very interested in this but will be flying across the U.S. on Tue. so can’t make the webinar. Nice to know these features exist within WP.
    Ron Donelson

  2. I’ve signed up – very interested in this. More specifically because it allows different pricing. It doesn’t cost the same to sell something in € and in $ so its good to be able to add into the total cost the different charges for selling in different countries. One concern I have is will this also take into account American English $ and UK English £?

    • WPML ships with just one version of the english language, but you can add languages like en_US and en_GB and assign different currencies to each one.

        • Go to WPML->Languages->Edit languages. There, add a new language. Give it a name, the locale (en_GB) and an optional flag. Save and it’s added to your site.

          • Thanks very much, Amir.

            One thing still bothers me though:

            I understand WPML ships with just one version of English, but it uses the British flag (en.png is the Union Jack) even though the locale is set for en_US. Is there a reason for this obvious mismatch between flag image and locale?

            • WPML comes with country flags for most countries, including the US flag. You can go to WPML->Languages->Edit languages. There choose the US flag for English. Does this help?

  3. I’m evaluating using WPML + WooCommerce specifically for multi-currency manual pricing. I’ll try to be on the webinar tomorrow.

    My main question is: in such a setup, is the actual price sent to the payment provider in the base currency for the product, or in the currency based on location? Besides what you say about foreign exchange fees in withdrawing money, I’m trying to determine if there will be fees on the purchasing side, if the base currency of your payment provider is different than the order currency?

    Or do I not have the correct mental model here?

    Thanks very much,

    • We send the translated price to the payment gateway, but the order is recorded in WooCommerce in the base currency. This is a problem that we are looking into and hope to provide a solution for next version or shortly after.

      • Thanks. So in the meantime if we had 2 payment gateways, one connected to a USD account and one to a GBP, then we could ask customers to use the one for USD orders and the other for GBP, I guess?

        • Payment gateways are not exactly connected with currencies. The multi-currency support in WooCommerce (via WPML) means that you can specify pricing in different currencies for the same product.

          When arriving at the checkout, clients can choose their payment method independently of the price. It’s the last stage of the checkout page.

          What you’re suggesting, to limit payment processors based on currency, makes good sense. However, I don’t think that it’s implemented in WooCommerce at the moment.

          Do you see what I mean?

          • Thanks Amir, yes. I think having the option to link certain payment processors to particular location/currencies would be a good feature to have, but we can live with simply suggesting customers use one or the other based on where they are.

  4. I just installed WooCommerce and WPML reports that “WooCommerce Multilingual is enabled but not effective. It requires WPML Translation Management and WPML String Translation in order to work.”
    My obvious questions is, do I need to get these two additional plugins, or is WPML trying to upsell me?

    • WooCommerce Multilingual doesn’t run by itself. You need to buy WPML and install the core plugin and WPML Translation Management.

  5. First Time I am using woo commerce platform on WordPress but i want to add country based currency which show on product page when user select the country pricing will show country based currency. I just want to know this plugin can solve out this issue or can we use this feature through this WPML plugin ?

    • Yes, but it’s designed for multilingual e-commerce sites. The multi-currency mode lets you specify different pricing, in different currencies for translations of the product. This is fully working.

      Is this what you are looking for?

      • Thank You for your reply, but i want to add country specific currency drop down menu to select the product price which i added manually.

        • Yes, this is also what I’m looking for. I run my webstore in English only (for now) but would like to show one product but in different prices in different currencies.

          How can I do this without having to define English but for different countries, which makes the drop down menu look silly and confusing?

          A buyer whom understands English would not even be tempted to change the language and therefore not know that I have my product listed in the currency of their choice.


          • Today WooCommerce Multilingual lets you add several currencies to WooCommerce. We understand that we also need to add filtering so that you can display specific currencies to specific regions. We will be adding it to the next release of WooCommere Multilingual. I’ll write all about it in our blog before it goes out.

            • Thanks for your reply, Amir. I agree that WC Multilingual lets you add several currencies to WooCommerce however, they are tied to a ‘language’ and not a country, right?

              Currently, I do not need the Multilingual feature, but I would like a Multi Currency feature.
              Simply put, I need to display one product price in a few currencies. So how can I do this?

              BTW, when is the next release due out? TIA!

              • Yes, you are right. Today, the currencies are tied to languages. We know that many people need something else. It makes sense to limit products in different currencies to countries. This way, you should be able to set different pricing, in different currencies and make it available to people coming from these countries only.

                It’s on our roadmap for WooCommerce. To implement it, we’ll probably need to work with the WooCommerce team, in adding some logic into WooCommerce itself. This is not a problem for us, as we work with them on a regular basis.

                I hope that we can begin development for this in about a month.

                • Hi Amir, have you developed a solution to have a currency switcher which is not associated with language yet?

                • Working on it. I’ll write in our blog and describe what we’re building very soon. At the first stage, we are only adding the hooks and will provide a set of reference PHP functions to implement different methods. Next, we’ll see what works best on live sites and we’ll build the GUI for that.

  6. Hi Amir,
    1) Could I filter products to show or hide according to language? We have some products in Argentina different than Brazil and some other are the same.
    2) Does multi currency allow me to set up the price manually for each product in the required language? I mean that we don’t need an auto currency converter, is it manual? Thank you!

    • 1) Right now, there is no GUI setting to display different products for different regions. This is the next major thing that we want to add to WooCommerce Multilingual. It’s a pretty big project, considering that we need to add this in the products listing, checkout process and payment gateways. We are also planning to include different ways to determine the country for visitors.

      So, right now, this is not included in the code, but it’s planned for a bit later.

      2) Yes, multi-currency lets you enter different (manual) pricing for the same product in different languages. The automatic currency conversion is optional.

    • Hi, I’m also requiring the regionalize function, because we’re going to decide if make our new store in Magento or Woocommerce, is it an approximate date for that update? Is there another way to do it with woocommerce avoiding to make a new woocommerce installation in different domains or subdomains ? (tags, plugin or something)

      • It’s going to take about a 4-6 weeks until we have this. We are working to complete something else with easier translation interface to WooCommerce attributes and variations. Then, we’ll get started on this development.

        Does this still help, or too late for you?

  7. Im Creating a ecommerce multilingual site and I have been used a wpml plugin as well as wocommerce.

    I´ve already get the customization of both plugn-ins and I can use the different currencies in their respective language but for one reason the paypal payment method was disabled with the change and shows me a message that the pay pal method does not support the currency

    have you ever seen tha issue?

    I change the configuration of the woocommerce multilingual plug in and then the currency in usd is not reflected more on the site ..

    do you know why can this happen?

    Let me send you the site

    thanks for your help

  8. I’ll need to set up separate shipping and payment setting for a specific country/ language. Currently I use the & UPS extensions. Will I be able to customize these settings?

  9. I have just updated to the latest version of WCML (v 3.0)

    I tried to add additional currencies, but received this error:
    “Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 702960 bytes) in /home/coupure/www/ on line 33”

    I am unable to add new currencies.

    What can I do?

  10. If I use Paypal on such an installation and my woocommerce currency is, let’s say, USD, but my customer sees the product in GBP since he’s using the local British English site.

    When he checks out and lands on the Paypal page, will the final amount still be in GBP or will it be converted into USD?

      • Hei Amir

        I have all the latest WPML modules installes here : – according to the client it works OK with Paypal in different currencies, but not with The NETS Payment gateway. It works OK when not multicurrencies and follows the price set in the woocommerce settings.

        Now the shop settings currencies is set to EUR and WPML is set to multicurrency, When choosing SEK (swedish krone) in the shop and arriving at The nets payment gateway, the currency is the EUR and it has not calculated the new price.

        If the price is 1000 SEK in the shop, it becomes 1000 EUR in the NETS gateway.

        The NETS Woocommerce gateway supports all the relevant currencies but has never been used with mulicurrencies before.

        How do we figure this out? Would you be able to take a look?

        Thanks. Nickolass,
        (provider of the NETS payment gateway module for Woocommerce)

        • I’m not familiar enough with NETS payment gateway. Of course, we would be very happy to investigate this with you and get everything working correctly.

          Are you the author of the gateway code? Your signature in the comment says Nickolass, but your email address appears different than this. Can you help me?

          • Yeah I know, Sorry Amir:)

            This is Nickolass writing, the responsible person for the NETS gateway (I am not the programmer, but the owner and reponsible for it’s continous development).

            I am writing on behalf of Tina, who is the client of mine, and also a member of WMPL. Off course, I am also a member of WPML(Nickolass), but it would be too confusing to ask from my account.

            Tina asked me to write you as she was not sure how to put her questions.

            How do we proceed from here?
            What do you need in order to take a look at this?

            Unfortunately they still have no testsite. This is what I think would be the most important thing to make in order to test this out. And to test other things as well in a safe environment.

            Your call next.

  11. I am using latest version of wpml,woocommerce multilingual and other related plugins for it.In this post one of the screenshots shows that it is possible to add currency exchange rate and also possible to set price on per product basis for different language.But I don’t see any option like that.I am attaching a screenshot of what I see. . Please help me on with this,I need to setup price manually for different language.