Skip to main content
Menu
Product
Solutions
Integrations
Resources
Guide — catalog import

How to import a vendor product catalog from CSV or Excel

Every catalog starts as somebody''s spreadsheet. This guide walks the full import path — prepare the source file, upload it, map the supplier''s columns to standard product fields with AI suggestions you review, validate, import, and check the result — so the products that come out the other side are ones you can actually share and sell from. A fictional manufacturer''s file carries the example.

By Ryan Balchand, Founder, InventaCloud · Published 2026-07-20

1. Introduction

Throughout this guide we follow a fictional manufacturer, Brightshore Living, importing a lighting price file with columns like Item Number, Dealer Cost, and Image File 1. All company names, columns, SKUs, prices, and preview rows shown are fictional demo data.

The platform pieces behind this workflow: AI Catalog Mapping, Product Data Management, and the CSV & Excel import path. The bigger picture from file to shared catalog is on How It Works.

2. What a vendor catalog import does

An import turns a supplier's spreadsheet into structured product records: each row becomes a product, each mapped column becomes a standard field, and the result is a catalog you can organize, price, and share.

Vendor file to catalog
Fictional example
Prepare the file Upload Map columns Validate Import Review the products

3. Choose the correct vendor and catalog

Files belong to a brand (vendor), and imported rows become the material catalogs are built from. Associate the upload with the right vendor before anything else — Brightshore's file goes under the Brightshore Living brand, not a catch-all. Getting this right up front is what keeps mapping reuse, images, and later updates connected to the same products.

4. Preserve the original supplier file

Keep an untouched copy of the file exactly as the supplier sent it, and do your cleanup on a working copy. When something looks odd three steps later, the original is your reference for "was it like this when it arrived?" — and the file you can send back to the supplier with a precise question.

5. Review the CSV or Excel structure

CSV and Excel (.xlsx, and .xls where the workbook is readable) are the supported import formats. Before uploading, give the file a structural once-over:

CheckWhat good looks like
One header rowRow 1 is column names; data starts on row 2 — no title banners or merged cells above it
One product per rowNo section subtotals, blank spacer rows, or multi-row products
One sheet that mattersThe product data lives on one worksheet, not scattered across tabs
Consistent columnsEvery row uses the same columns; nothing drifts into unnamed columns on the right

6. Identify SKU and brand fields

Find the column that uniquely identifies each product — Brightshore calls it Item Number — and the brand column if the file covers more than one brand. The SKU is the identity everything else hangs on: images match by it, updates target it, and orders reference it. If two rows share a SKU, resolve that with the supplier before importing, not after.

7. Check headers and first-row consistency

Headers become your mapping candidates, so scan row 1 for near-duplicates ("MSRP" and "MSRP "), vague names ("Price" — which price?), and columns whose header doesn't match their contents (a "Width" column full of finish names — it happens). Two minutes here saves twenty in mapping.

8. Separate catalog data from update files

A catalog import creates the product records. Ongoing changes — new quantities, revised price roles, discontinued flags — go through their specialized update modules, not repeated full imports (see the updates guide). If the supplier sent you a "price change" or "stock" file, that's an update file, not a catalog. And a catalog import is not a universal update-or-rollback mechanism — it builds catalogs.

9. Separate catalog data from image files

Image files upload through the product-image workflow (see the images guide); the catalog file only carries image filenames where supported. Remote image URLs go through the separate image URL importer — URLs pasted into a catalog's image columns are not downloaded by the import. Keep the two streams apart and they meet cleanly by filename.

10. Upload the source file

