Bulk Import

Load or update hundreds of products, or set stock counts by location and bin, from a spreadsheet.

When you have more than a handful of products, load them from a spreadsheet instead of entering them one at a time. The same tool updates existing products in bulk, and a second import sets stock counts by location and bin.

Where imports live

Open Import / Export → Import Data in the sidebar. The page lists every import type, with the columns each one requires. This article covers the two you will use most:

  • Products: create and update products, with variants, pricing and attributes.
  • Inventory: set stock counts at a location, optionally into bins.

The same page also offers Categories, Brands, Product Images, Product Options, Product Attributes, Category Mappings, Product Bundles, Related Products and Vendor Products. They work the same way: upload, map columns, review, start.

📸 Screenshot placeholder: The Import Data page (Import / Export → Import Data) showing the Catalog cards, with Products and Inventory visible.

Importing products

  1. Get a template. On Import Data → Products, use Need a template? to download Basic, Full or With Variants, as Excel or CSV. Fill it in, or use your own file with your own column names.
  2. Upload your file. Drag it onto the page or click Browse Files. CSV, XLSX, XLS and TXT files are accepted, up to 100 MB. For a CSV you can set whether the file has a header row, the delimiter (comma, semicolon, tab or pipe) and how many rows to skip. For Excel, the first sheet is read. Excel is the safer choice if your text has symbols like ® or ™.
  3. Map columns. Click Auto-Map, then check every row in the Maps To column. Choose Skip this column for anything you do not want imported. Tick Save this mapping as a template to reuse it next time (saved mappings are listed under Import / Export → Mapping Templates).
  4. Review and start. Pick how images are handled (Download & host images on your storage, Keep image URLs as external links, or Skip image import), read the This import will also list, then click Start Import.
  5. Watch it run. The Import Progress page shows rows processed, successful and errors. Cancel Import stops it: rows already processed are kept and the rest are skipped. Past imports are under Import / Export → Import History.

📸 Screenshot placeholder: The Map Columns step of Import Products with a few columns mapped (use a small test file with fake products), including the Maps To dropdown open.

⚠️ Warning: There is no preview or dry run, and no undo. Always import a small test file first (5 to 10 rows) before importing thousands, and check the result on the product pages.

What a row needs, and how it is matched

Rule What happens
SKU is the key Every row needs a SKU. If the SKU already exists, that product is updated. If not, a new product is created. Matching uses your SKU only, not the manufacturer part number or barcode.
Name is only needed for new products A new SKU with no name is reported as an error. An existing SKU can be updated without a Name column at all.
Only mapped columns change On an existing product, columns you did not map are left alone. A mapped column with a blank cell is also left alone, so an import cannot clear a value.
Duplicate SKUs in the file Rows with the same SKU are combined into one product. The first row’s values win, and the categories from every row are added together.
Status If you do not map Status, new products start as Draft. Words such as active, published, live, enabled, yes or 1 mean Active; inactive, disabled, archived, no or 0 mean Archived; anything else means Draft.
Categories, brands, vendors Names that do not exist yet are created and linked automatically. A vendor created this way is a bare record, so finish it on the vendor page.
Barcode / UPC This column sets a variant’s barcode. There is no product-level GTIN column in this import, so set a product’s GTIN on the product page, or let a vendor feed fill it.
Part numbers Map Manufacturer Part Number, Primary Part Number and Universal Part Number to keep them with the product. Vendor feeds use the manufacturer part number and brand to match items (see Product Feeds).
Stock Quantity Writes a single number to the product. It does not let you pick a location or bin, so if you track stock by location, use the Inventory import below.

For products with sizes or colors, use the With Variants template: one parent row (type variable) and one row per variant that points at the parent with parent_sku. See Variants.

A row that fails does not stop the others. When an import finishes with errors, the Import Progress page shows Some rows didn’t import with a Download report button. The report lists the failed rows and the reason for each. Fix them and upload just those rows.

Importing stock counts

Use Import Data → Inventory to load counts for one location at a time. You need at least one location first (Inventory → Locations), because stock is tracked per location.

Your file needs a column to identify the product and a quantity column:

Column Use
sku Your SKU. Use this with Match products by: SKU.
mpn and mfr_id Manufacturer part number and brand code. Use these two together with Match products by: MPN + MFR ID, for files that come from another system.
quantity On-hand count.
available Count already net of allocations. Map quantity or available.
bin_location Optional bin (slot) code.

The options on the review step:

Option Choices
Location (warehouse) The location these counts are for. Defaults to your default location.
Quantity mode Absolute (the file value replaces on-hand) or Adjustment (the file value is added or subtracted).
Adjustment reason Count (recount), Initial load, or Correction. Recorded on each stock change.
Bin handling One bin per product (a re-upload with a new bin moves the product) or Multiple bins per product (no automatic move).
Rows with no bin Import them, or Skip & add to report.
Reconcile mode Standard, Snapshot, or Snapshot (authoritative). See below.

📸 Screenshot placeholder: The Review & Import step of Import Inventory showing the Location, Quantity mode and Reconcile mode options (use a test location).

Standard, snapshot and authoritative snapshot

  • Standard update only touches the products that are in the file.
  • Snapshot treats the file as the full picture of the products it lists: counts and bins are reconciled, bin moves are handled, and nothing is double-counted. Products that are not in the file are left alone.
  • Snapshot (authoritative) does everything Snapshot does and also sets to zero any product that has stock or a bin at this location but is not in the file. Most products are probably already at zero, but anything with stock that is missing from the file will be zeroed. Kits and bundles, whose stock comes from their components, are left alone.

⚠️ Warning: Use the authoritative snapshot only with a file that lists everything stocked at that location. Other locations are never touched. ILLUMA refuses the run if fewer than half the rows match a product (usually a wrong Match mode or column mapping), before it changes anything. The zeroing is recorded in your stock history like any other change, but there is no one-click undo. The Import Progress page shows how many products were Zeroed (not in the file).

Bins

A bin code is matched within the chosen location, ignoring upper and lower case. If the code does not exist at that location, the import creates it as a Pick bin. The same bin code can exist at several locations; each is a separate slot with its own counts. Importing into one location never moves stock in another.

Next

← PreviousVariants