WooCommerce 11.1 includes product CSV import and export fixes. Catalog roundtrips can still change identifiers, parent relationships, attribute order, tax class, stock, sale dates, image references, encoding, or custom metadata. An importer success notice is not a catalog reconciliation.
Use this for store migrations, ERP feeds, supplier catalogs, bulk updates, agencies, and stores with variable products or remote product images.
Quick answer
Create a small canonical catalog containing simple, variable, grouped, virtual, downloadable, taxed, backordered, scheduled-sale, Unicode, and multi-image products. Export as raw CSV, import into an empty controlled site, export again, and compare normalized rows and storefront behavior. Then update the same catalog a second time to prove IDs, parents, images, and stock are idempotent rather than duplicated.
What to check first
- Freeze WooCommerce version, locale, currency, tax settings, image source policy, CSV delimiter, encoding, and custom field contract.
- Create a canonical catalog with known SKUs, IDs, parents, attributes, variations, stock, tax classes, dates, downloads, and images.
- Export raw CSV, preserve quotes and line endings, import into an empty site, and export the resulting catalog again.
- Normalize allowed generated fields and compare every business field, parent relation, image identity, and row count.
- Run an update import with the same stable keys and prove it updates instead of duplicating products, variations, or media.
Diagnostic table
Use this table to connect the observed behavior to evidence and a verification step.
| Action | Evidence to collect | How to verify |
| Build and checksum a canonical catalog fixture. | Freeze WooCommerce version, locale, currency, tax settings, image source policy, CSV delimiter, encoding, and custom field contract. | SKUs, parents, attributes, variations, prices, tax, stock, dates, and images reconcile. |
| Preserve raw CSV encoding, quoting, delimiters, and stable identifiers. | Create a canonical catalog with known SKUs, IDs, parents, attributes, variations, stock, tax classes, dates, downloads, and images. | Unicode and quoted values survive the raw CSV roundtrip. |
| Import into an empty controlled site and export the result. | Export raw CSV, preserve quotes and line endings, import into an empty site, and export the resulting catalog again. | Failed image or custom-column rows report visible actionable errors. |
| Compare normalized business fields and media identities. | Normalize allowed generated fields and compare every business field, parent relation, image identity, and row count. | The second import updates stable records and creates no duplicates. |
Why this usually happens
- Spreadsheet applications can alter identifiers, dates, delimiters, and encoding.
- Remote image URLs may redirect, time out, or resolve to duplicate files.
- Variation parents depend on stable identifiers and import order.
- Custom columns can be silently ignored when their extension is unavailable.
Useful command or data shape
Adapt paths, IDs, and privacy handling to the site before running commands or storing data on production.
case,sku,parent,variations,images,tax,stock,second_import,result
C1,SIMPLE-1,none,0,2,standard,12,update,pass
C2,SHIRT-1,none,6,3,clothing,24,update,pass
C3,SHIRT-BLU-M,SHIRT-1,0,1,clothing,4,update,pass
C4,BAD-IMG,none,0,404,standard,2,error,pass
Test scenarios to run
Run the same controlled fixture across these branches. Write down the expected result before testing so a surprising response is easy to identify.
| Scenario | Fixture | Expected result |
| Simple product | Unicode, tax, sale, two images | Fields and media reconcile |
| Variable product | Three attributes and six variations | Parents and options stay linked |
| Update import | Same SKU with changed stock | One product updated |
| Bad image | Timeout or 404 URL | Visible row error, no false success |
Safe fix order
Use a sequence that makes each result easy to prove. Stop when new evidence changes the scope or owner of the problem.
- Build and checksum a canonical catalog fixture.
- Preserve raw CSV encoding, quoting, delimiters, and stable identifiers.
- Import into an empty controlled site and export the result.
- Compare normalized business fields and media identities.
- Repeat as an update and investigate every duplicate or ignored column.
Decision rule
Approve the CSV workflow only when the first roundtrip reconciles all required business fields and a second import updates the same products, variations, and images without duplication.
Production verification checklist
- SKUs, parents, attributes, variations, prices, tax, stock, dates, and images reconcile.
- Unicode and quoted values survive the raw CSV roundtrip.
- Failed image or custom-column rows report visible actionable errors.
- The second import updates stable records and creates no duplicates.
Field notes
- Compare raw CSV text before opening it in a spreadsheet.
- Use synthetic images and products.
- Keep downloads and signed URLs out of reusable fixtures.
Questions teams ask during testing
Can this be tested on production?
Use production for read-only confirmation and one narrow synthetic fixture that cannot charge a card, email a real customer, expose personal data, or change inventory. Perform destructive repairs, upgrades, cache changes, and schema work on staging first.
What evidence should the report keep?
Keep exact versions, UTC timestamps, stable synthetic IDs, expected and actual results, the decision owner, rollback point, and final verification. Redact customer data, credentials, tokens, addresses, and private infrastructure details.
When is the task complete?
Complete the task when the primary user path passes, downstream records reconcile, failure branches are understood, monitoring is active, and an established owner page links to the new guide in context.
Mistakes to avoid
- Changing production before recording exact versions, UTC timestamps, stable fixture IDs, current settings, and a reproducible baseline.
- Treating one successful screen as proof that background jobs, APIs, caches, roles, reports, and downstream records agree.
- Deleting logs or identifiers before the failure boundary, business impact, rollback point, and accountable owner are known.
- Testing only an administrator session instead of the devices, roles, networks, data states, and failure paths real users have.
What to tell the client or owner
Give the site owner the affected versions, exact synthetic fixture, UTC timeline, before and after evidence, current cause class, decision, rollback point, unresolved risks, and next review date. State which measurements prove success and which observation window remains open.
When HandL WP should help
Bring in help when this affects leads, checkout, search visibility, security, paid media reporting, or a client production site. HandL WP can trace the issue through WordPress, hosting, cache, tracking, and Search Console, then verify the workflow after the technical fix.
If this is active on a production site, audit a WooCommerce catalog migration.
Related HandL WP guides
Use these related guides when the same issue touches tracking, security, checkout, or crawler visibility.
Helpful references