Upload the prepared file under the chosen vendor. The platform stores it, reads its structure, and parses the headers and rows — column names are cleaned up automatically (stray spacing in a header won't haunt the rest of the workflow). From here the file is the fixed input; everything that follows works from what was uploaded.

11. Review the parsed header and row preview

Check that what the platform read matches what you meant to send:

Item NumberBrand NameProduct TitleDealer CostMSRPImage File 1
BSL-LAMP-101Brightshore LivingHarborview Table Lamp$74.00$159.00BSL-LAMP-101.jpg
BSL-SCONCE-220Brightshore LivingSeagate Wall Sconce$58.00$129.00BSL-SCONCE-220.jpg
BSL-PENDANT-315Brightshore LivingDriftline Pendant$112.00$239.00BSL-PENDANT-315.jpg

All preview data fictional. Wrong column count, garbled characters, or data starting on the wrong row? Fix the source file and re-upload now — before any mapping work is invested.

12. Map supplier columns to product fields

Mapping connects the supplier's vocabulary to standard product fields:

Supplier column (fictional)Maps to
Item NumberSKU
Brand NameBrand
Product TitleProduct Name
Long CopyDescription
Dealer CostCost
Available QtyInventory Quantity
Image File 1Primary Image Filename

Mappings are reusable: the work you confirm here helps future files from the same supplier map faster. The full mapping walkthrough is its own guide.

13. Review AI mapping suggestions

AI suggests likely mappings so you start from a proposal instead of a blank page — and you review, not rubber-stamp:

AI suggestions — review each one
Fictional example
“Long Copy” → DescriptionGood suggestion — confirm
“Dealer Cost” → Price?Ambiguous — this is your cost role, not the selling price. Correct it.
“Catalog Page Ref” → (no suggestion)Supplier-specific — map or leave unmapped deliberately

Confirm the fields that carry business meaning yourself — SKU, brand, every pricing role, dimensions, inventory, and descriptions. AI proposes; it doesn't decide which price role is which for your business, and it can't invent facts the file doesn't contain.

14. Resolve ambiguous and unmapped columns

Every column ends the mapping step in one of three states: mapped to the right field, deliberately unmapped (Brightshore's Catalog Page Ref is internal to the supplier — leaving it out is a decision, not an oversight), or flagged for a question back to the supplier. The state to avoid is "not sure, imported anyway" — ambiguity imported is ambiguity multiplied across every product.

15. Validate required product information

Validation runs your import rules against the file before anything imports: required fields present, values in expected shapes, and any block/warning checks you've defined.

Pre-import validation — Brightshore file
Fictional example
Rows1,240
Ready to import1,238
Errors1 — blank SKU (row 41)
Warnings1 — missing brand (row 87)

A missing required column stops the import with a message naming it — by design, since importing products without SKUs or names creates records nothing can reference.

16. Review duplicate and conflicting identifiers

Watch validation results for identifier problems: the same SKU on two rows with different data, or the same product under two slightly different SKUs (BSL-LAMP-101 vs BSL-LAMP-0101). Resolve conflicts in the source file with the supplier's confirmation — the import surfaces what it finds, but deciding which row is the truth is a human call, not something to leave to chance.

17. Confirm image filenames where applicable

Where the file carries image columns, the values should be filenames that will exist in the image library:

Image filename check
Fictional example
BSL-LAMP-101 · Image File 1BSL-LAMP-101.jpg — matches the uploaded image
BSL-SCONCE-220 · Image File 1BSL-SCONCE-220_FINAL.jpg — no such file in the library; fix the reference or the filename

Filenames, not URLs: the import doesn't download images from catalog columns. Files come in through the image workflow; remote URLs come in through the separate URL importer.

18. Review validation errors and warnings

Errors block; warnings inform. Read both before importing:

Finding (fictional)TypeWhat to do
Row 41: SKU is blankErrorFix the source row — a product with no SKU can't be referenced
Row 87: Brand Name missingWarningConfirm the brand or accept the gap knowingly

19. Finalize and start the import

With mapping confirmed and validation acceptably clean, queue the import. This is the commit point: the file's rows become product records under the vendor, built with the mappings you approved.

20. Monitor import progress

Imports process in the background with visible progress:

Import progress
Fictional example
Queued Processing · 640 / 1,240 rows Finished · 1,238 imported

Processing time depends on the file — plan around bigger files taking longer rather than expecting a fixed clock.

21. Review the imported products

Open the imported data and spot-check like a buyer would: a product you know well (is the description in the right field?), a priced product (did cost land in Cost, not Price?), a product with dimensions (numbers, not finish names?), and one of the image-referenced products. Ten products checked well beats a thousand glanced at.

22. Correct source-data problems and reimport

Found a systematic problem — a column mapped wrong, a supplier typo repeated down a column? Fix the source file (or the mapping) and run the import again with the corrected file. Corrections flow through the same upload-map-validate-import path, which is exactly why you kept the original file from step 4: you can always diff what changed.

23. Prepare the catalog for sharing

An imported catalog is raw material; a shared catalog is the product. From here: organize and enrich the data in Product Data Management, attach images, then set up reseller access and pricing — the full path is in the catalog-sharing guide. Sharing is a deliberate step you take when the catalog is ready — importing alone doesn't expose anything to resellers.

24. Common catalog-import mistakes

Importing the supplier's formatting

Title banners, merged cells, and subtotal rows all read as data. Strip the decoration; keep one header row and one product per row.

Rubber-stamping AI suggestions

"Dealer Cost → Price" looks plausible and is wrong. Confirm every pricing role, SKU, and brand mapping yourself — suggestions are a head start, not a sign-off.

Treating imports as updates

Re-importing a full catalog to change prices is the long way around and easy to get wrong. Price, inventory, and discontinued changes have purpose-built update modules.

Skipping the post-import review

The import finishing isn't the finish line. Ten well-chosen spot-checks catch the mapping slip before a reseller does.

25. Catalog-import checklist

  • Original supplier file preserved untouched; cleanup done on a copy
  • One header row, one product per row, one sheet, consistent columns
  • SKU and brand columns identified (and unique SKUs confirmed)
  • Update files and image files kept out of the catalog import
  • Uploaded under the correct vendor
  • Parsed preview matches the file you meant to send
  • Columns mapped; AI suggestions reviewed — pricing roles, SKU, brand confirmed by a human
  • Ambiguous columns resolved; unmapped columns left out deliberately
  • Validation errors fixed; warnings read and accepted knowingly
  • Image columns carry filenames that exist in the image library
  • Import run and progress watched to Finished
  • Imported products spot-checked before building on them

Common questions

What file formats can I import a catalog from?

CSV and Excel (.xlsx, and .xls where the workbook is readable). JSON, XML, and API payloads aren''t catalog import formats — JSON and API are delivery formats on the export side. If a supplier sends something else, ask for a CSV or Excel export.

Does AI map my columns automatically?

AI suggests likely mappings so you start from a proposal instead of a blank page — common, clearly labeled columns are often suggested correctly. You review and confirm the mappings, especially SKU, brand, and every pricing role. Ambiguous columns are yours to decide, and AI can''t create facts the file doesn''t contain.

Can I put image URLs in my catalog file?

No — image columns carry filenames where supported, and the import doesn''t download images from catalog columns. Upload image files through the product-image workflow, or bring remote URLs in through the separate image URL importer; the catalog rows then reference those filenames.

I imported with a mistake — can I roll the import back?

A catalog import isn''t a universal update-or-rollback mechanism. Fix the source file or mapping and reimport the corrected file through the same workflow. For ongoing price, inventory, and discontinued changes, use the specialized update modules — those keep batch history with their own supported rollbacks.

Your supplier''s spreadsheet, made sellable.

Start a 14-day free trial and import your first vendor catalog — onboarding call included on every vendor plan.