Skip to content

Bulk Product Import

Importing Products via CSV

Cartly supports bulk product import through CSV files, powered by Temporal workflows for reliable processing of large files.

CSV Format

Your CSV file should include a header row with column names. Supported columns include:

  • title — Product title (required)
  • description — Product description (HTML supported)
  • product_type — Product type label
  • vendor — Brand or manufacturer
  • tags — Comma-separated tags
  • price — Price in decimal format (e.g., 29.99)
  • compare_at_price — Original price for sale items
  • sku — Stock keeping unit
  • barcode — UPC, EAN, or ISBN
  • inventory_quantity — Initial stock level
  • weight — Product weight
  • option1_name, option1_value — First option name and value
  • option2_name, option2_value — Second option name and value
  • option3_name, option3_value — Third option name and value
  • image_url — URL of the product image to download
  • status — active, draft, or archived

Uploading Your CSV

Navigate to Products → Import and upload your CSV file. Cartly validates the file format and shows a preview of the first few rows. Review the column mapping to ensure each CSV column maps to the correct product field.

Import Processing

When you start the import, Cartly creates a Temporal workflow that processes the CSV file in batches. This approach has several advantages:

  • Reliability — If the server restarts during import, processing resumes automatically from where it left off
  • Progress tracking — You can see real-time progress: how many rows have been processed, succeeded, and failed
  • Error handling — Failed rows are logged with specific error messages. You can download a CSV of failed rows, fix the issues, and re-import just those rows

Import Profiles

Save your column mapping as an import profile for reuse. This is especially useful if you regularly import from the same supplier whose CSV format does not change. Select a saved profile before uploading to skip the mapping step.

Large File Handling

Cartly handles CSV files with tens of thousands of rows. Files are processed in configurable batch sizes (default: 100 rows per batch) to balance speed and memory usage. A 10,000-row file typically completes in under two minutes.

Variant Handling in CSV

For products with variants, include one row per variant. Rows with the same title are grouped into a single product. The first row for each title defines the base product fields; subsequent rows with the same title add variants with their specific option values, prices, and SKUs.

Was this helpful?