Check your product CSV before WooCommerce imports it wrong.
Drop in the product CSV you are about to import. You get a row-by-row list of what breaks WooCommerce's published import schema: empty names, bad Type or Published values, 1/0 fields, price and weight formats, duplicate SKUs, variations without a Parent and more. Nothing is uploaded.
Built from the WooCommerce product CSV import schema, and tested on the sample products file that ships with WooCommerce. It is not WooCommerce, and passing here does not guarantee the import: your store checks more than this tool can, and image links are not opened. Make a copy of your file before you edit it. Your products are read only by your browser.
WooCommerce says to save the file as UTF-8. One file at a time, up to 40 MB.
What it checks
Name, Type, Published, visibility, tax status, the 1/0 fields, stock and backorder values, and duplicate SKUs.
Parent on every variation, unique SKUs, attribute names and values, and the 1/0 attribute columns.
Price, sale price, weight and size as plain numbers, sale dates, download limits, external URLs and image links.
Pay once. Check every catalog file.
- Up to 20,000 problems listed, not just the first 10.
- A problem list CSV and an annotated copy of your file with a Problems found column.
- One folder that opens in your browser with no internet. Your catalog stays on your computer.
Questions
Which columns does it understand?
The column names in the WooCommerce schema, including unit suffixes such as Weight (lbs) and Length (in), and numbered Attribute and Download columns. Other columns are listed and left unchecked.
What is the difference between new and update mode?
WooCommerce matches update rows by ID or SKU. In update mode the tool warns if the file has neither column.
Why are some findings warnings?
Where the schema only gives an example or a convention, the finding is a warning, not an error. The sale date format is one example.
Does it change my file?
No. It only reads it. The pack can write a separate list of problems and an annotated copy.
What about text starting with = + - or @?
In the files the pack writes, an apostrophe is put in front, so a spreadsheet does not read it as a formula.