Skip to main content
Some POS flows ask follow-up questions only after a prior choice — pick a burger, then a patty, then a doneness. In Fire spark, modifiers are products. A modifier can list nested groups in modifier_group_ids, and its pricing.modifiers entry describes how it appears inside the group that lists it.

What this example includes

Request

All products and groups live in the same Upsert menus payload. Attach the next group on the modifier product the customer selects at the previous level.
multi-level-modifiers.json

Key points

  • Nest through modifier products. Each level is a real product with its own external id for kitchen tickets and order injection.
  • modifiers describes the option in a group. beef-patty carries a pricing.modifiers entry with modifier_group_id: "choose-patty".
  • modifier_group_ids opens the next question. cheeseburger lists choose-patty so patty choices appear after the customer picks cheeseburger.
  • Leaf modifiers have empty nested groups. medium-rare sets modifier_group_ids: [] because the chain ends there.
  • Branching paths. veggie-burger skips patty and doneness groups because it has no nested modifier_group_ids.

Products — modifier groups

How groups and modifiers relate

Simple menu

Single-level modifier example