Skip to content

Importing products

Load a CSV or spreadsheet into a schema with automatic header mapping, a validation report and resumable ingestion at any size.

The Imports tab walks a CSV or XLSX file through a wizard built to handle a few rows or a million with the same flow.

  1. Upload: the file streams to storage. Kabaido sniffs the delimiter, encoding and header row and shows the size.
  2. Map: headers are mapped to schema fields automatically using field synonyms and fuzzy matching. Unmapped columns are parked as extra attributes or ignored. You can save a mapping to reuse next time.
  3. Validate: the first 500 rows are parsed server side into a report showing type coercion, unit hints (for example 3/8 in normalised to 9.525 mm) and a duplicate sku policy of update or skip.
  4. Run: ingestion happens in batches with a live progress view.
  5. Search: rows are searchable the moment they land. The index covers the title, part number, category and every typed attribute value, and part numbers are also compared by similarity, so a different punctuation style or a mistyped character still finds the row.

Large files

Ingestion runs server side in upserts of 1000 rows and tracks a cursor per batch, so if a run is interrupted it resumes from where it stopped rather than starting again. Files over 200000 rows take a faster bulk load path. You can cancel a run and it stops cleanly at the next batch boundary.

Rows that fail validation are written to an error report in storage with the row number and the reason, so a partial import never silently drops data.

The mapping is the whole job

Everything downstream depends on this one step. A price column mapped to the wrong field prices your catalogue wrongly; a diameter left as free text cannot be filtered, cannot be matched against and cannot be read by a formula. The wizard does the obvious work for you, using your fields' declared synonyms and fuzzy matching on the headings, but the five minutes spent checking what it guessed is the highest-value five minutes in the whole import.

Pay particular attention to two things: that the money column you mapped is the price you actually sell at rather than a published list or a cost, and that anything you will want to search or match on has landed in a typed field rather than in the description.

Re-importing

Most catalogues arrive again: a monthly price file, a quarterly range update. The duplicate policy is what decides what happens to a SKU you already hold, update it or leave it alone and bring in only what is new. Saving the mapping with a name means the second import is upload, pick the saved mapping, run.

Imports are checked against your plan product limit on every insert. If a file would take you over the limit the run is blocked and you are prompted to upgrade.