Quotejam
Get Started

Use Case

Importing Your Product Catalog: From Spreadsheet to Quoting in Under an Hour

A practical guide to importing product data into Quotejam from CSV or Excel — column auto-detection, specification mapping, duplicate handling, and how to prepare your data for a clean import.

The catalog problem that delays every adoption

Every sales team that evaluates quoting software hits the same wall: “We have 800 products in a spreadsheet. How long will it take to get them into the system?”

If the answer is “enter them one by one,” the evaluation ends there. Nobody is going to spend 40 hours on manual data entry for a tool they’re still deciding about. And rightfully so — the value of quoting software shows up after your catalog is loaded, not during the loading process. Anything that extends the gap between “I signed up” and “I sent my first real quote” is adoption friction that kills conversions.

This is the practical reality of B2B product catalogs: they already exist. They’re in Excel, in an ERP export, in a supplier’s price sheet, in a CSV dump from your old system. The data is there. It’s just not in the right place yet.

What you’re actually importing

Before getting into the mechanics, it helps to understand what product data looks like in a quoting context versus a spreadsheet.

Your spreadsheet probably has columns for product name, SKU or part number, price, maybe a category, and then a collection of technical specifications that vary by product type. An HVAC distributor’s spreadsheet might have columns for cooling capacity (kW), power input (W), noise level (dB), and refrigerant type. An electrical supplier’s sheet might have voltage, current rating (A), IP rating, and cable size (mm2).

In a quoting system, this data maps to three things:

  1. Core product fields — name, SKU, description, category, list price, cost price. These are universal across every product in your catalog.

  2. Specifications — the technical data columns that make your products distinct. These are structured as key-value pairs with units, so “Cooling Capacity: 12.5 kW” is stored as data, not as text in a description field. Structured specs enable spec sheet generation on your quotation PDFs — comparison tables and product catalog pages that present technical data professionally.

  3. Categories — logical groupings that organise your catalog and determine which specifications apply to which products. Your HVAC products have cooling capacity; your electrical products don’t. Categories keep specifications relevant.

Preparing your data: 30 minutes that save 3 hours

The single biggest factor in import quality is data preparation. A clean spreadsheet imports smoothly. A messy one creates work after the import that’s harder to fix than it would have been to clean up beforehand.

Consistent column headers

Your spreadsheet’s column headers are how the import system identifies what each column contains. Headers like “Price” and “Unit Price” and “Selling Price” all mean the same thing, and Quotejam’s import recognises all of them (it has 40+ aliases for common column names). But if your header is “Col_7” or “Data_Field_Price_AUD_ExGST”, you’ll need to map it manually.

Before importing: rename cryptic column headers to plain language. “Product Name” instead of “Field2.” “List Price” instead of “PRICELIST_EX_TAX_AUD.”

One row per product

This seems obvious, but merged cells, sub-header rows, and multi-row product descriptions are common in spreadsheets that were designed for human reading rather than data processing. The import treats each row as one product. If your spreadsheet has a category header row followed by the products in that category, move the category into its own column so every product row is self-contained.

Consistent units in specification columns

If your “Weight” column contains “12 kg” in some rows and “12” in others, the import can handle it — but you’ll get cleaner results if units are consistent. Either put the unit in the column header (“Weight (kg)”) and keep the cell values numeric, or include the unit in every cell value. Don’t mix both approaches.

Handle your duplicates before importing

If your spreadsheet was assembled from multiple sources — supplier price sheets merged over the years, exports from different divisions — you likely have duplicate products. Two rows for the same SKU with slightly different descriptions or pricing. The import system can detect duplicates by SKU matching, but it’s easier to clean these up in Excel first where you can see the full context side by side.

Price format

Quotejam stores prices in the currency your organisation uses, without currency symbols. If your spreadsheet has “$1,234.56”, the import extracts the numeric value. But formats like “1.234,56” (European decimal style) vs “1,234.56” are auto-detected — the system analyses your data to determine which decimal convention you’re using.

The five-step import wizard

The import is a guided process, not a file upload that either works or doesn’t. Each step gives you visibility into what’s happening and lets you adjust before committing.

Step 1: Upload

Drag and drop your file or click to browse. Supported formats are CSV and Excel (.xlsx, .xls). The file is parsed immediately — you’ll see a preview of the data within seconds, including how many rows were detected and what the column headers look like.

Step 2: Column mapping

This is where the import system earns its keep. Each column from your spreadsheet is displayed with a dropdown to map it to a product field: Name, SKU, Description, Category, List Price, Cost, or Skip.

Quotejam auto-detects common columns using its alias matching. A column labelled “Part Number” is automatically mapped to SKU. “Selling Price” maps to List Price. “Product Type” maps to Category. You’ll typically find that 60-80% of your columns are correctly mapped before you touch anything.

