Import and export

Importing a catalog

A CSV import brings products, variants, options and stock in from a file — most usefully, straight out of Shopify.

Column mapping

Shopify's own export headers are recognised automatically: Handle, Title, Body (HTML), Variant SKU, Variant Price, Variant Inventory Qty, Cost per item and the rest. If your file uses different headers, map them yourself; the mapping is shown before anything is imported.

Missing required columns are named before you start, not discovered halfway through.

How rows become products

Rows sharing a handle are one product. This is Shopify's shape: the first row carries the title and description, and the following rows add variants with only their own columns filled in. Rows are grouped across the whole file, so a file where a product's rows are not adjacent still imports correctly.

Placeholder option values — Shopify writes Title / Default Title for products with no real options — are recognised and not turned into an option called "Title".

The dry run

Nothing is written until you have seen the diff. The dry run reports what will be created, what will be updated, what will be skipped, and every row that has a problem, with the row number.

The counts it predicts are the counts you get. Duplicate SKUs within the file are found here rather than at the point of failure.

Running it

Large imports run in chunks, and each chunk records what it finished. If an import is interrupted — a browser closed, a deploy, a timeout — resuming picks up from the last completed product, with no duplicates and no half-written products. A product is written completely or not at all.

Progress is visible while it runs.

Exporting

Five things can be exported: products, orders, customers, inventory, and discounts.

Exports are UTF-8 CSV with a byte-order mark, so they open correctly in Excel without mangling accented characters. Fields containing commas, quotes or newlines are quoted properly.

Products export in the same shape they import, options and all, so an export can be edited and imported back.

Large exports are prepared in the background. You get a link when the file is ready, and the link expires — an export of your customer list should not sit at a guessable URL indefinitely.

Where to find it

Reports & settings → Import & export. The redirects an import can create for your old product links are listed under Reports & settings → Redirects.