Item Upload

To support large product ranges common to the retail sector, Deliverect can receive an Item file for upload

Request a Signed URL

Sending a request to this endpoint with a callbackUrl will return a signedUrl and specific headers.

ParameterDescription
callbackUrlThe URL where we'll send a completion event when items CSV fully imported
signedUrlOnce the signed URL is created, it is valid for 15 minutes. This means that you have up to 15 minutes to initiate an upload via POST of the CSV to this endpoint. For more information please read: https://cloud.google.com/storage/docs/access-control/signed-urls
fileIdIncluded in the callbackUrl as a unique identifier to the inventory upload request

Submit .csv with PUT Request

The Item upload process is then two step;

  • Your Item .csv file should be submitted via a PUT request to the signedUrlwith the headers provided
  • Deliverect will then process the CSV asynchronously and callback to the provided callbackUrl when the CSV file has been fully processed.
curl -X PUT \
    -H "Content-Type: text/csv" \
    -H "X-goog-meta-callback: https://example.com/itemsCallback"
    --upload-file items.csv \
    'https://storage.googleapis.com/cicd-signed-url/items.csv?x-goog-signature=13d3&x-goog-algorithm=GOOG4-RSA-SHA256&x-goog-credential=signed-url-poc%40test-demo-410111.iam.gserviceaccount.com%2F20240223%2Fasia-south1%2Fstorage%2Fgoog4_request&x-goog-date=20240223T080312Z&x-goog-expires=86400&x-goog-signedheaders=content-type%3Bhost'

Item.csv Format

The Item CSV format below should be used;

Download Sample CSV

Bundle Items

Download Bundle Sample CSV

CSV Data - Glossary

ⓘ Required Data
Please note that all the fields marked with ( * ) are required.

Column NameDescriptionFormat
Category * Up to three level of categorisation

Category name must be unique across the whole Item file i.e. same exact name cannot be used in Category 1 and Category 2
String
Name * Legal name of itemString
PLU * Unique identifier for a product String
Base Price * The cost of the item defined by an integer .
e.g. €5.50 euros is expressed without currency as5.50
Float
GTINs * Comma separated list of unique identifier (equivalent to EAN)List of Strings
Tax Rate * Percentage sales tax rate for item
e.g. 21 corresponds to 21%
Integer
Product type"product", "deal" or "dealsection"
* Required to insert bundles/ meal deals
String
subItemsPLU of the subItems
At "deal" level it represents the PLUs of the deal sections.
At "dealsection" level it represents the item PLUs which should be a regular "product" type.
*Required to insert bundles/ meal deals
String
Minimum selectionMinimum number of products which can be selected on a deal.
*Required when "dealsections" are provided.
Integer
Maximum selectionMaximum number of products which can be selected on a deal.
*Required when "dealsections" are provided.
Integer
Internal NameName used for internal referenceString
DescriptionProduct descriptionString
Manufacturer NameFood business operator nameString
Manufacturer AddressFood business operator addressString
Manufacturer BrandFood business operator brand nameString
WeightMandatory if "Weight Unit" column is filled inInteger
Weight UnitCase sensitive - mandatory if "Weight" column is filled ing, kg, mg, lb, oz
VolumeMandatory if "Volume Unit" column is filled inInteger
Volume UnitCase sensitive - mandatory if "Volume" column is filled inL, mL, gal, pt, oz
Dimension UnitMeasure for product dimensionm, cm, mm, in, ft, yd
WidthFloat (number with decimals)Integer
HeightFloat (number with decimals)Integer
LengthFloat (number with decimals)Integer
EnergyWithout decimalsInteger
Energy UnitCase sensitivekJ, kcal
Product TraitsSee the list of accepted traits and their ENUM value here for accepted valuesEnum List
AllergensSee the list of accepted traits and their ENUM value here for accepted valuesEnum List
Image LinksCloud hosted image URL separated by a comma (if multiple). See section here for more detailsString
Program EligibilityAccepted values : SNAP, HSA, FSAList of Strings

For the complete list of product tags and allergens to apply, reference the ENUM value in the page below;

▶ Product Tags/Allergens
Language
Credentials
OAuth2
Click Try It! to start a request and see the response here!