CSV data import
Use the fixed template to create products, variants, and tags in bulk. Review stock additions and same-name warnings before importing.
About 11 minScreenshots use the English app and browser tools with English demo data. Follow the numbered steps and use your own product details when you are ready. Click any screenshot to enlarge it.
Download the current template
CSV creates new products with variants, tags, and supported advanced fields. It is not a name/SKU update tool and has no manual column-mapping page. Download from the current app and preserve headers; other CSVs from an export ZIP are not automatically valid import templates.
Download the template
In Settings → Data management, scroll to Download template CSV and save it through the system sheet. It contains current headers and examples.
Download the template Make a working copy
Open it in a spreadsheet, save a copy, retain headers, remove unwanted example rows, and enter your products.
Preserve field types
Use numbers for prices/costs and integers for stock/limits. Save as UTF-8 CSV rather than merely renaming an extension.
Tips
- Codes are automatic; do not invent SKU columns. Use full backup for bundles, images, events, and orders.
Fill product and advanced fields
Each row is a specific product. Total and remaining stock are different; use actual prepared and available quantities. Limit 0 means unlimited. Sales restrictions and price visibility use template values. Cost and hidden-price features depend on the plan.
Fill basic columns
Enter name, price, total stock, remaining stock, optional description, and purchase limit (0 for unlimited).
Set sales restrictions
Use the template's allowed values for standalone allowed/bundle-only and show/hide price. Keep the example values from the English template downloaded from your app.
Enter cost information
When available, enter unit cost, supplier, cost date, and note, following the template date example. These import with the new product.
Enter categorized tags
Use the tag column for each category and semicolons as shown for multiple tags. They import into that category and bind to the row's product.
Tips
- Hidden prices still count at checkout. Do not enter a restock delta as total stock.
Create variants across rows
Each combination has its own row, price, and stock. Use an identical family name for related rows. The template supports dimensions 1–3 plus detail-name, size, and technique fields. Keep dimension names consistent with its examples.
Use one family name
Enter the same variant-family name, such as Stardust Charm, on related rows. Leave it blank for independent products.
Enter each combination
For example dimension 1 = Size / Small and dimension 2 = Finish / Standard. Change values for the next row and leave unused dimensions blank.
Check independent quantities
Enter each SKU's price, stock, limit, and tags. Do not repeat the entire family's stock in every row.
Remove duplicate combinations
Check for duplicate combinations and stray spaces in family names, then save the CSV. Add images after creation or use another entry workflow.
Preview and create products
The inventory preview shows new products, stock, variants, and same-name warnings before writing. Same-name items stay separate; stock is not combined. Remove already imported sample rows before importing a final file.
Select your CSV
Choose import products from template CSV and select the saved file. Fix format errors in the spreadsheet. Preview alone creates no products.
Select your CSV Inspect individual items
Open product/family cards to check price, total/remaining stock, variants, sales restrictions, and tags. Review duplicate names and stock additions.
Check plan limits and dependencies
Review any plan-related trimming and advanced-field access. Skipped items are not imported.
Confirm and verify
Confirm CSV import, read the success count, and inspect a standalone product and family in Products. The demo added 3 products; your preview determines your count. Add them to events separately.
Confirm and verify
Tips
- Import does not register products in existing events. Identify accidental new items individually; an old backup does not roll back imports.
