> ## 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.

# Import your data

> Bring your existing products, prices, and customers into Qwoty using CSV files.

If you already have a product catalog, price list, or customer base in another tool, importing into Qwoty is faster than re-entering everything by hand. Qwoty's CSV import wizard handles the three core objects you need to start quoting.

**Time:** \~30 minutes for a typical migration (small catalog, few hundred customers)

<Note>
  You must have the **Admin** role with **Import CSV** authorized on your Apps permissions. See [Manage roles](/user-guide/settings/users/manage-roles).
</Note>

## What to import — and in what order

Qwoty enforces a strict import order because objects reference each other. Run them sequentially:

<Steps>
  <Step title="Master products">
    Master products are the **parents** that group variants. Even single-variant products go through this object first. Import them via **Settings → Data → Import/Export Data → Master products**.

    See the [full guide](/user-guide/data-migration/how-tos/import-master-products).
  </Step>

  <Step title="Products (variants)">
    Once masters exist, import the variants that reference them — sizes, colors, configurations, or just the single variant of a simple product.

    See the [full guide](/user-guide/data-migration/how-tos/import-products).
  </Step>

  <Step title="Prices">
    With your products in place, attach prices to one or more pricebooks. Qwoty supports flat, tiered, recurring, percent, cost-based, and placeholder pricing.

    See the [full guide](/user-guide/data-migration/how-tos/import-prices).
  </Step>

  <Step title="Customers (separate flow)">
    Customers don't depend on the catalog and can be imported any time, before or after products. Use the **Customers** import on the customers page.

    See the [Import customers guide](/user-guide/customers/how-tos/import-csv).
  </Step>
</Steps>

<Warning>
  **Don't skip the order for the catalog.** Importing prices before products fails because there's nothing to attach the prices to. Importing variants before masters fails because there's no parent. Always run Master products → Products → Prices.
</Warning>

## Before you start

A 10-minute checklist that prevents 90% of import errors:

* [ ] Export your data from your existing tool as CSV
* [ ] Make sure your file uses **UTF-8** encoding (avoid Excel's default regional encoding)
* [ ] Use **comma `,`** as the field separator
* [ ] Create **Catalogs**, **Categories**, and **Pricebooks** in Qwoty first (through the UI) — your CSVs reference them by API name
* [ ] Add any **custom fields** you need under **Settings → Data → Data model** before importing — uploading a CSV creates records but doesn't create fields

For a complete preparation guide, including field formats, validation rules, and the final checklist, read [Prepare your CSV files](/user-guide/data-migration/how-tos/prepare-csv-files).

## The import wizard

Every import follows the same 4-step flow:

1. **Upload** — drop your CSV. Download the template if you don't have one.
2. **Mapping** — match your headers to Qwoty fields. Auto-mapped when names match.
3. **Confirm** — review the count of rows that will import vs rows with errors.
4. **Result** — see what succeeded. Download unimported rows as a CSV if any failed.

Errors don't block valid rows. Fix the failed rows in your source file and re-upload.

## Tips for a clean migration

**Test with a small batch first.** Import 5–10 rows from a sample before uploading thousands. Fix any systematic issue once, then run the full batch.

**Keep your source file as the source of truth.** Save a copy before each import. If something goes wrong, you can compare against the unimported rows that Qwoty returns.

**Use API names, not display names.** When linking products to catalogs or prices to pricebooks, the API name is the stable identifier — the display name might change, the API name shouldn't.

**Migrating from a CRM?** If you connect a CRM later (HubSpot, Salesforce, Pipedrive), customer records can sync automatically. You can choose to import customers via CSV now and let the CRM take over later via [CRM mapping](/user-guide/data-model/reference/crm-mapping).

## What's next

Once your data is in Qwoty, you have everything you need to send your first quote.

<CardGroup cols={2}>
  <Card title="Send your first quote" icon="file-invoice-dollar" href="/getting-started/setup/first-quote">
    Use your imported products and customers to create and publish a quote.
  </Card>

  <Card title="Set up integrations" icon="puzzle-piece" href="/getting-started/setup/integrations">
    Connect Qwoty to your CRM, billing, and messaging tools.
  </Card>

  <Card title="Full data migration guide" icon="database" href="/user-guide/data-migration/introduction">
    All imports, every option, error handling, and reference docs.
  </Card>

  <Card title="Customize your data model" icon="diagram-project" href="/user-guide/data-model/introduction">
    Add custom fields to capture business-specific data.
  </Card>
</CardGroup>
