fiveanddime Product Tutorials About Open the app
Step 3 of 4

Parents and variants

For products that come in flavors (sizes, colors, months, scents), the catalog has a parent-and-variant pattern. The parent is the umbrella; the variants are what actually sells. If your catalog has no flavors, skip this step.

The pattern

Examples that fit:

The pattern: one row in Products_Master is the parent (the umbrella concept). Multiple rows are variants (what actually sells), each pointing back at the parent via ParentSKU. The parent itself isn't usually sold; tapping it in the POS opens a chooser modal showing the variants.

Setting up parents and variants

1

Create the parent row

Add a row in Products_Master with the parent's name. Fill in:

Products_Master with a parent row filled in
A parent row in Products_Master. ParentSKU and Variant are left blank; this row is just the umbrella for the variants below.
2

Create each variant row

For each variant, add a new row. Fill in:

Products_Master with the parent row and several variant rows beneath it
The parent row with its variants. Each variant row has ParentSKU pointing back at the parent's SKU, and the Variant column carries the label (Spring, Summer, Fall, Winter).
3

Pull from backend, see it work

In the app, Settings → Pull from Backend Now. The new products show up. The parent row has a small visual treatment (a purple ring around the button) signaling "tap me for variants." Tap it, and a chooser modal slides up showing each variant by name and price. Tap one to add it to the cart.

Settings page with the Pull from Backend Now button
In the app, Settings → "Pull from Backend Now" so the new parent and variant rows load into the device.
Tapping a parent product on the booth grid opens the variant chooser; pick a variant to drop it in the cart.

How variants show in the booth

The booth-side item buttons show the product's Name with the Variant label beneath (when set). So a row with Name = "Seasonal Door Sign" and Variant = "Spring" renders a button that reads "Seasonal Door Sign" on the first line and "Spring" beneath it in a smaller muted font, with the price below. Variants sharing the same Name stay distinguishable as long as you fill in the Variant column.

Two patterns work, depending on your catalog:

Parent launcher (good for many variants)

Result: one button per parent in the booth grid. Tap it to open the chooser modal, which lists each variant by its Variant label (Spring, Summer, Fall, Winter). Pick one to add to the cart. Clean booth UI, scales to any number of variants. Best for catalogs with 6+ variants per parent.

Variant grid (good for short variant lists)

Result: each variant is its own button, showing Name plus Variant. One tap to add. No chooser. Best when you have just a few variants and want speed over chooser-clicks.

You can also do both (parent and variants all BringToShow=TRUE) if you want the parent in Favorites and the variants in their category tab. Just make sure every variant row has its Variant column filled in.

Inventory and variants

Each variant tracks its own QuantityOnHand. The parent row's QuantityOnHand is ignored (parents aren't sold directly). When sales happen on a variant, that variant's count decrements; the parent stays at whatever it was.

Practical implication: stock reports count variants individually. You'll see "Seasonal Door Sign, Spring: 4 left" not "Seasonal Door Sign: 24 left."

Pricing variants differently

Most variants share the parent's price; you don't have to fill in Price on each variant if it matches. But you can override per-variant: a deluxe size, a holiday edition, a sale variant. Just put a different number in the variant's Price column.

When NOT to use parents and variants

If your "variants" are really separate products with no shared identity (Welcome Door Sign vs. Hello Door Sign, for instance, in the sample data, which are different signs that just both happen to be door signs), make them flat products. Parent-and-variant pays off when there's a shared concept (the same shirt in three sizes, the same door sign in four seasons), not when items are distinct things that happen to share a category.

Checkpoint For any product that comes in flavors, you have a parent row and one variant row per flavor. Each variant points back at the parent via ParentSKU. The chooser modal works in the app.