How To Import Product Properties To Shopware 6 

- Our extensions, Shopware

In the following article, we explain how to import product properties or attributes to Shopware 6. A tiny Stack Overflow discussion unveils the unpleasant truth: Shopware 6 import has its limitations when it comes to product properties. Below, we explore the issue and provide a solution. So, if you want to learn what obstacles are associated with the Shopware 6 product property import, you’ve come to the right place. You will find out how to import product attributes to Shopware 6. But let’s first explain what Shopware 6 product properties are. Also, don’t forget to check our Shopware Cookbook for additional helpful materials.   

What Are Shopware 6 Product Properties?

Each of your Shopware 6 products contains a number of fields, such as ‘Name,’ ‘Product number,’ and ‘Manufacturer,’ to name a few. They are product properties or attributes. Each of these properties is associated with a database entity that stores the property’s values. And each property within the database has its own internal name that does not support spaces.

Because you directly address the database while importing products, you must address product attributes exactly as they are recorded in the database.

For instance, you cannot use the Manufacturer attribute as “Manufacturer”. In your database, it is “manufacturer_id”. So is Product Number – it is called “product_number” as a part of your database. Check the exported file to see how different properties are named.

And knowing real property names is crucial for importing any file. The number one requirement for a successful import is to name the columns with product properties as they are named inside Shopware 6. Otherwise, the system won’t understand what data you want to transfer.

Unless you use mapping. But first things first, so let’s first see what Shopware 6 product property issue we discovered.

Shopware 6 Product Property Import Issue

Alex argues that there is a problem with the Shopware 6 import for properties. It is impossible to import all properties with the respective name of the property and the name of the value instead of id and group_id. Also, there is a request for getting the IDs efficiently before starting a transfer to simplify the Shopware 6 property import. 

Dneustadt recommends using the Advanced Settings of Shopware 6. It is possible to set an alternative identifier for each entity imported there, as defined by the mapping of the CSV column to the field. Yes, it is the aforementioned mapping, but we will return to it later. Now, let’s see the proposed way of importing product attributes to Shopware 6:

  • Duplicate the default profile for properties and edit the duplicated profile. 
  • Under Advanced Settings, find the entities for property groups and options. For both of them, change the identifier from id to translations.DEFAULT.name. At that point, also delete the id and group.id fields from the mapping.
  • Now, you can import properties and their respective group simply by using the name as an identifier. 

If a property with the exact same name already exists, Shopware 6 will update it instead of creating a new one. 

However, there is a strong disadvantage associated with this approach. You cannot have two different properties with the same name. So, you need another approach to Shopware 6 property import

Shopware 6 Product Property Export & Import

You need the Improved Import, Export, and Mass Actions app to master product property import and export in Shopware 6. Especially if you plan to create custom attributes. 

Default export and import

By default, Shopware 6 doesn’t let you export products with custom properties. It means that your added custom “Size” or “Color” properties won’t be exported along with the products.

You can only export custom product properties as a dedicated export entity. However, in this file, you will not have any reference to the products your custom attributes are assigned to. Consequently, importing products back with the relevant values assigned is impossible.

Improved export and import

With the Improved Import, Export & Mass Actions app, you can export custom properties along with the products in a convenient format, featuring both the database ID (that’s what is needed to solve the Shopware 6 product property issue) of the custom property and the name displayed in the store’s backend for quick reference.

The exported file can look like the screenshot below:

The columns highlighted in green are the columns with the custom product properties in the following format:

color#0bde8db993684f8b92a713913aa3d9c3

Where:

color – is the name of the property as it is displayed in the Shopware 6 backend

#0bde8db993684f8b92a713913aa3d9c3 – is the ID of the property as it is written in the database

How to import products with properties to Shopware 6

The Improved Import, Export, and Mass Actions app lets you import products along with properties using three different formats – i.e. column names.

  1. property_name#property_id – the default column name format as you get it in the export file;
  2. property_name – the second possible option is to import property by naming the column as it is named in the Shopware 6 administrator panel;
  3. #property_id – the third possible option is to use the ID of the property solely, starting with the # symbol

When importing products with custom properties at the mapping step of the import procedure, you need to assign all custom properties from your file to:

  1. Find the custom property, for example, “color”
  2. In the dropdown with the store properties select ‘propertiesSources’

Next, you need to assign “propertiesSources” to ALL custom properties you are importing. This way Shopware will understand what to do with them. No matter what order or format you use.

Why use both the name and ID of a property 

Pay heed to the fact that it is better to use both the name of the property and the id due to the issue illustrated above – the ability to use the same name for multiple different properties. So, if you have several product properties with the SAME name, you need to identify them separately. That’s why it is recommended to use property IDs (e.g., #0bde8db993684f8b92a713913aa3d9c3), which are always unique and associated with only one property

How To Import Product Properties To Shopware 6 

So, the main requirement for importing product properties to Shopware 6 is the Improved Import, Export, and Mass Actions app. Install it, export your products to get property IDs, create a new import profile for products, and run the product import process.

Go to Extensions -> Improved Import, Export & Mass Actions -> Product Import. Click the New Profile button.

shopware 6 xml import

On the Select file screen, follow these steps to import properties to Shopeare 6: 

how to import xlsx to shopware 6

  1. Specify the name on your import profile; 
  2. Choose Products in the Entity type dropdown;
  3. Enable the On Schedule toggle if you want to create a schedule of updates;
  4. Configure email notifications if necessary;
  5. Select your file format (e.g., CSV, XML, or XLSX);
  6. Choose your import source (e.g., file, URLFTP, Google Drive, or Google Sheets);
  7. Configure advanced settings: URL rewrite behaviormedia replacement behavior, and stock increment strategy

Next, proceed to the mapping screen. Specify which columns from the imported file should match the properties of the products from your Shopware 6 store. We’ve already described this step above, so don’t forget to assign all custom properties from your file to properties sources.

Note that the app lets you preview how products will look before you import them. When you click the Import button at the bottom of the Preview result page, the extension imports your update file.

Check the application’s manual for more information on how to import products along with their properties to Shopware 6: Improved Import, Export, and Mass Actions Manual.

Other Advanced Import & Export Features

The Improved Import, Export, & Mass Actions application allows you to handle the most common issues with Shopware 6 data transfers, you can not only easily manage your catalog in a spreadsheet editor and re-import it back due to the full support for product properties, but also automate various routine processes associated with data transfers. Other significant advantages of our app include:

  • Customer import and export with full support for addresses;
  • Orders export;
  • Full support for product variants with a full set of attributes;
  • Product properties mapping with mapping presets;
  • Import and export schedules;
  • Import and export of CSV, XLSX, and XLSX files;
  • Direct file uploads;
  • FTP/FTPS uploads.

You can find more information about the Improved Import, Export & Mass Actions app here: