⬡ BaseItemCode connects to:
inventory.csv → stock levels
stories.csv → product descriptions
options.csv → variations & finishes
sales_data.csv → order history
How It Works Your Files Setup Process Admin Guide
v2.3
How It Works Your Files Setup Process Admin Guide
eCat Data Model v2.3

Everything you need
before your first import

A plain-language guide to how your data files work, how they connect, and what your team will see in eCat on day one.

4 Core Files Optional Files 3 Critical Connections
How It Works

From your systems to your reps’ iPads

Your Source Data
ERP System
CRM System
Spreadsheets
Warehouse
Export to CSV
Core Files
Required
products.csv
Your product catalog
Required
customers.csv
Buyer accounts
Required
inventory.csv
Stock levels
Required
stories.csv
Product descriptions
Optional Files
Optional
sales_data.csv
Sales history & on-order data
Optional
options.csv
Product variations; works alongside option_groups.csv and matrix_options.csv
Upload to Admin Console
Admin Console
Validates & connects data
Sync
eCat iPad
Field sales app

Connections

How the Files Connect

Your product catalog is the center of everything. Hover any node to see how it connects.

Products
.csv
Inventory
Stock levels
Stories
Descriptions
Orders
Sales history
Options
Variations
Customers.csv
Separate — linked via Territory & Price codes

File Reference

Understanding Each File

Core products.csv — Your Product Catalog

The complete list of everything you sell. Comes from your ERP, product database, or master spreadsheet.

FieldPurposeStatus
BaseItemCode KEYProduct SKU — the master key that links all filesRequired
LongDescPrimary catalog title shown in the product gridRequired
ShortDescOptional shorter product name; falls back to LongDesc if blankOptional
TradeNameCodeBrand identifier (e.g., ELK)Required
CategoryCodesProduct category (e.g., FLAMP)Required
CollectionCodesProduct collection; required when strict catalog validation is enabled (default for most orgs)Required*
NetPriceBase price used for all price-level calculationsRequired
ImageFileNameProduct image filenameRequired
OptionSet1..NLinks to option groups for product variationsOptional
PromotionPricePromotional pricing override (header is case-insensitive)Required
Note on required fields: BaseItemCode, LongDesc, TradeNameCode, CollectionCodes, CategoryCodes, ImageFileName, and PromotionPrice are all required columns. NetPrice is essential for price-level calculations. CollectionCodes is required when strict catalog validation is active (default for most organizations).
BaseItemCode: H0019-11559    LongDesc: ABBERLEY 69" HIGH 1-LIGHT FLOOR LAMP
TradeNameCode: ELK    CategoryCodes: FLAMP    NetPrice: 150.00
Three different description fields: LongDesc = primary catalog title shown in the grid. ShortDesc = optional shorter line; if blank, LongDesc is used. ProductStory (in stories.csv) = extended marketing description shown in the detail view, tear sheets, and emails. Two different files, three different fields.
Core customers.csv — Your Customer Accounts

Who can buy from you and where they want products shipped. From your CRM or accounting system.

FieldPurposeStatus
BillToCodeCustomer account numberRequired
BillToNameCustomer company nameRequired
BillToAddress1Billing street addressRequired
BillToCityBilling cityRequired
BillToStateBilling stateRequired
BillToPostCodeBilling postal codeRequired
DefaultPriceCodeSets customer’s pricing level — drives automatic price selection when a rep selects this customerRequired
TerritoryCodesAssigns customer to sales rep(s) — controls which customers appear on each rep’s deviceRequired
ShipToCodeShipping location ID (one row per location)Required
ShipToAddress1Shipping street address (required per location)Required
ShipToCityShipping city (required per location)Required
ShipToStateShipping state (required per location)Required
ShipToPostCodeShipping postal code (required per location)Required
Row 1: BillToCode=188, BillToName="APPLE GOLD", TerritoryCodes=13, ShipToCode=1
Row 2: BillToCode=188, ShipToCode=2   ← Same customer, second location
Core inventory.csv — Stock Levels
FieldPurposeStatus
BaseItemCode KEYMust match products.csv SKURequired
QtyAvailableQuantity available to promise for immediate shipmentRecommended
QtyOnHandPhysical inventory count in the warehouseOptional
QtyReservedQuantity committed to unshipped sales ordersOptional
NextReceiptDateDate of next product receipt at your warehouseOptional
NextReceiptQtyQuantity of next product receipt at your warehouseOptional
Note: BaseItemCode is the only column that causes a fatal import error if missing. QtyAvailable is strongly recommended — without it, inventory data won’t be meaningful to reps in the field.
Core stories.csv — Product Stories

