Ni Stock Import Export is a WooCommerce stock import and export tool. Update stock quantities for many WooCommerce products and variations at once using a CSV spreadsheet, without editing products one by one, and without risking the wrong product being changed.
The plugin is built around one safe workflow: download your current stock, change the quantities, upload the file, review exactly what will change, and confirm. Nothing in your store changes until you confirm.
Each row is matched by product ID and verified against its SKU, so a row can never update a different product. If stock changes after you review the preview (for example, because an order comes in), that product is reported as a conflict instead of being overwritten.
stock_quantity column needs to change.stock_quantity. Leave every other column as it is.Nothing changes during upload, validation or preview.
The uploaded quantity is the final stock (“set stock to 50”), not an adjustment (“add 50”).
Download. Choose a product type (or all), a category (or all) and whether to include variations, then click Download CSV.
Import. Drag the edited CSV onto the upload area (or click Choose CSV File) and click Validate & Preview. The file is checked in the background; large files show a progress bar.
Review. The preview shows how many rows are valid, changed, unchanged and rejected. Only changed rows are listed by default; use the filter to see increases, decreases or unchanged rows. Rejected rows are listed separately and can be downloaded as a CSV error report.
Confirm. Click Confirm & Update Stock and confirm in the dialog. Stock is updated in batches with live progress. You can cancel at any time; products already updated keep their new stock.
Result and history. After the update you see how many products were updated, skipped, in conflict or failed. Every import is listed under Import History, where you can reopen its details and reports.
The downloaded file starts with a template line (nistimex_template_version,1.0) followed by a header row and one row per product or variation.
product_id (identity, do not edit): the WooCommerce product or variation ID, used to find the product.sku (identity, do not edit): the product’s SKU, used to verify the row matches the product.product_name (informational): for your reference only; changes are ignored.product_type (informational): simple, variable or variation.parent_id (informational): for variations, the ID of the variable product.stock_quantity (editable): the new stock quantity, as a whole number. Leave it empty to keep the current stock.stock_status (informational): in stock, out of stock or on backorder; WooCommerce updates it automatically.manage_stock (informational): yes, no, or parent (the variation’s stock is managed on its parent product row).backorders (informational): the product’s backorder setting.Rows with an empty stock_quantity are left unchanged. Rows for products that do not manage stock, and variations whose stock is managed by the parent, can only be left empty.
Upload Validate Review Confirm Complete.
.csv files are accepted. The file is stored privately and deleted as soon as it has been read..csv only, type- and content-checked, size-limited, stored under a random name in a protected folder, never executed, and deleted after validation.Limits: there is no limit on the number of products or imports. The upload size is limited to 20 MB or your server’s upload limit, whichever is smaller (roughly 250,000 rows). The download is generated in a single request. In our tests, 50,000 products downloaded in under 2 minutes with about 115 MB of PHP memory; much larger catalogs, or slower servers with strict time limits, may need per-category downloads. See the FAQ.