Home › Errors

Invalid or missing CSV header

Fix a supplier CSV whose header row is empty, duplicated or does not match the data.

Symptom

The upload is rejected with HEADER_MISSING, a column shows as “Column N” or “Price [column 4]”, or rows report EXTRA_COLUMNS / SHORT_ROW.

Example that fails

Title	Price	Price		Notes
Lamp	30	25	0007	ignored

Fixed example

Title	Retail Price	Dealer Price	SKU	Notes
Lamp	30	25	0007	ignored

Explanation

CatalogPatch addresses source columns by index, never by name, so duplicate headers cannot overwrite each other: the second “Price” is shown as “Price [column 3]” and an empty header as “Column 4”. Neither is auto-mapped — you choose them explicitly in the mapping step. Rows with more cells than the header are blocking errors; rows with fewer cells are padded and listed as SHORT_ROW warnings that you must acknowledge. A file with no header row or an all-empty header is rejected before mapping.

Working fixture: fixture-tab-bom-dupheaders.csv

Title	Price	Price		Notes
Lamp	30	25	0007	ignored
Chair	45.5	40	0008	ignored

Limitations

Headers are not renamed for you. Multi-row headers and merged cells from spreadsheets are not supported; export a single header row.

Rule: HEADER_MISSING / EXTRA_COLUMNS / SHORT_ROW / duplicate and empty header labelling · Shopify reference: https://help.shopify.com/en/manual/products/import-export/using-csv · checked 2026-09-08.

Check my CSV free