Overview

The products.csv file is used to update your product catalog in Kimelo. You upload this file to your FTP folder. Kimelo does not send this file back.

You can upload this file as often as every 20 minutes. Kimelo treats the most recent file as the source of truth for edits until the next one is uploaded. Each product is identified by a unique erp_product_id + pack_type pair.

products_yyyy-mm-dd-hh-mm-ss.csv

products.csv: Product Attributes

Filename pattern products[datetime].csv
ERP to Kimelo Y
Kimelo to ERP
System of record ERP
Status Available
Frequency on demand

Attributes for importing products into the Kimelo system, with data types and requirements.

Column Name Data Type Required Description Example
erp_product_id string Required Distributor's internal unique identifier of a given product. This may equal SKU or be distinct. Serves as match point for Kimelo objects including order lines and pricing. 5555785
sku String Optional distributor's customer-facing ID identifier for a given product. This may equal the ERP ID, but it can differ A111
barcode_value string Optional proposed The alphanumeric value of a barcode for this product 0220310
pack_type String Required Defines how the product is sold (accepts only case or each as of Feb 2025). case
base_UOM String Optional Defines which pack_type is the smallest sellable unit (as of Feb 2025 can be only each). each
pack_items_count Integer Required Defines how many base_uom (eaches) are in this row’s pack_type - e.g. a row in which pack_type = case & pack_items_count = 36 would mean that there are 36 of each in a case 36
name String Required Distributor's name of the product to be displayed on the invoice and in the app. Potato, French Fries, 1/4" Shoestring, Skin/salt, 6/4.5 Lb
active Boolean Required Defines whether a given product is carried by the distributor. TRUE
is_catchweight Boolean Required Defines whether the product is a catchweight item, requiring actual weight for pricing. Invoiced price will be the catchweight multiplied by actual weight. FALSE
pack_price Currency Required Fallback price for this SKU package (per case or each specified in pack_type.) If there is no customer specific sales price for a given customer Kimelo uses this one. For a catchweight product this should be the cost for the average weight. 0.50
price_per_weight_unit Currency Required for catchweight products Price per unit of measure (in pounds) for catchweight items. This is a fallback price. If there is no customer specific catchweight price Kimelo uses this one. 1.00
weight Float Required for catchweight products Defines weight of a single unit of this product in imperial pounds. This is an average to display and sort catchweight products. 27
category String Optional Defines which category a product belongs to in the catalog. Frozen
sub_category String Optional Defines which subcategory a product belongs to in the catalog. Vegetable
description String Optional Distributor's description of the product to be displayed in the app. Spud Queen Fries
brand String Optional The brand associated with the product. Packer
substitute_skus Array of Strings Optional proposed Array of products (by erp_product_id) that are substitutes for this product. 3333, 4444
height Float Optional Height of the product in inches. This is for load planning and route optimization. 6.25
width Float Optional Width of the product in inches. 13
length Float Optional Length of the product in inches. 16
netweight Float Optional Net weight of the product in imperial pounds. 4.2
grossweight Float Optional Gross weight of the product in imperial pounds. 4.2
image_urls Comma-separated string Optional Array of links to images of the product. https://example.com/unit_image.png,https://example.com/unit_image.png
UPC Integer Optional Universal Product Code for the product. 1515484
GTIN Integer Optional Global Trade Item Number for the product. 8465123168
hs_commodity_code String Optional Indirect tax product code from Harmonized System codes. Use the 4-2-2 digit format. See https://hts.usitc.gov/ 1111.11.11
is_proprietary Boolean Optional Denotes if the product is proprietary, available to specific customers. TRUE
proprietary_tags Array of strings Optional Array of proprietary tags. Only customers with the same tags will be able to see, find and purchase these items. retail, michigan_only
stock_level Integer Required (unless is_unlimited_inventory) Number of items currently in stock and available for purchase. The unit is the base pack_type of this SKU. Kimelo assumes the entire stock level is available for purchase. 1000
store_key String Optional The identifier of which distribution center serves this inventory. Manual imports: Kimelo defaults to current context. FTP: required only if you have multiple distribution centers. foodsinc_1
is_unlimited_inventory Boolean Optional If true, Kimelo does not limit orders based on inventory count. This makes stock_level optional. FALSE

Change Log - products.csv

June 18, 2025

04/7/2025

Validation rules (might not be exhaustive)

Identifiers

Adding and removing products

Pack types