Inventory group CSV import is upsert-by-SKU. If the SKU already belongs to an inventory group, the row updates that group. If the SKU is new, the row creates a group. A SKU already owned by a product or variant is reported as an error, because a SKU-backed stock pool cannot take over another resource's SKU.
Export columns are ID, Name, Slug, SKU, Description, Overall Low Stock Threshold, Total Quantity, Reserved (held stock), Created At, and Updated At. Quantities are a snapshot: importing the file again does not change stock.
Create and update imports
Import CSVs require: Name, SKU. Name and SKU are required for new groups. On update, a blank Name keeps the existing name. Slug is optional; a blank slug is ignored on update and generated from the name on create.
A blank Overall Low Stock Threshold clears the threshold when that column is present.
| Name | Slug | SKU | Description | Overall Low Stock Threshold |
|---|---|---|---|---|
| Print Blanks | print-blanks | BLANK-TEE-POOL | Shared stock pool for blank T-shirts. | 40 |
Stock quantities
The inventory group CSV does not change stock. To import stock for a group, use the stock quantity CSV with the group's SKU, or set quantities on the group's Stock levels tab. Either way, stock history, low-stock alerts, and totals update together.
Analysis and jobs
Every file is analyzed before it starts a background job. The preview shows create, update, no-change, and error rows. Confirming the import starts the job from that analyzed preview; rows with errors are not applied.
CSV file format
CSV files use UTF-8. Exports start with a byte order mark (BOM) so spreadsheet apps recognize the encoding, and imports accept files with or without one. A file with text that isn't valid UTF-8, such as one saved in another encoding, is rejected with the line of the first problem. Save it as UTF-8 (in Excel, CSV UTF-8) and upload it again.
A value that starts with =, +, @ or %, or with a tab or line break, is exported with an apostrophe in front so spreadsheet apps show it as text instead of running it as a formula. So is a value that starts with -, except a plain number such as -12.50, which stays a number. A value that really starts with an apostrophe is exported with a second one. Importing the file removes the added apostrophe, so these values come back unchanged.
A value that is exactly __CLEAR__ is also exported with an apostrophe in front, and so is none in a column where it clears a value, such as Quantity Pricing. On import it is read as that text, not as an instruction to clear a value. In other columns none is exported as it is.