primary_image_id doesn’t match any image in your media library. Upload your images first, export the media list to get their UUIDs, then update your CSV.You must have the Admin role with Data → Import CSV authorized.
Open the import
1
Open Settings
In the left sidebar, click Settings.
2
Navigate to Import/Export Data
Under the Data section, click Import/Export.
3
Select Products
Tick the Products card at the top of the page.
4
Click Download example file
Get the sample CSV with the right columns.
5
Click Import
Drop your file. The 4-step wizard runs: Upload → Mapping → Confirm → Result.
CSV columns reference
The Products template uses the same columns as Master products. The difference is what you populate — for products and variants, the rows reference an existing master throughparent_product_api_name or are standalone single-variant items.
Variants attached to a master inherit the master’s
settings[recurrence_type], settings[product_type], and shipping defaults. You can still set them on the variant row to override — but they must be consistent or Qwoty rejects the row.Common scenarios
Create simple, single-variant products
For a list of one-off products with no variants:Create variants attached to existing master products
You’ve already imported aPremium T-Shirt master with product_api_name = premium_tshirt. Now add three variants:
The way variants attach to master products depends on your workspace configuration (typically through
parent_product_api_name or product_parent_id). Check the example file downloaded from the import screen — it includes the relation columns specific to your workspace.Update existing products
Export your current products to retrieve their UUIDs, then re-import with the changes:Bulk update SKUs across catalogs
Useful when migrating from another system:Troubleshooting
My import failed because of an invalid recurrence_type
My import failed because of an invalid recurrence_type
The only accepted values for
settings[recurrence_type] are one_off and recurring (lowercase, with underscore). Common mistakes: monthly, yearly, subscription, one-off (with dash).The catalog_api_names column references a catalog that wasn't found
The catalog_api_names column references a catalog that wasn't found
Qwoty matches catalog API names exactly (case-sensitive). Check the catalog API names in Catalog & Products → Catalogs. For multiple catalogs, use commas inside the cell with no spaces, and wrap the value in double quotes:
"france,partner_pricing".primary_image_id rows fail with 'Unknown reference'
primary_image_id rows fail with 'Unknown reference'
The UUID in
A product was created but doesn't appear in the catalog
A product was created but doesn't appear in the catalog
Check that
catalog_api_names is populated. If empty, the product is attached only to the workspace’s default catalog (which may be hidden from your sales reps).My update by product_id replaced fields I didn't include
My update by product_id replaced fields I didn't include
Updates only modify the columns present in the CSV. If a field looks empty after import, check that you didn’t leave the column header in the file with all-empty values — that overwrites the field.
My boolean field returned an error
My boolean field returned an error
Use lowercase
true or false. Uppercase TRUE or FALSE, or 1 / 0, are rejected.Next steps
Import prices
Now that products exist, attach prices to them.
Import master products
If you skipped this step, import master products first.
Prepare your CSV
Universal formatting rules.
Catalogs
Manage where products live.

