Skip to content

Import Data

BridalOp's Import tool lets you bring in data from CSV files — customers, vendors, products & inventory, staff, discounts, and gift cards. This is the fastest way to migrate from another system or load bulk data without entering it manually.

Navigate to Settings → Import to get started.

Import Data hub

Import Types

The Import hub shows six tiles, one for each data type you can import:

TypeWhat It Imports
CustomersCustomer records with contact info, wedding dates, event types, tags, and marketing opt-in
VendorsVendor and supplier contact list
Products & InventoryProducts and physical inventory items — each row is one item, not one product
StaffStaff members with roles — optionally sends invite emails
DiscountsDiscount codes and rules
Gift CardsExisting gift cards with balances from another system

Each tile shows the result of the last import (e.g., "3 imported · 13m ago" or "Failed · 4m ago") so you can see at a glance what's been done.

The Import Flow

Every import type follows the same four-step process:

Step 1 — Upload Your CSV

Drag and drop a CSV file onto the upload area, or click browse to select one.

Upload CSV

Before uploading, click Download template CSV to get a pre-formatted file with the exact columns BridalOp expects, including example rows. You don't have to use the template — any CSV works as long as you map the columns in the next step.

Step 2 — Map Your Columns

BridalOp auto-matches your CSV column headers to its fields. Review each mapping and adjust any that look wrong using the dropdown. Fields marked with * are required.

Map columns

You don't need to rename anything in Excel — just map your existing column names to ours here.

Step 3 — Preview First Rows

See how the first few rows of your data look after mapping is applied. If something looks off, click Back to mapping to fix it.

Preview rows

Step 4 — Import Options

Choose how BridalOp should handle records that already exist in the system:

Import options

StrategyWhat It Does
Skip duplicates (recommended)If a matching record already exists, leave it alone and skip the row
Update existingMerge the CSV data into existing records — fields in the CSV overwrite what's already there
Always create (advanced)Insert every row as a new record, even if a match exists — may create duplicates

Click Start Import to begin. You can close the tab — the import runs in the background and you'll get a notification when it finishes.

Import Progress

If you stay on the page (or come back to it), you'll see a live progress view:

Import progress

The progress bar shows how many rows have been processed, with counters for Imported, Skipped, and Errors. The page auto-updates every 1.5 seconds.

Only one import per type can run at a time.

Error Reports

If any rows fail, BridalOp generates a downloadable error report CSV. The report includes all the original columns from your file plus:

ColumnDescription
_error_rowThe row number that failed
_error_fieldWhich field caused the error
_error_messageA plain-English explanation of what went wrong
_error_fixA suggested fix

Fix the errors in your CSV and re-import — use Skip duplicates so the rows that already succeeded are left alone.

Products & Inventory Import

The Products & Inventory importer works differently from the others. Each CSV row represents one physical inventory item, not one product. If you have three rows with the same SKU, BridalOp creates one product and three inventory items (each with its own size, color, barcode, etc.).

Key details:

  • Vendor, Location, and Category are resolved by name, not ID — type them exactly as they appear in BridalOp
  • If a vendor name is misspelled, BridalOp suggests the closest match in the error report
  • Barcodes auto-generate as BO-XXXXXX when left blank in the CSV
  • Location is required — either include it in every row or set a default for the import

Staff Import

The Staff importer has a few special rules:

  • Owner role cannot be imported — any row with role "owner" will be rejected with an error
  • Invite emails are sent by default — there's a toggle to skip sending invites if you just want to create the accounts first
  • Each imported staff member gets an invite token just like a manual invite from the Staff page