WooCommerce Product CSV Checker Skill

Find the rows WooCommerce will skip or import wrong, see why in plain words, and get a fixed copy for the formatting problems.

WooCommerce Product CSV Checker Skill cover

What it does

Catch the problems that make WooCommerce skip rows or import broken products, before you click Import. One command, a report you can read, and a safely fixed copy.

python3 -m woocsv check products.csv                          # report (exit 1 if anything is high severity)
python3 -m woocsv check products.csv --fix products.fixed.csv  # + fixed copy and products.fixed.changes.csv
python3 -m woocsv check products.csv --issues issues.csv --json

What you get

The screenshot is real output from the kit’s own commands. Tested from a fresh download of this exact zip: ./run_tests.sh ran 6 tests OK on Python 3.13 and 3.10.

Real terminal output from WooCommerce Product CSV Checker Skill: demo and passing tests

What it checks (core importer schema)

  • File: UTF-8 encoding (Excel's Windows-1252 breaks accents), duplicate or misspelled headers, rows with the wrong number of cells, columns the importer won't import (custom fields need a meta: prefix).
  • Values: Type (simple, variable, grouped, external, variation, virtual, downloadable), Published (1, 0, -1, 2), 1/0 booleans, Backorders allowed? (1, 0, notify), catalog visibility, tax status, stock (number, blank, or parent on variations), dates (YYYY-MM-DD, end after start), n/a or numbers for download limits.
  • Prices and dimensions: plain numbers only (no $, no thousands separators, dot decimals), sale price below regular price, no units inside Weight (kg)-style columns.
  • Variations: a Parent (SKU or id:123) that exists in the file as a variable product (or already in your store), attribute names and values that match the parent, one value per attribute, a unique SKU (WooCommerce doesn't generate one).
  • Products: required Name, unique SKUs, external products with an External URL, IDs that only update existing products, id: prefixes in Grouped products/Upsells/Cross-sells, images that are local file paths or http://, <script> in descriptions.

Safe fixes (--fix)

Formatting only, each one logged in *.changes.csv: re-encode to UTF-8, yes/no/true/false to 1/0, status words (draft, published, private, pending) to codes, prices to plain numbers, units stripped from dimension columns when they match the column unit, enum values lowercased. It never changes SKUs, parents, attributes or which products exist.

Claude / agent skill

skills/woocommerce-product-csv/SKILL.md tells Claude Code (or any agent that reads skills) how to run the checker, explain results and offer the fix. Copy the folder into .claude/skills/.

Run ./demo.sh for the example (9 rows, 23 issues, 9 safe fixes) and ./run_tests.sh for the tests. Python 3.9+, no dependencies, works offline; your CSV never leaves your computer.

Honest limits

Covers the core WooCommerce importer (woocommerce.com docs, checked Nov 9, 2026), not third-party import plugins. It can't see your store, so it can't confirm that parents, categories, tax classes or shipping classes referenced in the file already exist. Always back up and test a big import on staging.

Also see the Shopify Product CSV Checker Skill for Shopify imports. License: LICENSE.txt.

Format and license

Zip, 15 KB, v1.0, 13 files. You may use and modify this kit for your own work and for clients you serve, including paid client work. Not affiliated with or endorsed by WooCommerce or Automattic.

FAQ

Does it upload anything?
No, it runs on your computer and never connects to your store.
Does it work with import plugins?
It checks the core WooCommerce importer's columns; plugins with their own formats aren't covered.
Will --fix change my prices?
Only their format (e.g. $1,299.00 to 1299.00); it flags suspicious values for you to decide.
How do I get the files?
Right after payment, Stripe’s confirmation page shows your download link.
Refunds?
Email hello@youraitools.co within 14 days if it doesn’t work and we can’t fix it.
Can I pay with crypto?
Yes. Pay the same price in USDC or USDT on Base, Ethereum, Arbitrum, Optimism, Polygon or Solana from the "Pay with crypto" button, with no account or KYC. We check the payment on-chain and show your download links as soon as it confirms.

Get WooCommerce Product CSV Checker Skill

Check a WooCommerce product CSV before import: variations, prices, booleans, encoding, duplicate SKUs and image paths, with a safely fixed copy. $19 once.

Save with a bundle

Pairs well with

DownloadFree

Hreflang Checker (Free)

Free hreflang checker: invalid codes, missing self-references and return links, x-default, and alternates that redirect, 404 or are noindex.

View Hreflang Checker (Free)
Download$19

Google Merchant Center Feed Checker Skill

Check a Google Merchant Center feed before upload: prices, GTIN check digits, identifiers, availability dates, variants, with a fixed copy. $19 once.

View Google Merchant Center Feed Checker Skill
Download$29

SEO Log File Analyzer

Analyze server logs for SEO: verified vs fake Googlebot, crawl waste on 404s and redirects, sitemap URLs never crawled, GPTBot/ClaudeBot. $29 once.

View SEO Log File Analyzer

Related