File Format - Product

Product File Format

The first line of a Product CSV file must be the header row.

A product instance is a group of rows in the CSV file that are sequential and include the same required fields. Data relating to fields specified under Base Headers and Multi-Column Headers must be specified in the first row of a product instance. Additional rows of a product instance may only include fields specified under Multi-Row Headers.

Spec

The following table shows the accepted CSV columns for the products entity. Note that any columns including N denote a dynamic integer. A column specified as Field N signifies that you can use columns Field 1, Field 2, …, Field N to allow for multiple values per record of the given field, similar to an array.

CSV HeaderData TypeGroupRequiredDescription
Product IDstringYesExternal identifier of the record
CategorystringCategoriesNoArray of Category IDs representing the Categories to which this Product belongs (externalId resolvable)
Category NstringCategories NNoArray of Category IDs representing the Categories to which this Product belongs (externalId resolvable)
ModelstringNoModel of the Product
StatusintegerNoProduct Status defaults: 0 = Disabled, 1 = Active, 2 = Sold Out, 5 = Coming Soon. See integration specification for instance-specific usage of this field
Tax IDintegerNoID of the Tax to be used with the Product
Tax CodestringNo
Tax Class CodestringNo
UPCstringNoUPC of the Product
WeightnumberNoWeight of the Product (decimal precision: float)
WidthnumberNoWidth of the Product (decimal precision: float)
Custom Attribute IDstringAttribute ValuesNoAttribute to be used as key in the key/value pair (externalId resolvable)
Custom Attribute Language IDintegerORstringAttribute ValuesNoLanguage ID for the language in which this value appears; use 0 if it is not localized (externalId resolvable)
Custom Attribute ValuestringAttribute ValuesNoValue to appear in this key/value pair
Custom Attribute N IDstringAttribute Values NNo
Custom Attribute N Language IDintegerORstringAttribute Values NNo
Custom Attribute N ValuestringAttribute Values NNo
Localized DescriptionstringLocalized DataNoDescription of the Product localized to the language in languageId
Localized Language IDintegerORstringLocalized DataNoID of the Language in which the record appears (externalId resolvable)
Localized NamestringLocalized DataNoName of the Product localized to the language in languageId
Localized SubtitlestringLocalized DataNoSubtitle of the Product localized to the language in languageId
Localized URLstringLocalized DataNoURL of the Product localized to the language in languageId
Localized Description NstringLocalized Data NNoDescription of the Product localized to the language in languageId
Localized Language ID NintegerORstringLocalized Data NNoID of the Language in which the record appears (externalId resolvable)
Localized Name NstringLocalized Data NNoName of the Product localized to the language in languageId
Localized Subtitle NstringLocalized Data NNoSubtitle of the Product localized to the language in languageId
Localized URL NstringLocalized Data NNoURL of the Product localized to the language in languageId
ImagestringImagesNoArray of URLs of images of the Product
Image NstringImages NNoArray of URLs of images of the Product
VideostringVideosNoArray of URLs of videos of the Product
Video NstringVideos NNoArray of URLs of videos of the Product
SortOrderOverrides OptionValueIDstringOV OverridesNo
SortOrderOverrides Sort OrderintegerOV OverridesNo
SortOrderOverrides N OptionValueIDstringOV Overrides NNo
SortOrderOverrides N Sort OrderintegerOV Overrides NNo
Related Product IDstringRelated ProductsNoThe Product External ID of the related product. This field is returned as null in GET operations as it isn’t ID resolvable.
Related Product Sort OrderintegerRelated ProductsNoThe sort order for the Related Product within its set of related products
Related Product N IDstringRelated Products NNo
Related Product N Sort OrderintegerRelated Products NNo
CatalogintegerORstringCatalogsNo
Catalog NintegerORstringCatalogs NNoArray of catalog IDs of Product (externalId resolvable)
Track InventorybooleanNo
Default Variant IDintegerNo

Groups

A group is a class of headers that relate to one another, and may allow for multiple pieces of information to be presented. For example, a customer can have multiple emails, addresses, phone numbers, and more.

Note: The following file extensions are supported .jpg, .JPG, .jpeg, .JPEG, .png, .PNG, .gif, .GIF for product images.

There are two ways that images can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one column header is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, one column header may be used many times alongside one row (the first row) of a product instance. To use this column multiple times, an identifying number must exist for N and be unique for each new column.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Images group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoImageImage *N*URL to an image of the productstring

Where N is some positive integer.

Videos (Optional)

There are two ways that videos can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one column header is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, one column header may be used many times alongside one row (the first row) of a product instance. To use this column multiple times, an identifying number must exist for N and be unique for each new column.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Videos group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoVideoVideo NURL to a video of the productstring

Where N is some positive integer.

Localized Data (Optional)

There are two ways that localized data can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one set of column headers is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, multiple sets of column headers may be used alongside one row (the first row) of a product instance. To use these columns multiple times, an identifying number must exist for N and be unique for every new set of columns.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Localized Data group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoLocalized DescriptionLocalized Description NDescription of the product localized to the specified language. This can include HTML and CSS.string
YesLocalized Language IDLocalized Language ID NID of the language in which the record appears. Supported Languages and their IDs can be found here.
Integers will be resolved to internal identifiers
integer, string
YesLocalized NameLocalized Name NName of the product localized to the specified languagestring
NoLocalized SubtitleLocalized Subtitle NSubtitle of the product localized to the specified languagestring
YesLocalized URLLocalized URL NURL of the product localized to the specified languagestring

Where N is some positive integer.

Option Value Overrides (Optional)

There are two ways that option value overrides can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one set of column headers is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, multiple sets of column headers may be used alongside one row (the first row) of a product instance. To use these columns multiple times, an identifying number must exist for N and be unique for every new set of columns.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Option Value Overrides group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoSortOrderOverrides OptionValueIDSortOrderOverrides N OptionValueIDID of the Option Value.
Integers will be resolved to internal identifiers
integer, string
NoSortOrderOverrides Sort OrderSortOrderOverrides N Sort OrderSort order for the Option Valueinteger

Where N is some positive integer

There are two ways that related products can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one set of column headers is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, multiple sets of column headers may be used alongside one row (the first row) of a product instance. To use these columns multiple times, an identifying number must exist for N and be unique for every new set of columns.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Related Products group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoRelated Product IDRelated Product N IDID of the related productstring
NoRelated Product Sort OrderRelated Product N Sort OrderSort order for the related product within its set of related productsinteger

Where N is some positive integer.

Custom Attributes

There are two ways that custom attributes can be formatted in your CSV file: A Multi-Row Approach or Multi-Column Approach.

Multi-Row Approach

In this approach, one set of column headers is used alongside multiple rows of data. To allow for multiple rows of data, additional rows must include the same Required Headers fields.

Multi-Column Approach

In this approach, multiple sets of column headers may be used alongside one row (the first row) of a product instance. To use these columns multiple times, an identifying number must exist for N and be unique for every new set of columns.

Columns from the Multi-Row Approach cannot be mixed with columns from the Multi-Column Approach in a CSV file for the Custom Attributes group.

The following columns may be included:

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
NoCustom Attribute IDCustom Attribute N IDIdentifier of the custom attributestring
NoCustom Attribute ValueCustom Attribute N ValueValue of the attributestring
NoCustom Attribute Language IDCustom Attribute N Language IDLanguage of the attribute.
Integers will be resolved to internal identifiers
integer, string

Where N is some positive integer

Product CSV Example

See the following Product CSV sample file.

Product Sample 1