Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Modifiers

Currently, in Wisk modifiers can only generate new combinations of POS Item permutations.

The objective is to define now modifiers will be implemented in WISK.

Example invoice coming from a POS with modifiers:

{
  "lines": [
    {
      "pos_item_id": "pos_item_1",
      "title": "Pizza Pepperoni",
      "quantity": 2,
      "price": 10,
      "modifiers": [
        {
          "modifier_id": "modifier_1",
          "title": "Extra cheese"
        }
      ]
    }
  ]
}

For this example Wisk will create:

  • a new POS Item with the title “Pizza Pepperoni + Extra cheese” having the plu_number “pos_item_1-modifier_1”

This makes it necessary for the client to map Pizza Pepperoni and Pizza Pepperoni + Extra cheese to the same ingredients.

Types of modifiers - Proposal

The Wisk POS modifier will have this structure:

First we’ll define if the modifier changes the size of the base ingredient:

  • doesn’t change the base ingredient size
  • changes the base ingredient size
    • ex: on the rocks, will put 2oz of alcohol instead of 1.5oz
  • multiplier
    • it will multiply the ingredients by a factor, ex: double will multiply the alcohol by 2

Questions:

  • what do we do when:
    • the POS Items has multiple ingredients
    • it contains multiple units of measurements (volume, weight, units)

Secondly we can add/remove ingredients:

  • we can add/remove ingredients, this will be a list of Wisk Items

Questions:

  • should we allow the removal of an ingredients without specifying the size (for example: remove cheese even if it’s 10,50,100g…)

The result of these two steps will define what the modifier is doing to the base ingredient.

Changes to be done in the WISK POS Item structure:

  • The WISK POS Item will have a type: either POS Item or POS Modifier
  • Any POS Item can be converted to a POS Modifier but only if it has no ingredients

UI Implementation

  • see what modifiers applied to what POS Items
  • per Modifiers see where it is being used