fiveanddime Product Tutorials About Open the app
Tutorial · Inventory & reports

Importing existing products

If you already have a product catalog somewhere else (a different POS, an Excel sheet, a Google Doc), you don't have to retype it. The Import wizard in Settings takes a CSV, lets you map columns, previews the result, and commits in one tap.

Time: ~10 minutes for a 50-product import Difficulty: Easy if your data is tidy Prereq: Catalog tutorial reviewed (column meanings)

When to use the importer

For one or two products at a time, the in-app Edit product form is faster. The importer shines when you have a list of 10 or more.

Preparing your CSV

The wizard accepts any CSV with a header row. Common column names get auto-detected (SKU, Name, Price, Category, etc.). If your column names are different ("Item Number" instead of "SKU," for example), no problem; you'll map them in Step 2.

Required columns in the source:

Everything else is optional. Common columns you'd usually have: Category, Price, Cost, QuantityOnHand. Less common but supported: Variant, ParentSKU, FavRank, BringToShow, Active, ReorderPoint, Custom, ImageUrl.

If you don't have a CSV, make one in Sheets

Paste your data into a fresh Google Sheet, make sure the first row is your column headers, then File → Download → Comma Separated Values (.csv). That's your CSV. Or you can skip the file step entirely and just paste from Sheets directly into the importer's text box.

The 3-step wizard

1

Paste or upload

In the app, go to Settings, expand Import products.

Two ways to get your data in:

Tap Parse →. The wizard reads the header row and the rows below, tells you how many it found, and moves you to Step 2.

Settings Import products with Step 1 paste or upload visible
Step 1: paste rows from your old spreadsheet, or upload a CSV/TSV file.
2

Map your columns to ours

The wizard shows a row for each of your source columns alongside a dropdown of fiveanddime fields. It pre-fills the dropdowns based on header names ("Item Number" auto-maps to SKU, "Stock" to QuantityOnHand, etc.), and shows a sample value from the first row of your data so you can sanity-check.

Adjust as needed. For any column you don't want to import, leave the dropdown set to Ignore. SKU and Name are required; the wizard won't let you proceed until both are mapped.

Tap Preview →.

Mapping table showing source columns alongside fiveanddime field dropdowns
Step 2: map each of your source columns to a fiveanddime field. SKU and Name are required.
3

Preview and commit

The wizard renders a table of what will land in Products_Master after the import. Scroll through and verify the columns look right, prices parsed correctly (a stray "$" or comma in a price column will show as a parse error), categories make sense.

Two checkboxes control the commit behavior:

Tap Commit import. The wizard sends the data to your backend, which writes it to Products_Master. You'll see a confirmation summary: how many added, how many updated, how many skipped, any errors.

Preview table with rows visible, the two checkboxes, and the Commit button
Step 3: preview what will land in Products_Master, choose update-vs-skip behavior, then Commit.

Pull from backend to see results

Once the commit confirms, tap Pull from Backend Now in Settings to refresh the app's local copy. Your new products show up in the Sale view items grid under their categories. You can also open your spreadsheet's Products_Master tab to verify the rows landed correctly.

Common gotchas

Prices with currency symbols

If your source has prices like "$12.00" or "12,00", the parse may fail on those rows. The simplest fix: in your source spreadsheet, format the price column as plain numbers (12, 12.50) before exporting. Or open the CSV in a text editor and find-and-replace "$" and "," from price fields.

Boolean columns expect TRUE/FALSE

For BringToShow, Active, and Custom, the importer expects literal TRUE or FALSE (also accepts 1/0, yes/no). "Y," "✓," or "checked" won't parse reliably. Fix in your source if needed.

SKU collisions

If two rows in your CSV have the same SKU, only the last one wins (the importer writes each row in order). De-duplicate before importing.

Categories must use Codes, not display names

The Category column in Products_Master stores the short code (e.g., CST for Coasters), not the display name. If your source has "Coasters" in the Category column, the import will either create a new Category row with Code "Coasters" (which works but is ugly) or fail. Best practice: in your source, replace category text with the codes you've defined in your Categories sheet before importing.

Tips

Checkpoint Your catalog is loaded from CSV. New products show up in the Sale view; Products_Master has the rows; categories you didn't already have are created (with blank DisplayNames to fill in).

What's next