File Format - Price

Tulip allows you to define prices per variant and currency on four levels:

  • per store
  • per zone (i.e. region, state, province, etc. depending on the country)
  • per country
  • globally

The price that is used for your variant and currency will be the first available price from the above list, in order. For example, if you have a store level price for a variant and a zone level price, the store level price “wins”.

Price File Format

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

A price 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 price instance. Additional rows of a price instance may only include fields specified under Multi-Row Headers.

Spec

The following table shows the accepted CSV columns for the prices 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
Price IDstringYesExternal ID of the record
Product IDstringNoID of the Product to which this Price applies (externalId resolvable)
Variant IDstringYesID of the Variant to which this Price applies (externalId resolvable)
Country IDintegerORstringNoID of the Country in which this Price applies (externalId resolvable)
Store IDstringNoID of the Store to which this Price applies (externalId resolvable)
Currency IDintegerORstringNoID of the Currency in which this Price is given (externalId resolvable)
Zone IDintegerORstringNoID of the Zone in which this Price applies (externalId resolvable)
Price ValuenumberPrice ValuesNoValue of this Price Value (decimal precision: float)
Price Value Type IDintegerORstringPrice ValuesNoID of the Price Type of this Price Value (externalId resolvable)
Price Value Tax InclusiveintegerPrice ValuesNo
Price Value NnumberPrice Values NNo
Price Value N Type IDintegerORstringPrice Values NNo
Price Value N Tax InclusiveintegerPrice Values NNo
Custom Attribute IDstringAttribute ValuesNoAttribute to be used as key in the key/value pair (externalId resolvable)
Custom Attribute ValuestringAttribute ValuesNoValue to appear in this key/value pair
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 N IDstringAttribute Values NNo
Custom Attribute N ValuestringAttribute Values NNo
Custom Attribute N Language IDintegerORstringAttribute Values NNo

Note: You must supply values for either Country ID or Store ID or Zone ID.

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.

Price Values

There are two ways that price values 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 price 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 Price Values group.

The following columns may be included:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
Yes*Price ValuePrice Value NValue of this price value (decimal precision:float)number
Yes*Price Value Type IDPrice Value N Type IDregular or sale
Integers will be resolved to internal
identifiers
integer, string

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 price. 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:

RequiredMulti-Row Approach
Column Name
Multi-Column Approach
Column Name
DescriptionType
Yes*Custom Attribute IDCustom Attribute N IDIdentifier of the custom attributestring
Yes*Custom Attribute ValueCustom Attribute N ValueValue of the attributestring
Yes*Custom 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.

Supported Currency IDs

Currency NameCode
US Dollar (USD)USD
Euro (EUR)EUR
Canadian Dollar (CAD)CAD
British Pound (GBP)GBP
Swiss FrancCHF
HK Dollar (HK)HKD
Hungarian ForintHUF
Swedish KronaSEK
Danish KroneDKK
Norwegian KronerNOK
Australian DollarAUD
Japanese YenJPY
Chinese RenminbiRMB
New Taiwan DollarTWD
United Arab Emirates DirhamAED
Singapore DollarSGD
Czech KorunaCZK
Chinese Yuan RenminbiCNY
Malaysian RinggitMYR
Macanese PatacaMOP
Thai BahtTHB
South Korean WonKRW
Mexican PesoMXN
Polish ZlotyPLN
Romanian LeuRON
New Zealand DollarNZD
Bahraini DinarBHD
Panamanian BalboaPAB
Dominican PesoDOP
Aruban FlorinAWG
South African RandZAR

Price CSV Example

See the following Price CSV sample file.

Price Sample 1