Inventory & Products | Products | Auxiliaries

Auxiliary Products (Add-Ons)

Auxiliary products are paid add-ons offered under a main product — extra cheese on a pizza, a drink with a meal. They raise the average sale value and are offered as a one-tap list on the sales screen, without cluttering the normal catalog. This page explains the concept and the CMS setup; the API endpoints are documented separately (links at the bottom).

The model

Product "Bolognese Pizza"          (carrier)
        |____ Auxiliary items:
            |____ Large size        "+5.00"
            |____ Extra cheese      "+1.00"
            |____ Ground beef       "+1.00"
            |____ Salami            "+1.00"
            |____ Garlic sauce      "+0.80"
  • An auxiliary product is a normal product flagged Auxiliary (is_auxiliary = 1): it is excluded from the normal POS catalog/search and appears only under carriers that list it.
  • A carrier is any product with auxiliary assignments. On the sales screen, adding the carrier offers its auxiliary list as add-ons; picking one adds it as a real, priced sub-line under the product line.
  • Mutual exclusion: a product is EITHER an auxiliary OR a carrier — never both. Turning the Auxiliary flag on locks and clears the assignment list; having assignments forces the flag off.

Where it is set up (CMS product editor)

Everything lives in the product editor's Auxiliaries tab (Lisätuotteet):

  1. Flag a product as an auxiliary — switch the This product is an auxiliary product toggle ON on the add-on product itself (the extra cheese). It disappears from the normal catalog.
  2. Assign add-ons to a carrier — open the main product (the pizza), search add-ons in the Add auxiliary product field (it lists only products flagged as auxiliary), and add them one by one. Each row shows the add-on's price and barcode.
  3. Preview — the POS preview button shows the add-on offer list exactly as the sales screen renders it.

Auxiliary sub-lines are real stock lines: their quantities follow the parent product, and stock is deducted for each add-on sold.

API endpoints

Endpoint Purpose
get_product_auxiliaries Read a carrier's add-on assignments (with prices), or the tenant's auxiliary catalog
set_product_auxiliaries Set the auxiliary flag and/or replace a carrier's assignment list