

Step 1: upload a supplier file, or try the bundled sample price list.
EmberPrice imports supplier price lists (Excel XLSX/XLS or CSV) into WooCommerce, so you can update WooCommerce prices from Excel or run a bulk price update from CSV without editing products one by one. Upload the file and EmberPrice auto-detects the columns, matches each row to your real catalog (learned alias, SKU/GTIN, exact name, or fuzzy match), and applies a pricing rule (margin, VAT, rounding) you control. Every price update goes through a full preview, with old price, new price, and percent change, that you can export before anything touches your store, plus a snapshot-based rollback if you change your mind after applying it.
Try it before you trust it with real data: every install ships with a sample supplier price list, so you can run the whole wizard end to end in a couple of minutes with nothing at stake. And it scales past the demo: matching and pricing a real 5,000-row supplier list against a 10,000-product catalog, start to finish, takes under 4 minutes (see the Performance section below).
The full wizard:
.99/.90 endings, or nearest multiple), existing sale-price policy, and per-category overrides.Because supplier lists are messy: headers that aren’t on row 1, merged cells, prices as $ 1.234,56, codes with leading zeros or no code column at all, section rows, discontinued items. EmberPrice’s column detection and matching cascade are built around exactly these cases, and nothing is ever written to a product until you’ve seen the diff.
This release covers the full wizard for CSV/XLSX imports on simple and variable products: manual column mapping, alias/SKU/exact-name/fuzzy matching with no row limit, learned-alias memory (so re-imports from the same supplier resolve instantly), a global margin rule, guardrails, preview/export, and full rollback history.
A paid Pro tier is planned for a future update and will add: AI-assisted matching and column mapping, PDF price lists, and per-category pricing rules and rounding.
Measured against a real WooCommerce catalog of 10,000 products (9,700 simple + 300 variable products with 3,000 variations total) and a real 5,000-row supplier price-list import, driven through the actual REST endpoints (no mocks):
tests/seed-catalog.php and tests/run-perf-test.php (WP-CLI only, not shipped in the distribution zip).Hosting considerations found during this pass (environment characteristics, not plugin defects):
innodb_flush_log_at_trx_commit=1 and slow disk I/O, every database write incurs a synchronous fsync; large batch operations (apply, rollback) will be slower than the numbers above. This is a MySQL/hosting configuration matter, outside the plugin’s control.wp_actionscheduler_actions/wp_actionscheduler_claims accumulate a very large backlog (tens of thousands of rows) without periodic cleanup. If matching or apply appear stuck, run wp action-scheduler clean first before assuming a plugin bug.Not yet covered by this QA pass: a full compatibility matrix across WooCommerce 8.x/9.x, PHP 8.2-8.3, and the Storefront/Astra themes. This pass validated against WooCommerce 10.9 / PHP 8.3 only.