Product Import
Bulk create or update products in CoolR. Existing products are matched by SKU and updated in place.
See Overview for authentication, file formats, response structure, and import order.
Endpoint
POST https://portal.coolrgroup.com/Controllers/Import.ashx?type=Product
UI access
- Playbook App: Master Data → Products → Manage Data → Import
Columns
Formats: .csv, .xlsx / .xls, .json — Download template
| Column | Alias | Required | Type / Max Length | Validation | Notes |
|---|---|---|---|---|---|
| Basic Information | |||||
Product | — | Yes | String, max 200 | Must be non-empty | Product name |
SKU | — | Yes | String, max 200 | Must be non-empty | Unique product identifier; used to match existing records |
Packaging Type | PackagingType | Yes | String, max 200 | Must be non-empty | e.g., Can, Bottle |
Measurement Unit | MeasurementUnit | Yes | String, max 200 | Must be non-empty | e.g., ml, oz, L |
Short Name | ShortName | Yes | String, max 200 | Must be non-empty | Abbreviated display name |
Brand | BrandName | No | String, max 100 | — | — |
Manufacturer Name | Manufacturer | No | String, max 200 | — | Picked from brand - only needed if new brand created |
Product Type | BeverageType | No | String, max 200 | — | — |
| Classification | |||||
Product Category | ProductCategory | No | String, max 120 | — | Auto-created if not found |
Product Category 2 | ProductSecondCategory | No | String, max 200 | — | Secondary category; auto-created if not found |
| Geographic limits | |||||
Country | — | No | String, max 200 | — | Country |
State | — | No | String, max 200 | — | State |
| Identification Codes | |||||
UPC | — | No | String, max 200 | — | Universal Product Code |
Short EAN Code | ShortEANCode | No | String, max 200 | — | Short EAN barcode |
Product GTIN | ProductGTIN | No | String, max 200 | — | — |
| Distribution | |||||
Distributor GTIN | DistributorGTIN | No | String, max 200 | — | — |
Distributor | DistributorName | No | String, max 200 | — | — |
| Pricing & Packaging | |||||
Size | — | No | Decimal, ≥ 1 | ≥ 1; up to 2 decimal places | — |
Price | — | No | Decimal, ≥ 0.1 | ≥ 0.1; up to 2 decimal places | — |
Facings Per Case | FacingsPerCase | No | Integer, ≥ 1 | ≥ 1 | — |
Price Option | PriceOption | No | String, max 100 | — | — |
| Display & Appearance in CoolR system | |||||
Graph Color | GraphColor | No | String, max 50 | — | Color used in charts/graphs |
Font Color | FontColor | No | String, max 50 | — | — |
Font Style | FontStyle | No | String, max 50 | — | — |
Height | — | No | Decimal | — | Product height |
Width | — | No | Decimal | — | Product width |
| Status & Flags | |||||
Is KeyProduct? | IsKeyProduct | No | Boolean (Yes / No) | — | — |
Is Active? | IsActive | No | Boolean (Yes / No) | — | Set to No to deactivate. Use instead of deleting — inactive products are hidden from workflows but retained for historical data |
Is Empty? | IsEmpty | No | Boolean (Yes / No) | — | Assumed as empty |
| Integration | |||||
External Code | ExternalProductCode | No | String, max 200 | — | Your internal system's identifier for this product. Used as an alternative match key — see Overview |
Examples
CSV
Product,SKU,Packaging Type,Measurement Unit,Short Name,Brand,Product Category,UPC,Size,Price,Facings Per Case,Is Active?
Coca-Cola Classic,COKE-12OZ-001,Can,ml,Coke Classic,Coca-Cola,Soft Drinks,012000000000,355,1.99,24,Yes
Sprite,SPRITE-12OZ-001,Can,ml,Sprite,Coca-Cola,Soft Drinks,012000000001,355,1.99,24,Yes
JSON
{
"data": [
{
"Product": "Coca-Cola Classic",
"SKU": "COKE-12OZ-001",
"PackagingType": "Can",
"MeasurementUnit": "ml",
"ShortName": "Coke Classic",
"BrandName": "Coca-Cola",
"ProductCategory": "Soft Drinks",
"ProductSecondCategory": "Carbonated",
"BeverageType": "Soda",
"UPC": "012000000000",
"ShortEANCode": "1234567",
"Country": "USA",
"State": "CA",
"DistributorName": "ABC Distributors",
"DistributorGTIN": "98765432100012",
"Manufacturer": "Coca-Cola Company",
"ProductGTIN": "00123456789012",
"Size": 355,
"Price": 1.99,
"FacingsPerCase": 24,
"PriceOption": "Retail",
"ExternalProductCode": "EXT-COKE-001",
"GraphColor": "#FF0000",
"FontColor": "#FFFFFF",
"FontStyle": "Bold",
"Height": 12.5,
"Width": 6.5,
"IsKeyProduct": "Yes",
"IsActive": "Yes",
"IsEmpty": "No"
},
{
"Product": "Sprite",
"SKU": "SPRITE-12OZ-001",
"PackagingType": "Can",
"MeasurementUnit": "ml",
"ShortName": "Sprite",
"BrandName": "Coca-Cola",
"ProductCategory": "Soft Drinks",
"ProductSecondCategory": "Carbonated",
"BeverageType": "Soda",
"UPC": "012000000001",
"ShortEANCode": "1234568",
"Country": "USA",
"State": "CA",
"DistributorName": "ABC Distributors",
"DistributorGTIN": "98765432100013",
"Manufacturer": "Coca-Cola Company",
"ProductGTIN": "00123456789013",
"Size": 355,
"Price": 1.99,
"FacingsPerCase": 24,
"PriceOption": "Retail",
"ExternalProductCode": "EXT-SPRITE-001",
"GraphColor": "#00FF00",
"FontColor": "#FFFFFF",
"FontStyle": "Bold",
"Height": 12.5,
"Width": 6.5,
"IsKeyProduct": "Yes",
"IsActive": "Yes",
"IsEmpty": "No"
}
]
}
API import
curl -X POST 'https://portal.coolrgroup.com/Controllers/Import.ashx?type=Product' \
-H 'Cookie: .ASPXAUTH=your-auth-token' \
-F 'file=@products.csv'
Replace products.csv with products.xlsx or products.json as needed.
Response
See Overview - Response format for response structure and error handling.
Common errors
| Error | Cause | Fix |
|---|---|---|
Missing required field: Product | Empty product name | Fill in Product for every row |
Missing required field: SKU | Empty SKU | Fill in SKU for every row |
Missing required field: Packaging Type | Empty packaging type | Fill in Packaging Type for every row |
Missing required field: Measurement Unit | Empty measurement unit | Fill in Measurement Unit for every row |
Missing required field: Short Name | Empty short name | Fill in Short Name for every row |
Value for column 'Size' must be at least 1 | Size value less than 1 | Provide Size ≥ 1 |
Value for column 'Price' must be at least 0.1 | Price value less than 0.1 | Provide Price ≥ 0.1 |
Value for column 'Facings Per Case' must be at least 1 | Facings value less than 1 | Provide Facings Per Case ≥ 1 |
For support, contact support@coolrgroup.com