Shopware CSV import with translations
Maintain all shop languages in one spreadsheet and import them in one run - with automatic column detection, validation before writing and a way back in case something goes wrong.
- Further languages are separate trans_ columns in the same file as the master data.
- The import recognises many column names automatically, such as "Artikelnummer", "SKU" or "title".
- A validation shows before writing what will be created, updated or skipped.
- Strict Mode, snapshots and "Undo last import" keep even large imports under control.
CSV import with several languages in standard Shopware
Shopware comes with an import/export module with profiles and field mappings. For a single language that works well. But as soon as name, description and meta texts in three or four languages should come from one spreadsheet, the mapping effort grows, and errors often only show after the import in the shop. On top of that, a spreadsheet from the translation agency rarely has exactly the column names the profile expects.
Multilingual CSV import with the PIM
The PIM bundles import and export in one dialog that you open from the product list. On export you set the main language: it goes into the normal columns such as name or description. All other languages appear as trans_ columns, grouped by sales channel and language. The built-in export template "Übersetzungen" (translations) assembles these columns with one click.
Eight fields are available per language: name, description, meta title, meta description, keywords, pack unit, pack unit plural and search keywords. On import the PIM assigns the trans_ columns to the matching shop language using the language code. Columns that cannot be assigned to a language are reported explicitly instead of being ignored silently.
Matching the products
Which row belongs to which product is set via "Product mapping via": product number, EAN, manufacturer number or product ID. With supplier data the manufacturer number is often the more reliable key. The import mode determines whether products are only updated, only created or both.
Step by step: importing translations via CSV
- Export a template: open import/export, choose the export template "Übersetzungen" or assemble the language fields yourself, and export all or only the filtered products.
- Edit the spreadsheet: fill the trans_ columns in Excel, LibreOffice or at the translation agency. Keep the column headers unchanged.
- Load the file: upload the CSV or Excel file in the import or enter a URL. Change the delimiter if needed.
- Check the mapping: review the detected columns, choose the matching field and the import mode.
- Validate: the validation shows the number of new, updated and skipped rows as well as warnings and errors before anything is written.
- Import: start the import, with Strict Mode for critical data. Then check samples in the detail view per language.
Tips from practice
- "Also import data into main language": if you only import into a channel language that is not the admin language, products look empty in the admin. With this option the PIM also writes the translated fields into the admin's main language.
- Duplicate product numbers: the import reports duplicate product numbers in the file. Clean them up before the real run.
- Save profiles: recurring imports and exports are saved as your own profile with field selection and settings.
- Enable snapshots: with "Create snapshots for CSV imports" the PIM saves the previous values. You restore them in the config matrix in the Snapshots tab.
- Close gaps selectively: instead of exporting everything, filter for missing translations first and export only those products.
- Categories separately: categories have their own CSV import and export in category management, with columns per field and language.
- Test small first: import a new spreadsheet with just a few rows first, check the result in every language and only then start the full import. That way swapped language columns show up early.
Frequently asked questions
What are the columns for translations called?
The export writes further languages as trans_ columns following the pattern trans_<channel>_<language>_<field>, for example with en_GB as language and name as field. On import the shorter form trans_<language>_<field> is recognised as well.
Which fields can be imported per language?
Name, description, meta title, meta description, keywords, pack unit, pack unit plural and search keywords.
Can I import Excel files directly?
Yes. Besides CSV the import also reads Excel files, plus TSV, XML and DATANORM. Files can be uploaded or loaded from a URL.
What happens if the import contains errors?
The validation up front shows new, updated and skipped rows as well as warnings and errors. In Strict Mode all changes already imported are rolled back automatically on errors. In addition there is "Undo last import".
Who is allowed to import CSV?
The import can be controlled via a function switch in the config matrix. Superadmins always have access.
Read more
- CSV import and export documentation - all fields, profiles and options
- Config matrix documentation - snapshots, function switches, performance
- Translate Shopware products - DeepL and AI right in the admin
- DATANORM import for Shopware - supplier data without detours
- Bulk edit Shopware products - corrections after the import
Try PIM for Shopware
All licence models and terms are listed on the pricing page. Want to know up front whether the PIM fits your shop and your processes? Get in touch via the contact form - we answer personally.