Columns that don’t match a known product field are flagged as potential specification columns. A header like “Cooling Capacity (kW)” or “Weight (kg)” is clearly a spec field. The import system detects units from column headers using over 150 patterns — BTU/hr, kW, CFM, PSI, mm, dB(A), IP ratings, voltage, and dozens more. These columns carry forward to the next step.

Step 3: Specification configuration

For each column identified as a specification field, you configure how it should be stored: the display name, the data type (text, number, or select), and the unit. The import pre-fills these based on what it detected from the column header — a column named “Power (kW)” is pre-configured as a number field with unit “kW.”

If your organisation already has spec templates defined (perhaps from manually entering your first few products), existing templates are matched automatically. A new column called “Cooling Capacity” maps to your existing “cooling_capacity” spec template. New specification columns create new spec templates during import.

This step is skipped entirely if your spreadsheet only contains core product fields (name, SKU, price) with no specification columns.

Step 4: Duplicate matching

The import system compares your spreadsheet data against existing products in your catalog. If you’ve previously imported some products, or created them manually, this step identifies matches.

Matching works primarily on SKU. A row with SKU “DRV-2500” that matches an existing product with the same SKU is flagged as a duplicate. You choose what to do: update the existing product with the imported data, skip the row entirely, or create a new product alongside the existing one.

This step matters when you’re importing from a supplier’s updated price sheet. You want to update the 200 products whose prices have changed, add the 15 new products they’ve introduced, and leave the rest untouched.

Step 5: Review and import

A summary shows exactly what will happen: how many products will be created, how many updated, how many skipped, and any validation warnings. Categories that don’t exist yet in your catalog are listed — they’ll be created automatically during import. New spec templates are listed too.

Click import, and the system processes your data. Progress updates show which phase is running — creating categories, creating spec templates, creating products, updating existing products. A 500-product import typically completes in under a minute.

After the import: undo if needed

The import system tracks what it created. If something went wrong — you imported the wrong file, the column mapping was off, or the data wasn’t as clean as you thought — you can undo the import. The undo deletes the products that were created during that specific import session, leaving everything else untouched. Products that were updated (not created) during the import aren’t affected by undo, and products that have already been added to quotes are protected from deletion.

Tips from real imports

Start with a subset. If your full catalog is 2,000 products, export 50 representative products and import those first. Verify the mapping, check the specifications, confirm the categories look right. Then import the rest. The five minutes you spend validating a small batch prevents rework on the full catalog.

One category at a time. If your product categories have different specification columns (HVAC products have cooling capacity, electrical products have voltage rating), consider importing each category as a separate file. This keeps the specification mapping clean and avoids columns that are populated for some rows and empty for others.

Clean in Excel, not after import. Fixing a product name in a spreadsheet is a cell edit. Fixing it in a quoting system is a form submission. If you know your data has inconsistencies, fix them in the spreadsheet where batch operations are easy, then import clean data.

Use the category column. If your spreadsheet doesn’t have an explicit category column, add one before importing. Products without a category are harder to manage once they’re in the catalog — spec templates are linked to categories, and an uncategorised product won’t show specification fields in the product editor.

When not to self-import

The import wizard handles structured data well — spreadsheets with clear columns, consistent formatting, and one row per product. But some product catalogs aren’t in that state. They’re in PDF price sheets from suppliers. They’re in ERP systems with proprietary export formats. They’re scattered across three different spreadsheets maintained by three different people, with overlapping product ranges and conflicting pricing.

For cases like these, we’re happy to help. Send your catalog files — whatever format they’re in — to support@quotejam.com and we’ll process the data, map the specifications, clean up duplicates, and load your catalog for you. The first hour of your experience should be sending a quote, not wrestling with data formatting.

Prefer Assisted Setup?

If preparing your data feels like too much work upfront, we offer free catalog setup assistance. Email your existing spreadsheet, supplier catalog, or price list to support@quotejam.com. We’ll organize your products, set up categories and spec templates, and import everything for you. Most setups are completed within 48 hours.

Getting started

Product import is a Pro feature in Quotejam, alongside approval workflows, custom branding, project tracking, and team roles. The free tier supports manual product entry for up to 25 products — enough to evaluate the quoting workflow before committing to a full catalog import.

Start with Quotejam Pro and import your product catalog today. CSV, Excel, auto-detection, specification mapping, and undo capability — your spreadsheet becomes a structured product catalog in under an hour.

For a practical migration walkthrough, see Excel to Quotejam: A Practical Migration Guide. To understand how your imported catalog enhances quotations, see Product Specifications on Quotations and Product Bundling for Equipment Quotations.

Ready to see it in action?

Start free with 15 customers, 25 products, and 50 quotes/month. No credit card required.