Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.qwoty.io/llms.txt

Use this file to discover all available pages before exploring further.

The Products import creates the actual sellable items: simple products with no variants, or variants attached to a master product. Import master products first if your products reference them.
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 through parent_product_api_name or are standalone single-variant items.
ColumnRequiredTypeDescription
product_idUUIDLeave empty to create a new product. Set to an existing UUID to update.
product_name*TextProduct or variant display name (for example, Premium T-Shirt - Blue / M).
product_api_nameTextStable API identifier for this specific product or variant.
referenceTextInternal reference shown to sales reps.
product_descriptionTextLong-form description shown on quotes and in the Dealroom.
primary_image_idUUIDUUID of an image already uploaded to the Qwoty media library.
settings[recurrence_type]*Enumone_off or recurring. Must match the master’s recurrence type if attached to a master.
settings[is_active]Booleantrue (default) or false.
settings[product_type]Enumphysical, service, or subscription.
settings[unit_of_measure]TextDisplay unit (for example, unit, kg, hour).
settings[language_code]TextTwo-letter language code (en, fr, de).
settings[unit_per_pack]NumberNumber of units per pack, when sold in packs.
catalog_api_namesTextComma-separated catalog API names. Empty value attaches the workspace default catalog.
category_api_namesTextComma-separated category API names.
inventory[sku]TextSKU for this product or variant.
identifiers[erp]TextExternal ERP identifier.
identifiers[crm]TextExternal CRM identifier.
identifiers[accounting]TextExternal accounting identifier.
accounting[ledger_account]TextLedger account code for accounting reports.
shipping[weight]NumberNet weight.
shipping[weight_unit]Enumkg, g, lb, oz.
shipping[height]NumberHeight in shipping[length_unit].
shipping[length]NumberLength in shipping[length_unit].
shipping[width]NumberWidth in shipping[length_unit].
shipping[length_unit]Enumcm, mm, m, in.
shipping[country_of_origin]TextISO 2-letter country code (FR, DE, CN).
shipping[harmonized_system_code]TextHarmonized System (HS) code for international shipping.
When catalog_api_names or category_api_names contain multiple values, the cell must be wrapped in double quotes and use commas as the internal separator: "france,partner_pricing". Without the quotes, the comma inside the cell breaks the CSV row.
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:
product_id,product_name,product_api_name,settings[recurrence_type],settings[product_type],catalog_api_names,inventory[sku]
,Wireless Mouse,wireless_mouse,one_off,physical,france,SKU-001
,USB-C Cable,usb_c_cable,one_off,physical,france,SKU-002
,Laptop Stand,laptop_stand,one_off,physical,france,SKU-003

Create variants attached to existing master products

You’ve already imported a Premium T-Shirt master with product_api_name = premium_tshirt. Now add three variants:
product_id,product_name,settings[recurrence_type],inventory[sku],identifiers[erp]
,Premium T-Shirt - Blue / S,one_off,SKU-PT-BS,ERP-PT-BS
,Premium T-Shirt - Blue / M,one_off,SKU-PT-BM,ERP-PT-BM
,Premium T-Shirt - Blue / L,one_off,SKU-PT-BL,ERP-PT-BL
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:
product_id,product_name,inventory[sku]
6ddb0e85-1d1e-4c11-b45d-c9c7ff7c62e8,Wireless Mouse Pro,SKU-001-PRO
9b7ccfa9-1234-5678-aabb-c0ffee123456,USB-C Cable v2,SKU-002-V2
Only the columns you include get updated. Other fields stay untouched.

Bulk update SKUs across catalogs

Useful when migrating from another system:
product_id,inventory[sku],identifiers[erp]
6ddb0e85-1d1e-4c11-b45d-c9c7ff7c62e8,NEW-SKU-001,ERP-NEW-001
9b7ccfa9-1234-5678-aabb-c0ffee123456,NEW-SKU-002,ERP-NEW-002

Troubleshooting

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).
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".
The UUID in 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.
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).
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.
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.