Extended product descriptions, specs, care instructions, and marketing copy. Displayed in eCat’s product detail view, tear sheets, PDF catalogs, and product emails.

FieldPurposeStatus
BaseItemCode KEYMust match products.csv SKURequired
ProductStoryExtended “product romance” description (header is case-insensitive)Required
Think of it as: LongDesc = “What it’s called”  •  ProductStory = “The full story about it”
Optional Files — Add when you’re ready

These files enhance eCat but aren’t required to go live. Add them as your setup matures.

Optionalsales_data.csv

Summarized sales history for in-app customer reporting. One row per customer/product combination, linked via BillToCode and BaseItemCode KEY. Powers the Invoices/Favorites and On Order views inside eCat, letting reps quickly see what a customer has purchased and what’s on order.

Optionaloptions.csv + option_groups.csv

Product variations (colors, finishes, sizes). Two files work together:

1
Define Options
options.csv: Code=100, Name=Black
2
Group Them
option_groups.csv: Code=FIN, Name=Finishes, Options=100,101,102
3
Assign to Products
products.csv: OptionSet1 = FIN
4
Price Behavior
Addends, factors, or matrix pricing

Critical Links

The Three Critical Connections

01 Product SKU Links Everything

BaseItemCode is the master key connecting products to inventory, stories, options, and orders.

products.csv
BaseItemCode = "H0019-11559", LongDesc = "Floor Lamp", NetPrice = $150
inventory.csv
Same SKU → QtyAvailable = 5
stories.csv
Same SKU → Full product description
options.csv
Via OptionSet → Black, White, Gold finishes
Rep sees: name, price, 5 in stock, full story, 3 finish options — all linked by one SKU
02 Territory Code Assigns Customers to Reps
customers.csv
Customer "APPLE GOLD" → TerritoryCodes = "13"
Admin Console
User "John Smith" → TerritoryCode = "13"
John Smith only sees customers assigned to territory 13 on his iPad
03 Price Code Sets Customer Pricing
customers.csv
Customer "GRUPO CAOR" → DefaultPriceCode = "4"
Admin Console
Price Level "4" = Distributor = 40% of NetPrice
products.csv
NetPrice = $1,542.50 → Customer sees: $617.00

Admin Console

What You Configure Directly (Not in Files)

Users & Territories
Users > Users
  • Create user accounts
  • Assign territory codes
  • Set permissions
User Groups
Users > User Groups
  • Control product visibility by brand/category
  • Control customer visibility
  • Set pricing permissions
Price Levels
Products > Price Levels
  • Code 0 → Net (100%)
  • Code 4 → Distributor (40%)
  • Code R → Retail (200%)
Taxonomy Display Names
Products > Trade Names / Categories
  • Turn codes into friendly names
  • ELK → “Elk Lighting”

Process

How It All Flows Together

01
Upload Files
Admin Console > Tools > Import Data. Upload products, customers, inventory, stories, options, and sales_data.csv (optional sales history).
02
System Connects
Links inventory to products via SKU. Links customers to reps via territory. Links pricing via price codes.
03
Rep Syncs iPad
Each rep gets a personalized package: their products, their customers, correct pricing, current inventory. Works offline.
04
Orders Flow Back
Rep creates order → syncs to server → exports to your ERP. Complete cycle.

Summary

Three Things to Remember

01
Product SKU Connects Everything
BaseItemCode is the master key that links products to inventory, stories, options, and orders.
02
Two Codes Control Access
Territory Code = which customers a rep sees. Price Code = what pricing a customer gets.
03
Simple 4-Step Flow
Upload files → System connects them → Reps sync → Orders flow back.
Ready to get started?
Log into your Admin Console and start with the Quick Start Guide

It walks you through logging in, navigating the interface, and where to find key settings — the right starting point before your first import.

Admin Console Quick Start →

Knowledge Base

Further Reading for Admins

These guides cover the day-to-day admin tasks that go hand-in-hand with managing your data.

You’ve covered the full eCat data model