Product CSV Importer and Exporter

The WooCommerce CSV importer and exporter are supported by Polylang for WooCommerce.


You need to use WooCommerce 3.2 or later. Your CSV file must contain one row per product and per language. It’s however possible to use multiple files, for example one file per language.

Configure the CSV file

Your CSV file contains a list of product and their translations and you need to identify the language of each row, and which rows are the translation of each others. To achieve this you need to create a ‘Language’ and a ‘Translation group’ column.

  • Language: you must specify the language code. You can find it in languages list table, column ‘Code’.
  • Translation group: you must specify a value which identifies to which translation group this product belongs. This value must be unique to the translation group.

In the example below, we import one product in 3 languages. All rows which are the translation of each other are sharing the ’20’ value.

As shown below, you can use the SKU as unique translation group. As WooCommerce imposes to use one column per field, you need to copy your SKU values and paste them in the Translation group column. Be careful: as opposed to the SKU there isn’t any warning if you reuse an existing identifier for the translation group.

If you want to use one file per language, you need also to create a ‘Language’ column and a ‘Translation group’ column. This will allow to identify which row from one file is the translation of the other rows in the other files.

For example below is a CSV file which contains English products:

And another file with its French translations:

Import the CSV file

Once you have correctly created your CSV file, you can run the WooCommerce importer. In the Mapping screen, assign the ‘Language’ and the ‘Translation group’ fields to your corresponding colums and run the importer.


When exporting products, you can choose to add the ‘Language’ column and the ‘Translation group’ column as shown below:

Here is an example where we exported one product available in 3 languages. We get one row per product and per language. All rows which are the translation of each other are sharing the same translation group.