---
title: Importing product data
slug: campaign/docs/importing-product-data
docTags: 
createdAt: 2026-07-20T15:44:33.739Z
---

Using the [content interface](docId\:php17wfbpZtS4wLmVkeFG), you can import the product catalog of your web shop directly into Optimizely Campaign. The products contained in the catalog are available when you create a mailing. In addition to the product name, you can also insert images, links, prices, and descriptions directly into the mailing. The product data import is usually done via a predefined CSV file, which is transferred daily via SFTP to the Optimizely Campaign server.

## SFTP data transfer

The SFTP protocol is used for data transfer. To transfer data, you must connect to the Optimizely Campaign server using an authentication key. The shop integration must therefore support working with authentication keys. See [Transferring files through SCP](docId\:H7Xzu5E_o_7p1bt9Uk4Ty).

If you have a PHP-based shop system, you can for example use the [phpseclib](http://phpseclib.sourceforge.net/) library.

Provide [customer support](docId\:ZWe1T3UPz3JW6_4mc76qV) with the file name so they can configure the respective imports in your client.

:::hint{type="info"}
**Tip**

Create the folder structure based on client IDs. So you can connect a shop installation on which different web shops with different languages have been configured, using a SFTP account.
:::

## Structure of the CSV file

The CSV file has the following defined header structure:

```javascript
"id";"name";"category";"text1";"text2";"text3";"text4";"text5";"text6";"text7";"text8";"text9";"text10";"link1Text";"link1Url";"link2Text";"link2Url";"link3Text";"link3Url";"image1ImageUrl";"image1AltText";"image1Link";"image2ImageUrl";"image2AltText";"image2Link";"image3ImageUrl";"image3AltText";"image3Link";"image4ImageUrl";"image4AltText";"image4Link";"image5ImageUrl";"image5AltText";"image5Link";"image6ImageUrl";"image6AltText";"image6Link";"additionalData1";"additionalData2";"additionalData3";"additionalData4";"additionalData5";"additionalData6";"additionalData7";"additionalData8";"additionalData9";"additionalData10";"additionalData11";"additionalData12";"additionalData13";"additionalData14";"additionalData15";"additionalData16";"additionalData17";"additionalData18";"additionalData19";"additionalData20"
```

Each product is written in one line. Columns for which no values are available in the shop system must still be empty and cannot be deleted. Also note the following information:

- The columns *id*, *name* and *category* must be specified.
- The value of the *id* column must be unique in the CSV file and identify the product.
- In the *category* column, specify the category as a string and separate the hierarchies with *#*, for example *men#shoes#summer*.
- Select UTF-8 as text encoding.
- Remove HTML code or make sure that the HTML code is error-free.
