You can add or update multiple products at once by uploading an XLSX file for product data and a ZIP file for product images. This might come in handy if you worked with other shop systems or external tools before or if you need to update product data for several products, for example, their stock level. With the help of the XLSX file, you don't need to manually add or edit each product in the cockpit.
Skip to:
- How to import products
- How to create your XLSX file
- How to handle file validation errors
- The structure of the XLSX file
How to import products
Follow these steps to import product data into your cockpit:
- In the sidebar of your cockpit, select Products.
- On the top right, select Import products.
You will be forwarded to a view that allows you to upload up to two files from your device. - In the section Product data (XLSX), select Choose file and select the XLSX file including the product data for the products to be imported from your device.
Note
Choosing an XLSX file in this section is required for importing products. It is not possible to upload a file with a different file format than XLSX. Furthermore, the XLSX file has to match our requirements and must include all required product data. The file name is not relevant for the product import, you can choose a name of your liking. If you don't have a XLSX file for your products yet or are not sure about the correct file structure, read through How to create your XLSX file first.Info
If you would like to update existing products, we recommend that you first export your products and then use the respective export XLSX file as a basis for your product import. The export XLSX file matches all requirements and has the correct file structure for the product import. - In the section Product images (ZIP), you can optionally add a ZIP file including the product images related to the products in your XLSX file. To do so, select Choose file and select the ZIP file including the product images to be imported from your device.
Note
If you don't have a ZIP file for your product images yet, you can also upload the images in the cockpit later on. Please be sure to leave the images column of the XLSX file empty or remove the column at all in this case. - In the section Import options, specify whether you want to add new products or update existing ones:
- If you select Add new products, only products will be imported that do not yet exist in your cockpit.
- If you include existing products in your XLSX file, they will be ignored.
- If you select Update existing products, products you already have in your cockpit will be updated.
- If you include new products in the XLSX file, they will be ignored.
- Existing products that are not included in the XLSX file will be ignored as well.
- When updating products, you can also delete existing data. But no worries, you need to actively allow that by selecting the checkbox Delete data if cell is empty.
- If you activate the checkbox Delete data if cell is empty, you can delete existing product data by including the corresponding products in your XLSX file and leaving the cells empty that you would like to delete. The only data that you cannot delete like this is data in columns that are marked with REQUIRED.In the section Import options, determine whether you would like to add new products or update existing products:
- If you do not activate the checkbox Delete data if cell is empty, empty cells will be ignored and the respective product data will not be updated or deleted.
- Once you've added your file(s), select Validate files. The added files will then be validated by our system.
- If all products are fully validated (this is indicated in an infobox at the very top of the Upload files card), select Upload files in the lower right corner.
Info
If at least one product couldn't be validated, you might find some help in the section How to handle file validation errors. You could also decide to upload the file(s) without fixing the errors. In this case, only the products that are fully validated will be uploaded. - You're now prompted to an overlay. Select Back to product overview in order to get back to the Product overview in your cockpit.
You've started the product import. Depending on your file size, the import may take a while. We would like you to still be able to work in your cockpit during the import instead of staring at a progress bar. That's why we'll inform you via an email to your notification email address as soon as the import is finished. After a successful product import, you'll find the new or updated products in your Product overview and can manage them just like every other product in your cockpit.
How to create your XLSX file
The XLSX file for the product import needs to meet certain requirements and include all required product data. Thus, we advise you to use the XLSX template we provide as a basis.
Info
If you would like to update existing products, we recommend that you first export your products and then use the respective export XLSX file as a basis for your product import. The export XLSX file matches all requirements and has the correct file structure for the product import.Here's what you need to do:
- In the sidebar of your cockpit, select Products.
- On the top right, select Import products.
You will be forwarded to a view that allows you to upload up to two files from your device.
- In step 1 of the How it works card, select the XLSX template link to download the XLSX template on your device.
- Open the XLSX template. Here's what you'll see:
- The first row (1) contains column headers, giving you an overview of the respective column, for example, the product's name (name), or the amount of the sales price (salesPrice.amount). Do not change the content of these column headings.
- If you are not sure what to enter in each column, the second row (2) includes an explanation of the content in that column as well as an indication if the column is required or not. Furthermore, it contains constraints for the column, such as character limits.
- Rows 3-15 (3) contain example data. You can go through this data to get a better feeling of what is required in the respective column. Rows 3-5 each show example data for products without variations. Row 6 contains the example data for a variation product. Rows 7-15 show the example data for the single variations of the variation product in row 6.
- Row 16 (4) includes instructions on how to use the XLSX file. You'll be guided through the single aspects explained in these instructions in the following steps.
- Beginning with row 17, enter the product data for the products you would like to import. While doing so, you can always check back on the example data that is available in rows 3-15 or the explanation in row 2. Furthermore, you can find further information and explanation of the available columns in the section The structure of the XLSX file.
Note
Don't worry, you can still edit the products manually in your cockpit after the product import if you currently can't fill out certain columns. The only columns that are mandatory are marked with REQUIRED in row 2. - Now that you are done adding your product data, you no longer need the examples. Thus, delete rows 2-16. If you don't delete these rows, the example products might also be imported into your cockpit.
Note
Do not delete or edit row 1. This row is required to successfully match your entered product data with the related fields in the cockpit during the import. - Save your changes.
Great! You've created your XLSX file. Now you can use this file to import your products.
How to handle file validation errors
If your XLSX file couldn't be fully validated because at least one product has an error, you'll be informed about that in an infobox at the very top of the Upload files card after you've selected Validate files:
If you scroll down, you'll see an error list that gives detailed information about the occurred errors. In the example below, the amount of the sales price for the product in row 2 was missing.:
Now you can either remove the respective product from your file and add or edit it manually in the cockpit or resolve the errors mentioned in the error list in your XLSX file. The descriptions of the error in the column Errors will help you with that. Don't forget to save your changes after editing the XLSX file and be sure to change the file name of the XLSX. If you do not change the file name, the software will not recognize that you are trying to upload an updated file.
Once you've resolved all errors, upload and validate your updated and renamed XLSX file again (see steps 3-6 in How to import products).
The structure of the XLSX file
Let's have a look at the general structure of the XLSX file. The file must include one row per product. In the case of variation products, the file must include one row for the variation product and one row for each related variation.
The following columns are included in the XLSX file:
| Name | Description | Required |
| sku |
The Stock Keeping Unit (SKU) of the product. The SKU is an article or item number that uniquely identifies the product. If you leave this cell blank, the system will automatically generate an SKU for the product. If you would like to set your own SKU, be sure to enter a unique SKU that has not been previously used for a product on your website. If you would like to update an existing product, be sure to enter the correct SKU. To update a variation product, you'll need to enter the SKU from the first related VARIATION row in the MASTER row (see column variationLevel) as well, so that the system is able to identify the variation product. |
Only when updating existing products |
| name | The product's name as it is also shown on your website. | Yes |
| visible |
Products can be saved as draft or published. If you would like the product to be saved as draft, enter 0. If you would like the product to be published, enter 1. If you leave this cell blank, the product will be saved as draft. |
|
| tags |
Tags are keywords that are one of the available criteria for the creation of automatic categories. You can choose any word you like as a tag. Tags are not shown to the visitors of your website. Enter the tags you would like to add to the product as a list separated by commas. Begin and end each tag with quotation marks and use square brackets around the full list. Example: ["handbag", "women", "red"] |
|
| salesPrice.amount |
This column depends on whether or not the product has a sale price. If the product has a sale price and you would like to show the reduced price while still displaying the regular price, enter the reduced price in this column. Use a period as decimal sign and don't include the currency. Example: 99.99 If the product does not have a sale price, enter the regular price of the product in this column. Use a period as decimal sign and don't include the currency. Example: 129.99 |
Yes |
| listPrice.amount |
This column depends on whether or not the product has a sale price. If the product has a sale price and you would like to show the reduced price while still displaying the regular price, enter the regular price in this column. Use a period as decimal sign and don't include the currency. Example: 129.99 If the product does not have a sale price, leave this column empty. |
|
| manufacturerPrice.amount |
The recommended retail price (RRP), also known as the manufacturer's suggested retail price (MSRP), is the price that the product's manufacturer recommends for the sale of the product. Use a period as decimal sign and don't include the currency. Example: 299.40 |
|
| description | The product's description as it is also shown on the product's detail page on your website. You can enter up to 4095 characters. | |
| manufacturer | The product's manufacturer, wholesaler, or another vendor. | |
| productIdentifiers |
The product codes of the product. Product codes are, for example, the European Article Number (EAN), the Universal Product Code (UPC) and the International Standard Book Number (ISBN). The code is not displayed on the website, but can be used by visitors to search. Each entry must consist of the type (EAN, UPC, ISBN, or MPN) and value. Begin and end each entry with curly brackets, and use square brackets around the full list. Example: [{"type":"EAN","value":"834956932402"},{"type":"UPC","value":"83-495693-2402"}] |
|
| essentialFeatures |
The product's essential product characteristics, meaning the features by which it is characterized. In some countries, it is legally required to inform customers about the essential characteristics of a product before they do the final purchase in the checkout. This allows them to compare one product with another, and make a well-informed purchase decision without seeing the product in real life. You can enter up to 4095 characters. |
|
| taxClass | The product's tax class. This can either be REGULAR, REDUCED, or EXEMPT. If you do not provide a tax class, it defaults to REGULAR. | |
| specifiedShippingWeight.value |
The shipping/delivery weight of the product (including packaging) in grams (by default) or kilograms. Enter only the number without a unit. Example: 1500 |
|
| specifiedShippingWeight.displayUnit |
The weight unit for the shipping/delivery weight you have entered for specifiedShippingWeight.value. You can enter GRAMS or KILOGRAMS. |
|
| maxOrderQuantity |
The maximum quantity of the product that can be ordered at once. Please note that this property is currently not reflected in your cockpit. Nevertheless, visitors won't be able to order more than the determined quantity. |
|
| shippingPeriod.min |
The minimum number of days, weeks, or months for shipping/delivery the product. You can enter the related unit under shippingPeriod.displayUnit. Examples: For a shipping/delivery period of 3-5 days, enter 3 in this column, 5 in column shippingPeriod.max and DAYS in column shippingPeriod.displayUnit. For a shipping/delivery period of exactly 4 weeks, enter 4 in this column, 4 in column shippingPeriod.max as well, and WEEKS in column shippingPeriod.displayUnit. |
|
| shippingPeriod.max |
The maximum number of days, weeks, or months for shipping/delivery the product. You can enter the related unit under shippingPeriod.displayUnit. Examples: For a shipping/delivery period of 3-5 days, enter 3 in column shippingPeriod.min, 5 in this column and DAYS in column shippingPeriod.displayUnit. For a shipping/delivery period of exactly 4 weeks, enter 4 in column shippingPeriod.min, 4 in this column as well, and WEEKS in column shippingPeriod.displayUnit. |
|
| shippingPeriod.displayUnit |
The unit for the product's shipping/delivery period. This can either be DAYS, WEEKS, or MONTHS. Examples: For a shipping/delivery period of 3-5 days, enter 3 in column shippingPeriod.min, 5 in column shippingPeriod.max and DAYS in this column. For a shipping/delivery period of exactly 4 weeks, enter 4 in column shippingPeriod.min, 4 in column shippingPeriod.max as well, and WEEKS in this column. |
|
| shippingDimension.length |
The length of the product (including packaging) in millimeters. Enter only the number without a unit. Please note that this property is currently not reflected in your cockpit or on your website. |
|
| shippingDimension.width |
The width of the product (including packaging) in millimeters. Enter only the number without a unit. Please note that this property is currently not reflected in your cockpit or on your website. |
|
| shippingDimension.height |
The height of the product (including packaging) in millimeters. Enter only the number without a unit. Please note that this property is currently not reflected in your cockpit or on your website. |
|
| refPrice.refQuantity |
The reference price enables visitors to compare prices regardless of package sizes. Example: 1l=10,53 Euro It is automatically calculated based on the product quantity (column refPrice.quantity) and the reference (this column combined with column refPrice.unit). Enter the quantity of the reference in this column as a decimal number with a period as decimal sign. In our example "1l=10,53 Euro", this would be "1". |
|
| refPrice.quantity |
The reference price enables visitors to compare prices regardless of package sizes. Example: 1l=10,53 Euro It is automatically calculated based on the product quantity (this column) and the reference (column refPrice.refQuantity combined with column refPrice.unit). Enter the product's quantity without the unit and as a decimal number with a period as decimal sign. The unit is the same as the reference unit (column refPrice.unit). |
|
| refPrice.unit |
The reference price enables visitors to compare prices regardless of package sizes. Example: 1l=10,53 Euro It is automatically calculated based on the product quantity (column refPrice.quantity) and the reference (this column combined with column refPrice.refQuantity). Enter the unit of the reference in this column. The following units can be entered: GRAM, KILOGRAM, MILLILITER, LITER, METER, SQUAREMETER, or CUBICMETER. In our example "1l=10,53 Euro", this would be "LITER". The unit is also used for the product's quantity (column refPrice.quantity). |
|
| images |
The list of images for the product. Each listed image needs to be included in the ZIP file uploaded in the Upload files section. In order to enable the system to clearly map the images mentioned in this column to the images included in the ZIP file, you'll need to use the file names exactly as used in the ZIP file. Begin and end each file name with double quotation marks and use square brackets around the full list. Example: ["img12345.jpg", "img56789.jpg"] |
|
| stockLevel |
Keeping track of your inventory keeps you up-to-date about when you need to order or produce new goods and helps to prevent that visitors order products that are no longer in stock. If you would like to track the stock level, enter the quantity of the product that is currently available. |
Only if a stock threshold is set in column stockThreshold |
| stockThreshold |
Keeping track of your inventory keeps you up-to-date about when you need to order or produce new goods and helps to prevent that visitors order products that are no longer in stock. The stock threshold is the number up to which the product should be displayed as "low stock" on your website. If the stock level reaches or falls below this number, it is also an indicator for you that this product needs to be re-ordered or re-produced soon. You can only enter a stock threshold if you also enter the current stock level in column stockLevel. In case of variation products, the stock threshold needs to be the same for all variations of the variation product. Thus, you need to enter the stock threshold for all variations in the row of the variation product (the one that says MASTER in column variationLevel). |
|
| variationLevel |
Variation products are products of the same type that differ only in certain attributes (e.g. size, color, material). These attributes, in turn, are assigned values (e.g. M, green, cotton). Each combination of attributes and values is a variation. A variation product can have up to 3 attributes and a maximum of 150 variations. Enter MASTER for the first row of a variation product. This row includes general information about the variation product. Enter VARIATION for all variation rows related to that variation product. These rows include variation-specific information. If you leave this column empty, the respective product will be added as a product without variations. |
Only for variation products |
| variationAttributes.1.displayName |
Variation products are products of the same type that differ only in certain attributes (e.g. size, color, material). These attributes, in turn, are assigned values (e.g. M, green, cotton). Each combination of attributes and values is a variation. A variation product can have up to 3 attributes and a maximum of 150 variations. Enter the name of the first variation attribute, for example, Size. |
Only for variation products, and only for rows where MASTER has been entered in column variationLevel. |
| variationAttributes.1.values |
Variation products are products of the same type that differ only in certain attributes (e.g. size, color, material). These attributes, in turn, are assigned values (e.g. M, green, cotton). Each combination of attributes and values is a variation. A variation product can have up to 3 attributes and a maximum of 150 variations. Enter the list of all the available values for the first variation attribute (column variationAttributes.1.displayName). Begin and end each value with quotation marks and use square brackets around the full list. Example: ["S","M","L"] |
Only for variation products, and only for rows where MASTER has been entered in column variationLevel. |
| variationAttributes.2.displayName | If applicable, enter the name of the second variation attribute, for example, Color. | |
| variationAttributes.2.values |
If applicable, enter the list of all the available values for the second variation attribute (column variationAttributes.2.displayName). Example: ["Black","Green","Blue"] |
Only if you have entered a variation attribute in column variationAttributes.2.displayName |
| variationAttributes.3.displayName | If applicable, enter the name of the third variation attribute, for example, Material. | |
| variationAttributes.3.values |
If applicable, enter the list of all the available values for the third variation attribute (column variationAttributes.3.displayName). Example: ["Cotton","Polyester","Linen"] |
Only if you have entered a variation attribute in column variationAttributes.3.displayName. |
| customVariationPrice |
Variations can either have variation-specific prices or share the same prices. If they have variation-specific prices, enter 1 in this column and the respective prices for each variation in columns salesPrice.amount, listPrice.amount and manufacturerPrice.amount. If they share the same price, leave this column empty or enter 0. You then need to enter the respective price in the variation product row (the one that says MASTER in column variationLevel) of the columns salesPrice.amount, listPrice.amount and manufacturerPrice.amount. |
|
| customVariationImages |
Variations can either have variation-specific images or all share the same images. If they have variation-specific images, enter 1 in this column and the respective images for each variation in column images. In column variationImagesDifferentiator, you can then determine for which variation attribute (column variationAttributes.1.displayName, variationAttributes.2.displayName, or variationAttributes.3.displayName) the images should be shown. If they share the same images, leave this column empty or enter 0. You then need to enter the respective images in the variation product row (the one that says MASTER in column variationLevel) of column images. |
|
| variationAttributes.1.variationValue |
In column variationAttributes.1.values, you have determined which values are in general available for the first variation attribute. In this column, enter only the value for the first variation attribute, that applies to the respective variation. Example: M |
Only if you have entered values in column variationAttributes.1.values |
| variationAttributes.2.variationValue |
In column variationAttributes.2.values, you have determined which values are in general available for the second variation attribute. In this column, enter only the value for the second variation attribute, that applies to the respective variation. Example: Green |
Only if you have entered values in column variationAttributes.2.values |
| variationAttributes.3.variationValue |
In column variationAttributes.3.values, you have determined which values are in general available for the third variation attribute. In this column, enter only the value for the third variation attribute, that applies to the respective variation. Example: Cotton |
Only if you have entered values in column variationAttributes.3.values |
| variationImagesDifferentiator |
In column customVariationImages, you can determine whether or not variations have variation-specific images. If they have variation-specific images, you need to determine for which variation attribute (column variationAttributes.1.displayName, variationAttributes.2.displayName, or variationAttributes.3.displayName) the images should be shown. Example: If you would like to show the images depending on the color chosen by the visitor, enter Color. If the images should be shown depending on the size chosen by the visitor, enter Size. |
Only if you have entered 1 in column customVariationImages |