CSV Import and Export for Price Lists
Bulk import products and pricing or export your entire price list to a CSV file
CSV Import and Export for Price Lists
What is CSV Import/Export?
CSV (Comma-Separated Values) files let you work with your price list in spreadsheet programs like Excel or Google Sheets. You can:
Export = Download your entire price list as a CSV file
Import = Upload a CSV file to add or update hundreds of items at once
This is much faster than adding items one-by-one through the portal.
When to Use CSV Import/Export
Export Your Price List When:
- Backing up your pricing data
- Sharing your price list with bookkeeper/accountant
- Working on pricing offline in Excel
- Moving data to another system
- Creating a price list template for similar items
Import Your Price List When:
- Setting up Cooledge for the first time (bulk import from old system)
- Adding a supplier's entire product catalog
- Updating prices on multiple items at once
- Restoring from a backup
- Adding seasonal products in bulk
Exporting Your Price List
How to Export
- Go to Settings > Price List
- Click the "Export" button (top right, near the download icon)
- A CSV file downloads to your device:
price-list.csv - Open in Excel, Google Sheets, or any spreadsheet program
[IMAGE PLACEHOLDER: Price List page with Export button highlighted]
What Gets Exported
The CSV includes these columns:
- SKU - Your product code
- Name - Item description
- Kind - Type (material, labor, fee, discount)
- Unit - Measurement unit (ea, hr, m, kg, etc.)
- Unit Price - Price per unit
- Tax Included? - Whether tax is in the price (TRUE/FALSE)
- Category - Item category/group
- Active - Whether item is currently active (TRUE/FALSE)
All active items in your price list export by default.
Working with the Export
In Excel:
- Edit prices in bulk (e.g., increase all items by 5%)
- Add new rows for new products
- Sort and filter by category
- Calculate totals and margins
- Save and re-import when done
Keep the format! Don't change column headings or the import won't work.
Importing Your Price List
Download the Template First
Before importing, get the template to see the correct format:
- Go to Settings > Price List
- Click "Import"
- In the modal, click "Download Template"
- Open the template in your spreadsheet program
The template shows:
- Required column names
- Example rows
- Valid values for each field
- Notes about formatting
[IMAGE PLACEHOLDER: Import modal with Download Template button]
Prepare Your CSV File
Your CSV must have these columns (in this order):
- sku - Optional product code (leave blank if you don't use SKUs)
- name - Item name (REQUIRED)
- kind - One of: material, labor, fee, discount (REQUIRED)
- unit - Unit of measure: ea (each), hr (hour), m (meter), kg, etc.
- unit_price - Price as number (e.g., 150.00) (REQUIRED)
- price_includes_tax - TRUE or FALSE
- category - Group name (optional but recommended)
- is_active - TRUE or FALSE (defaults to TRUE)
Example rows:
sku,name,kind,unit,unit_price,price_includes_tax,category,is_active
AC001,Split System 7kW,material,ea,2500.00,FALSE,Air Conditioning,TRUE
LABOR01,Installation Labor,labor,hr,120.00,FALSE,Labor,TRUE
FEE001,Service Call Fee,fee,ea,85.00,FALSE,Fees,TRUE
Rules and Validation
Three fields are required: name (can't be blank), kind (must be material, labor, fee, or discount), and unit_price (must be a number).
SKU matching is how the system knows whether to update or create. If the SKU matches an existing item, it updates that item. If the SKU is new or blank, it creates a new item. This means you can use CSV to update prices across hundreds of items without creating duplicates.
Price format matters - use numbers only like 150.00. Don't include currency symbols like $150 or commas like 1,500. For boolean values, use TRUE or FALSE (case doesn't matter), not Yes/No or 1/0.
How to Import
- Go to Settings > Price List
- Click "Import" button
- In the modal:
- Click "Choose File" or drag file into area
- Select your CSV file
- Click "Import"
- System processes the file:
- ✅ Valid rows are imported
- ❌ Invalid rows show error messages
- Success message shows:
- How many items created
- How many items updated
- Any errors encountered
[IMAGE PLACEHOLDER: Import in progress showing success and error counts]
Handling Errors
If rows fail to import, you'll see:
- Row number where error occurred
- Reason (e.g., "Missing name", "Invalid kind", "Price must be number")
- Errors are also in browser console (F12) for details
Fix errors:
- Note which rows failed
- Fix those rows in your CSV
- Import again (only fixed rows need reimporting)
- Successfully imported rows won't duplicate
Update vs Create
The SKU determines what happens:
Update Existing Items
If your CSV has a SKU that matches an existing item:
- That item's details are updated with the CSV values
- No duplicate is created
- Useful for price updates across many items
Example:
Existing: SKU "AC001" - Split System 7kW - $2,500
CSV row: AC001,Split System 7kW Inverter,material,ea,2800.00,FALSE,AC,TRUE
Result: Item AC001 updated to new name and new price
Create New Items
If your CSV has:
- A SKU that doesn't exist yet
- OR a blank SKU
A new item is created.
Tip: Leave SKU blank when adding new items if you don't use SKU codes.
Best Practices
Before Importing
- Always export first as a backup
- Download the template to see correct format
- Test with 5-10 items before importing hundreds
- Check for duplicates - same item with different SKUs creates duplicates
Formatting Tips
- Keep it simple - don't use special characters in names
- Be consistent with units (don't mix "ea", "each", "unit")
- Use categories to keep things organized
- Set clear SKU patterns (AC001, AC002, LAB001, etc.)
After Importing
- Review the imported items in the price list
- Check a few prices to confirm they're correct
- Test creating a quote with imported items
- Fix any issues and re-import if needed
Common Questions
Can I import items into kits? No, CSV import is for individual price items only. Kits must be created through the portal.
What happens if I import the same file twice? If items have SKUs, they'll be updated (not duplicated). If no SKUs, you'll get duplicates.
Can I delete items via CSV? No. CSV can only create or update. Delete items manually through the portal.
Why didn't some rows import? Check the error messages. Common issues: misspelled "kind", price with $ symbol, missing required fields.
Can I change an item's kind (material to labor)? Yes! The import will update the kind if the SKU matches.
Next Steps
- Managing Your Price List - Creating and organizing price items
- Price Kits - Bundle items into packages
- Staff Labor Rate Defaults - Assign rates to team members
Was this article helpful?
Let us know if you found this information useful.
Still need help? Contact support
In this article
Use your browser's search (Ctrl+F) to quickly find specific topics within this article.
Browse all help articles →Related Articles
Managing Your Price List
Create and manage materials, labor rates, fees, and discounts for faster invoicing
Price Kits (Bundled Pricing)
Create flat-rate bundles of products and labor for faster quoting and invoicing
Staff Labor Rate Defaults
Assign default hourly rates to staff members for faster invoice creation