Skip to main content

Product Variations

Admin Manager

Variations let you sell the same product in multiple sizes, weights, or configurations — each with its own SKU, price, and stock level. For example, a cannabis flower product might come in 1g, 3.5g, 7g, and 14g options.


When to Use Variations

Use variations when:

  • The same product is sold in different sizes (e.g., 1g, 3.5g, 7g, 14g, 28g).
  • The same product comes in different package types (e.g., pre-roll single, pre-roll 3-pack).
  • You want a single product listing on the POS with selectable options rather than separate products.

Do not use variations when:

  • Products are fundamentally different items (e.g., different strains). Create separate products instead.
  • You only sell one size of the product. A product with no variations is perfectly fine.

Creating Variations

Product Create Form

From the Product Detail Page

  1. Navigate to Products and click on the product you want to add variations to.
  2. Scroll to the Variations section.
  3. Click Add Variation.

Variation Fields

Each variation has the following fields:

FieldRequiredDescription
Name / LabelYesA short label for this variation (e.g., "3.5g", "7g", "Pre-Roll 3-Pack").
SKUYesA unique SKU for this specific variation. Must be different from the parent product and all other variations.
PriceYesThe pre-tax selling price for this variation.
CostNoYour wholesale cost for this variation.
StockNoCurrent stock quantity for this variation (defaults to 0).
WeightNoThe weight value, if applicable.

Step-by-Step

  1. Click Add Variation.
  2. Enter the Name (e.g., "3.5g").
  3. Enter a unique SKU (e.g., "BD-35-001").
  4. Set the Price (e.g., 29.99).
  5. Optionally enter the Cost (e.g., 18.50).
  6. Set the Stock level if you have inventory on hand.
  7. Click Save.
  8. Repeat for each additional variation.
SKU naming convention

Adopt a consistent SKU pattern for variations. For example:

  • Parent: BD-001
  • 1g variation: BD-001-1G
  • 3.5g variation: BD-001-35G
  • 7g variation: BD-001-7G

This makes scanning and CSV management much easier.


How Variations Appear on the POS

When a cashier selects a product that has variations:

  1. The product tile opens a variation selector.
  2. Each variation is shown with its name and price.
  3. The cashier taps the desired variation to add it to the cart.
  4. The cart shows the product name with the variation label (e.g., "Blue Dream — 3.5g").

If a product has only one variation, the system may add it directly without showing the selector, depending on your store settings.


Managing Existing Variations

Editing a Variation

  1. Open the product detail page.
  2. In the Variations section, click the Edit icon next to the variation.
  3. Update the fields you need to change.
  4. Click Save.

Variation Display Order

Variations appear on the POS in the order they were created. There is no drag-and-drop reordering interface.

Managing Variation Status

Variations are managed through the parent product's edit page. There is no separate status toggle per variation. To remove a variation from sale, delete it or edit the parent product.

Deleting a Variation

  1. Open the product detail page.
  2. Click the Delete icon on the variation.
  3. Confirm the deletion.
Deleting variations

Deleting a variation is a soft-delete — it sets a deleted_at timestamp and hides the variation from all views, but preserves the data for sales history and reporting.


Stock Tracking for Variations

Each variation maintains its own independent stock count. This means:

  • The total_stock method calculates the sum of all variation stocks dynamically. The parent product's current_stock field is separate and not automatically updated.
  • Stock adjustments must be made on individual variations, not on the parent product.
  • Low stock alerts apply per variation if thresholds are configured.
  • Purchase orders and stock transfers reference specific variation SKUs.

Stock for individual variations can be adjusted through the stock adjustment workflow or by editing the variation directly on the product detail page.

See Stock Adjustments for more on adjustment workflows.


Variations and CSV Import/Export

When importing or exporting products via CSV:

  • Each variation is its own row in the CSV file.
  • The parent product name groups them together.
  • The variation_name column distinguishes each variation.

See CSV Import and CSV Export for the exact column format.


Best Practices

  1. Be consistent with labels. Use the same format across all products (e.g., always "3.5g" not sometimes "3.5 grams" and sometimes "3.5g").
  2. Set up all variations before activating. Create the product as inactive, add all variations, then set it to active.
  3. Keep variation counts manageable. Five to eight variations per product is typical. More than ten can slow down the POS selection screen.
  4. Always assign unique SKUs. Duplicate SKUs will cause barcode scanning conflicts.

What's Next?