# Product catalog export and import # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Getting started In this article, you will learn how to extract a product catalog in the form of CSV files and how to import it back. The overview for each product catalog file is here. Export can be found in ***Import / Export > Export / catalog (1)*** Import can be found in ***Import / Export > Import > Type > Catalog mass import (2)***
![POWERPNT_vmiZdQufen.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/8865353224732.png)
*Visualization of the product catalog options in the Import / export module*
Table of contents: 1. [Export catalog](#h_01GCH0X17BDKRC07GCXTQDSF97) 2. [Catalog files](#h_01GCH0X17BDKRC07GCXTQDSF91) 3. [Catalog import](#h_01GCH0X17BDKRC07GCXTQDSF92) 4. [How to make mass import](#imp0) 5. [Overview - catalog\_product.csv](#imp1) 6. [Overview - catalog\_product\_description.csv](#bkmrk-%C2%A0-10) 7. [Overview - catalog\_product\_attribute.csv](#bkmrk-%C2%A0-12) 8. [Overview - catalog\_product\_stock.csv](#bkmrk-%C2%A0-15) 9. [Overview - dict\_tag\_catalog\_product.csv](#bkmrk-%C2%A0-17) 10. [Overview - dict\_property.csv](#bkmrk-%C2%A0%C2%A0-2) 11. [Overview - dict\_tag.csv](#bkmrk-%C2%A0-20) 12. [ Overview - catalog\_product\_category.csv](#h_01H0T23XV4R0NE6N0TMR8EKG8B) 13. [Overview - alt\_shop\_catalog\_product.csv](#bkmrk-%C2%A0-28) 14. [ Overview - catalog\_product\_category.csv](#bkmrk-overview---catalog_p-3) 15. [ Overview - dict\_tag\_catalog\_product\_remove.csv](#bkmrk-overview---dict_tag_-1) 16. [ Order of processing files](#bkmrk-order-of-processing-) --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Export catalog Catalog export has some filtering options for thinning out the results of extracted data.
![POWERPNT_N92MP6PAE5.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/8865307579676.png)
*Visualization of the Catalog export*
- **Alt shop** - Chooses for which alt shop the catalog should be exported. If left empty, products from all alt shops will be exported. You can learn more about altshops in the [Alt shops - Introduction](https://tauceti.zendesk.com/hc/en-us/articles/360017301600) article. - **Product status** - Chooses between **Active** and **Inactive** products. If left empty, all products will be exported. - **Is altshop active?** - Choose if the product exported are active on chosen altshop or inactive. - **Product SKU** - A list of product SKUs. A list of multiple SKUs needs to be separated by commas (i.e. 123456,654321,55555). - **Two buttons**: - **Apply filters** - A button, which will apply selected filters and automatically start the download of the filtered products. - **Clear filters** - A button, which clears all already chosen filters. Exported files described in [ Catalog files](#h_01GCH0X17BDKRC07GCXTQDSF91) section are packed in a .zip file, which needs to be unpacked. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Catalog files The downloaded archive will contain the following files: - **alt\_shop\_catalog\_product.csv** - Contains data for **Alt shops > Products / list** (You can find more information about this module in [Products / list - browsing and managing products in altshop module](https://tauceti.zendesk.com/hc/en-us/articles/5591686579228) article) - **catalog\_product.csv** - Contains data for **Catalog > Products / list** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **catalog\_product\_attribute.csv** - Contains data for **Catalog > Products / list > View product > Add color** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **catalog\_product\_description.csv** - Contains data for **Catalog > Products / list > View product, Description tab** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **catalog\_product\_meta.csv** - Contains data for - **Catalog > Products / list > View product, Metadata tab** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **catalog\_product\_stock.csv** - Contains data for **Catalog > Products / list > View product, Stock tab** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **dict\_property.csv** - Contains data for **Catalog > Properties / list** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **dict\_tag.csv** - Contains data for **Catalog > Tags / list** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **dict\_tag\_catalog\_product.csv** - Contains data for **Catalog > Products / list > View product, Tags tab** (More information about this module in **\[UNDER CONSTRUCTION\]**) - **catalog\_product\_category.csv** - Contains data for Catalog > Products / list > View product, **edit product tab**. You can find more information about the category module in [Catalog categorization](https://knowledge.tauceti-digital.com/books/e-commerce/page/catalog-categorization) article. - **dict\_tag\_catalog\_product\_remove.csv** - Contains exact same data structure as **dict\_tag\_catalog\_product.csv**, but it removes the assigned tags from the selected products. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Catalog import All the exported files can be edited and imported back to the administration panel to update catalog data. Files can be imported separately or in groups but their import must always be consolidated in a .zip file. The file names must be exactly the same as defined in this article and they cannot be changed. There are no mandatory files, so it is possible to import only **catalog\_product\_description.csv** without any other files as long as it is in the .zip file. Packed .csv files can be in any folder structure as long as file names are not duplicated. Other file formats than .zip will be rejected and won't be uploaded. ## Files specification Since the imported files directly correspond with the database some rules must be followed while creating and editing import files, here is a general specification for these: - Field type **BOOLEAN:** - 0 - NO - **1** - YES - Field type **DATE** must be in the following format "**YYYY-MM-DD**" - **EOL (End Of Line)** column must contain EOL in every row with a product. This column shows our system, that for a selected product its info ends with this column, and the system can move to another row. Here is an example of **EOL** use: - ``` column1;column2;EOL ``` - ``` “abc”;”abc”;EOL ``` - ``` “cde”;”cde”;EOL ``` - The decimal separator must be a dot "**.**" for example: "**199.99**" - While editing files in text editors (not spreadsheets) all columns have to be separated by **semicolon** "**;**" - **STRING** field type can be filled with any text and/or number. The only exception to this exists in every field with **URL** value, these must be strings without any special/regional characters besides "**/**" as a start to the URL and "**\_**" as a separator for word f.x. "**/new\_product\_sku\_123**" --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) How to make mass import Mass import is a product import of a ZIP file that contains prepared .csv files. This operation changes the product data based on their SKU or creates a new product if the selected SKU doesn't exist in the catalog database. You don't need to put every .csv file in the .zip, only the ones that you have modified can be put in the .zip file and then imported. In order to import catalog files, they have to be in CSV format, coded in UTF-8. Go to ***Import/Export > Import*** and choose ***Catalog mass import** in the* **Type***.*
![POWERPNT_Y7XeqYPGKe.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/8865286120732.png)
*Visualization of Import / Export, Import*
- ** File \* ** - **Choose a file,** and find your zip archive with CSV files. - **Type\* **- Click and choose **Catalog mass import** in order to perform the change in the catalog database. - **Options** - **Test import** allows for virtual database calculation after importing a chosen archive. You'll be able to check the results of this import by receiving a report for each imported file. Test import won't perform any actual changes in the environment. - **Import file** - Click to perform an import. The file will start processing right after clicking. ![info2.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915161244.png) **Remember**Product descriptions can be enriched by HTML and CSS codes. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - catalog\_product.csv File ***catalog\_product.csv*** contain mainly data regarding imported products. Mass import of this file allows to: - Adding new records - Updating records (on a base of unique SKU)
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1SKUSTRING7NoProduct code-
2is\_activeBOOLEAN (0/1)1NoIs the product visible?-
3nameSTRING255NoProduct name-
4titleSTRING255YesTitle for productEmpty product title
5short\_descriptionSTRING255YesShort descriptionEmpty description
6capacitySTRING125YesCapacity/size of the productCapacity undefined
7sort\_orderINTEGER1YesSort Order0
8priceDECIMAL10,2NoCatalog price-
9f\_green\_pointBOOLEAN (0/1)1YesFlag: green point 0
10f\_bestsellerBOOLEAN (0/1)1Yes Flag: bestseller0
11f\_limited\_editionBOOLEAN (0/1)1Yes Flag: limited edition0
12 f\_setBOOLEAN (0/1)1Yes Flag: set0
13 f\_giftBOOLEAN (0/1)1Yes Flag: gift0
14 f\_gift\_choiceBOOLEAN (0/1)1Yes Flag: gift of choice 0
15f\_outlet BOOLEAN (0/1)1Yes Flag: outlet 00
16is\_new\_untilDATE10Yes Date till the product is marked as "new". Should be in a DD-MM-YYY format. The product won't be marked as "new"
17friendly\_urlSTRING255Yes URL for the product-
18 eanSTRING 13 Yes EAN code. Multiple EANs can be separated by a comma (,). The system verifies in the import process if the typed EAN is in correct EAN-8 or EAN-13 format. -
19 EOLSTRING 3 No Always must be “EOL” -
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - catalog\_product\_description.csv File ***catalog\_product\_description.csv*** contains descriptions for the products. Mass import allows to: - Adding new records - Updating records (on a base of unique SKU) ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** There must be a product in the database with SKU matching the value of the SKU column in order to apply any changes.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1SKUSTRING7NoProduct code-
2description\_mainSTRINGundefinedYesMain descriptionempty description
3description\_effectSTRINGundefinedYesEffects descriptionempty description
4description\_usageSTRING5YesUsage descriptionempty description
5description\_ingredientSTRINGundefinedYesIngredientsempty description
6description\_capacitySTRINGundefinedYesType of package and capacityempty description
7description\_additional\_infoSTRINGundefinedYesAdditional informationempty description
8description\_notesSTRINGundefinedYesResultsempty description
9 EOLSTRING 3 No Always must be “EOL” -
![info2.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359840869148.png) **Remember**New lines in descriptions fields will be changed to <br> HTML can be used to customize the text. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - catalog\_product\_attribute.csv File ***catalog\_product\_attribute.csv*** contains data about color variants of imported products. Mass import allows to: - Adding new records - Updating records (on a base of unique SKU) ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** There must be a product in the database with SKU matching the value of the SKU column in order to apply any changes. If there is no color from the color column in the database then a new color will be created and assigned to the new attribute.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1SKU\_parentSTRING7NoCode of the parent product-
2SKUSTRING7NoCode of the color variant -
3colorSTRING255NoColor name -
4is\_activeBOOLEAN (0/1)1NoFlag: is active? -
5 EOLSTRING 3 No Always must be “EOL” -
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - catalog\_product\_stock.csv File ***catalog\_product\_stock.csv*** contains information about the stock resources of the imported products. Mass import allows to: - Updating records (on a base of unique SKU) ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** There must be a product in the database with SKU matching the value of the SKU column in order to apply any changes.
**\#****Column name****Value type****Max length** **Can be empty?****Description****What, if empty**
1SKUSTRING7NoProduct code-
2stock\_valueINTEGER5NoAmount of stock value -
3always\_in\_stockBOOLEAN(0/1)1YesFlag: product is always in stock 0
4min\_stock\_valueINTEGER5YesMinimal stock valueDefault value from the database
5warn\_stock\_valueINTEGER 5 YesStock limit at which administrator will receive a warning about low stock valueDefault value from the database
6 EOLSTRING 3 No Always must be “EOL” -
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - dict\_tag\_catalog\_product.csv File ***dict\_tag\_catalog\_product.csv*** contains information about tags of imported products. Mass import allows to: - Adding new assignments - Updating already existing assignments ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** There must be a product in the database with SKU matching the value of the SKU column in order to apply any changes. The same applies to tags columns and properties.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1SKUSTRING7NoProduct code, if color variant then uses parent code. -
2propertySTRING45NoProperty name -
3tag1STRING150NoTag name -
4tag2STRING150YesTag name -
5tag3STRING150YesTag name -
6tag4STRING150YesTag name -
7tag5STRING150YesTag name -
9 EOLSTRING 3 No Always must be “EOL” -
In order to assign more than 5 tags to one product, use another row, here is an example of how to assign 6 tags to SKU1 in property "część ciała": - ``` SKU1;”część ciała”;”twarz”;”włosy”;”dłoNo”;”nogi”;”ramiona”;EOL ``` - ``` SKU1;”część ciała”;”uda”;;;;;EOL ``` In order to delete a tag from a product add “<delete>” before it. Here is an example of deleting the tag "40+": - ``` 40+”

``` --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - dict\_property.csv File **dict\_property.csv** contains information about properties. Mass import allows: - Adding new properties
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1nameSTRING 45 NoProperty name -
2url\_nameSTRING 45 YesFriendly URL Will be generated automatically from the property name
3sort\_orderINTEGER5NoSort Order-
4is\_activeBOOLEAN(0/1)1NoFlag: Is this property active?-
5 EOLSTRING 3 No Always must be “EOL” -
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - dict\_tag.csv File ***dict\_tag.csv*** contains information about tags. Mass import allows to: - Adding new tags ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** There must be a property in the database in order to add new tags.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1property\_nameSTRING 45 NoNazwa cechy, do której jest przypisany tag -
2nameSTRING 150 NoNazwa tagu (wartość cechy) -
3url\_nameSTRING 150 Yesfriendly URL for the tagWill be generated automatically from the tag name
4 EOLSTRING 3 No Always must be “EOL” -
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - alt\_shop\_catalog\_product.csv File ***alt\_show\_catalog\_product.csv*** contains information about availability in altshops and discounts counted from catalog prices. Mass import allows to: - Adding new altshop assignments and promotions - Editing existing altshop assignments and promotions ![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** Adding values to promotion\_price, price\_discount and percentage\_discount won't be updated if the product is\_active=0. Rows is\_active=0 serves as a forced deactivation in altshop. It is a good practice to add only alt\_shops that products should be active.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1alt\_shopSTRINGundefinedNoAltshop system name-
2SKUSTRING 7NoProduct code -
3is\_activeBOOLEAN(0/1) 1NoIs the product active in altshop-
4promotion\_priceDECIMAL undefinedYesPromotion priceNo promotion price or set-by-price/percentage discounts
5price\_discountDECIMAL undefinedYesPrice discount subtracts value from the catalog priceNo discount or discounted by promotion price/percentage discount
6percentage\_discountDECIMAL2YesPercentage discount counted from catalog price.No promotion or discounted by promotion price/ price discount
7promotion\_start\_dateDATEundefinedYes**Information:** date of promotion start No date of promotion start
8promotion\_end\_dateDATE undefined Yes**Information:** date of promotion end No date of promotion end
9promotion\_valid\_textSTRING undefined YesText informing about promotion validationLack of text even, if promotion start and end dates are present.
10EOLSTRING 3 No Always must be “EOL” EOL
--- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - catalog\_product\_category.csv File **catalog\_product\_category.csv** contains information about categories assigned to the products. Mass import allows to: ![info2.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915161244.png) **Remember**You can find more information about catalog categories in the [Catalog categorization](https://knowledge.tauceti-digital.com/books/e-commerce/page/catalog-categorization) article. - Adding currently present categories to the selected products - Editing categories of the selected products.
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
**1** SKU** **STRING 7 No Product code**-**
**2** category\_pathSTRING undefinedNo Category path. Path steps need to be separated by a Guillemet ("»") i.e. E-commerce » Włosy » Szampony. The category path should always start with E-commerce. **-**
**3** is\_main** **BOOLEAN(0/1)1 No A flag that shows if a selected category path for a selected SKU is marked as a main one **-**
**4** EOLSTRING 3 No Always must be “EOL” EOL
![caution.svg](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915165212.png) **Warning** Please note that this process overwrites product categories for products that are being edited. In case the user has the following record already in the database on the website:
SKUcategory\_pathis\_mainEOL
32611E-commerce » Vůně1EOL
and there is a need to add a new category **the already existing record also needs to be included in the import**. ### Example of an incorrect import file that overwrites the product categories:
SKUcategory\_pathis\_mainEOL
32611E-commerce » Vlasy0EOL
When the file looks like that the **E-commerce » Vůně** will be removed from the product, and only **E-commerce » Vlasy** will be available after the import. ### Example of a correct import file that doesn't overwrite the product categories:
SKUcategory\_pathis\_mainEOL
32611E-commerce » Vůně1EOL
32611E-commerce » Vlasy0EOL
In this case both **E-commerce » Vůně** and **E-commerce » Vlasy** will be included in the product 32611 after the import. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Overview - dict\_tag\_catalog\_product\_remove.csv File **dict\_tag\_catalog\_product\_remove.csv** contains a list of SKUs with tags, that should be removed from the product. The content of this file is exactly the same as **dict\_tag\_catalog\_product.csv.** This file is not automatically created when exporting the product catalog. Mass import allows to: - Removal of tags from the selected SKUs
**\#****Column name****Value type****Max length****Can be empty?****Description****What, if empty**
1SKUSTRING7NoProduct code, if color variant then uses parent code. -
2propertySTRING45NoProperty name -
3tag1STRING150NoTag name -
4tag2STRING150YesTag name -
5tag3STRING150YesTag name -
6tag4STRING150YesTag name -
7tag5STRING150YesTag name -
9 EOLSTRING 3 No Always must be “EOL” -
Tag removal doesn't remove properties by itself. Whenever a product has all of it's tags removed, the property is removed automatically. For example, if the product has the following propety with a tags:
**SKU****property****tag1****tag2****tag3****tag4****tag5****EOL**
69726Péče o těloTělové olejeTělové peelingy EOL
And the **dict\_tag\_catalog\_product\_remove.csv** contains the following data:
**SKU****property****tag1****tag2****tag3****tag4****tag5****EOL**
69726Péče o těloTělové peelingy EOL
**Tělové peelingy** will be removed from the product tags list, but **Tělové oleje** will remain, which would result with the following record:
**SKU****property****tag1****tag2****tag3****tag4****tag5****EOL**
69726Péče o těloTělové oleje EOL
If both tags were removed, then the **Péče o tělo** property would also be removed from the product, as this product doesn't contain any tags from this property. --- # ![Screenshot_2020-04-29_at_19.12.41.png](https://knowledge.tauceti-digital.com/uploads/images/gallery/2024-11/9359915156764.png) Order of processing files The system while importing the files is processing them in a selected order, to make sure there will be no mistakes while importing, like changing the price of a product that doesn't exist in the database. You can find an order of processing below:
**Order****File name**
1dict\_property.csv
2dict\_tag.csv
3catalog\_product.csv
4catalog\_product\_description.csv
5 catalog\_product\_category.csv
6catalog\_product\_attribute.csv
7catalog\_product\_meta.csv
8catalog\_product\_stock.csv
9dict\_tag\_catalog\_product.csv
10alt\_shop\_catalog\_product.csv
11 dict\_tag\_catalog\_product\_remove.csv