Overview
A Product with configuration is a menu product the customer can customise before adding it to the Basket — for example, a burger where the customer can add extra protein and condiments, remove unwanted condiments, and change the bread. Configuration spans three phases: the product, its add, change, and remove containers, and the condiment products are built in Oracle Simphony EMC; the menu is imported and the product building block is verified in Rule Manager; and the product is published with an Enable Product rule in Rule Manager.
- Prerequisites
- Steps
- Additional Options
- Expected Outcome
- Verify the Configuration
- Known Limitations
- Troubleshooting
- Related Articles
Prerequisites
Before configuring a Product with configuration, confirm the following are in place.
- Oracle Simphony EMC access — the operator needs access to the property's Oracle Simphony EMC to create and edit menu items.
- Navigator access — the operator needs access to the relevant Navigator app; see Managing access to Navigator applications. Both Orchestrator and Rule Manager are used in this guide.
- A working STSG2 menu import — the STSG2 menu import must be configured in Orchestrator so EMC changes can be imported into Future Ordering; see Orchestrator navigator app.
- Base EMC configuration completed — the enterprise and property level EMC configuration for the Future Ordering platform must already be done; see 2. Configure EMC Enterprise level for the Future Ordering platform.
- Product type reference — the Product with configuration datafield set is defined in the parent article Configure product types for STSG2.
Steps
The steps below use these terms. For full definitions, constraints, and the exact datafield values, follow the linked articles.
- Container — a building block marked with FO_IsContainer that groups selectable items. This product uses an add container, a change container, and a remove container. See Configure product types for STSG2.
- Condiment product — a menu item, on a condiment Menu Item Class, that is offered inside a container. A condiment that can be both added and removed needs two separate products: a priced Add condiment and a zero-cost Remove condiment. See Configure product types for STSG2.
-
FO_LinkedToDefinition — the EMC datafield that links the product to its containers and each container to its condiment products. Its values are EMC Product Sequence numbers, separated by commas; to target a specific definition record, use the format
Sequence number:Definition Record nr. See Data extensions in Oracle Simphony EMC for Future Ordering. -
FO_SelectedItem — the EMC Product Sequence number of the default selected item in a container (same
Sequence number:Definition Record nrformat is supported). See Data extensions in Oracle Simphony EMC for Future Ordering. -
FO_SelectionOptions — set on a container only; controls how many items can be selected (for example
{"max":1,"min":1}or{"min":0}). Condiment products do not use it. See Data extensions in Oracle Simphony EMC for Future Ordering. - Enable Product rule — the Rule Manager rule type that publishes a product so it is sold online. See Rule Manager.
Phase 1 — Build the building blocks in Oracle Simphony EMC
This phase creates the configurable product, its containers, and the condiment products in Oracle Simphony EMC. Use the Product with configuration values in the product type reference; substitute your own product details.
The Sequence number (#), Menu Item Class, Main Level, and Sub Level of each menu item follow the customer's existing EMC POS menu setup and are not specific to Future Ordering; set them according to the POS menu configuration. Important: the main product must use a Menu Item Class configured as a Product, not a Condiment, and each condiment product must use a Menu Item Class that is configured as a condiment.
- In Oracle Simphony EMC, create the main product menu item, and set the following datafields:
-
Consumer Item Name — the product's display name (example:
BBQ Burger). - Consumer Item Description — the product's description.
-
FO_UniqueIdentifiers — the product's Future Ordering identifier (example:
3100 - BBQ Burger). -
Price record - Price — the product price (example:
15.00), with Price record - Active On Level set to0 - All level. - Images — attach the product image.
-
Consumer Item Name — the product's display name (example:
- Create the Add condiment products — one for each add-on the customer can add. For each, set the following datafields:
- Menu Item Class — a class configured as a condiment.
-
Consumer Item Name — the add-on's name (example:
Extra cheddar cheese). -
FO_UniqueIdentifiers — the add-on's Future Ordering identifier (example:
3002 - Extra cheddar cheese). -
Price record - Price — the add-on cost (example:
0.50), with Price record - Active On Level set to0 - All level. - Images — attach the condiment product image.
- FO_SelectionOptions — not used on a condiment product.
- Create the Remove condiment products — one for each default ingredient the customer can remove. A remove option is a separate EMC product from its add option. For each, set the following datafields:
- Menu Item Class — a class configured as a condiment.
-
Consumer Item Name — the removal's name (example:
Remove cheese). -
FO_UniqueIdentifiers — the removal's Future Ordering identifier (example:
3025 - Remove cheese). -
Price record - Price —
0.00, with Price record - Active On Level set to0 - All level.
- Create the Add container, and set the following datafields:
- FO_IsContainer — checked.
-
Consumer Item Name —
Add. -
FO_UniqueIdentifiers — the container's Future Ordering identifier (example:
11001 - Burger add container). - FO_LinkedToDefinition — the Sequence numbers of the Add condiment products.
-
FO_SelectionOptions —
{"min":0}so additions are optional. - Price record — not required on a container.
- Create the Change container, and set the following datafields:
- FO_IsContainer — checked.
-
Consumer Item Name —
Change. -
FO_UniqueIdentifiers — the container's Future Ordering identifier (example:
12001 - Burger change container). -
FO_LinkedToDefinition — the Sequence numbers of the change options (example: bread types
3011,3012,3013). -
FO_SelectedItem — the Sequence number of the default option (example:
3011, the default bread). -
FO_SelectionOptions —
{"max":1,"min":1}.
- Create the Remove container, and set the following datafields:
- FO_IsContainer — checked.
-
Consumer Item Name —
Remove. -
FO_UniqueIdentifiers — the container's Future Ordering identifier (example:
13001 - Remove container). - FO_LinkedToDefinition — the Sequence numbers of the Remove condiment products.
-
FO_SelectionOptions —
{"min":0}. - Tags — fo:web:display:negateselection and fo:web:receipt:hidden, so the options act as removals; see Tag combinations.
- On the main product, set FO_LinkedToDefinition to the Sequence numbers of the Add, Change, and Remove containers, then save the menu items.
Phase 2 — Import the menu and verify the building block
This phase imports the EMC menu items into Future Ordering and confirms the product building block exists before it is published.
- In Orchestrator, run the STSG2 menu import (or wait for the scheduled import to complete); see Orchestrator navigator app.
- Confirm the import Run finished successfully before continuing.
- In Rule Manager, click Add Rule +, choose Enable Product in Select Rule Type, and click Continue to open a rule where you can search products.
- In the Products field, search for the main product by name or its FO_UniqueIdentifiers value and confirm it appears in the results — this confirms the building block was imported.
Phase 3 — Publish the product with an Enable Product rule
This phase publishes the imported product so it is sold online, by creating a new Enable Product rule or adding the product to an existing one.
To create a new Enable Product rule:
- In Rule Manager, click Add Rule +, choose Enable Product in Select Rule Type, and click Continue.
- Enter a Name for the rule and set the Index so it reads in the correct order relative to other rules.
- Set Publish start/stop for the period the product should be available.
- Set Order classes to the order classes the product should be sold on.
- Set Stores to the stores the product applies to, using Specific rather than All where possible.
- In the Products field, select every building block created for this product — the main product, the Add, Change, and Remove containers, and all Add and Remove condiment products. All imported menu blocks must be enabled as Products for the configurator to build correctly.
- Save the rule.
To add the product to an existing Enable Product rule instead, open that rule, add these building blocks in its Products field, and save.
Additional Options
These are optional and not required for the Product with configuration to be sold:
- Quick add from the category view — add the tag fo:web:display:quickadd to the main product in EMC so the customer can add it directly from the category view without opening the configurator. See Tag combinations.
- Allow multiple of the same add-on (Incrementer) — add the fo:web:display:incrementer tag to a priced Add condiment product so the customer can add several portions of it, for example ten extra bacon. Use this only on condiments that add a cost. See Tag combinations.
- Different prices per order type — add multiple Price record entries to the main product, each on a specific menu level (Price record - Active On Level), to charge different prices for different order types such as Eat In, Take away, and Delivery. Separate price records can also apply different VAT. To apply a different tax class to a whole order type rather than to a single product, request that configuration from Future Ordering; see 2. Configure EMC Enterprise level for the Future Ordering platform.
- Schedule availability — restrict the product to certain times or days using Schedule start/stop and Schedule days on the Enable Product rule. See Rule Manager.
- Cross-sell the product — promote the product in a cross-sell step with an Upsell Product rule. An upsell rule does not publish the product, so the Enable Product rule is still required. See Rule Manager.
Expected Outcome
The Product with configuration is published and appears in the Frontend menu with its add, change, and remove options for the stores, order classes, and period the Enable Product rule covers. The customer can customise the product and add it to the Basket, with the price reflecting any priced additions.
Verify the Configuration
Confirm the Product with configuration is live and works as configured.
- Open the Frontend for a store and order class the Enable Product rule covers.
- Browse to the category that contains the product, open it, and confirm the add, change, and remove options all appear.
- Add a priced extra, change the default option, and remove a default condiment, then confirm the price and the basket line reflect the changes when the product is added to the Basket. [SCREENSHOT: the configurator in the Frontend showing the add, change, and remove options with a customised product added to the Basket]
If an option does not appear or behaves incorrectly, see the Troubleshooting section below.
Known Limitations
- The add, change, and remove behaviours depend on each container's FO_SelectionOptions and tags. A remove container relies on the fo:web:display:negateselection tag to present its items as removals rather than additions.
- An add-on and its removal are two separate EMC products: a priced Add condiment and a zero-cost Remove condiment. There is no single product that does both.
Note: This list reflects the limitations identified as of 24 June 2026. Additional limitations may exist that have not yet been identified.
Troubleshooting
Common issues and how to resolve them:
- The product does not appear online — confirm an Enable Product rule selects the main product and all its building blocks, and that the product's category and store are published with Enable Category and Enable Store rules. A product is only visible where all three apply.
- The product is hidden even though it is enabled — a Disable Product rule with a higher Index overrides the Enable Product rule. Check for a conflicting Disable Product rule and adjust its Index or remove it.
- A configurator option is missing — confirm each container's FO_LinkedToDefinition lists its condiment products and that FO_SelectionOptions is set, and that every container and condiment product is selected as a Product in an Enable Product rule.
- Removals appear as additions — confirm the Remove container has the fo:web:display:negateselection tag.
- Import failures — see Known Menu import issues and solutions and Existing menu issues.
Related Articles
- Configure product types for STSG2 — parent reference for all product types and their EMC datafields.
- Rule Manager — the app where products are published with Enable Product rules.
- Orchestrator navigator app — the app that imports the menu from STSG2.
- Data extensions in Oracle Simphony EMC for Future Ordering — reference for the FO_ EMC datafields used to build containers and condiments.
- Tag combinations — reference for the EMC tags used on configurable products, including negateselection and incrementer.
- How to configure a Single product type for STSG2 — sibling product type guide.
- How to configure a Product with size for STSG2 — sibling product type guide.
- How to configure a Product with size and configuration for STSG2 — sibling product type guide.