PreModifier

Information about a pre-modifier configured for this restaurant.

displayMode
string

A string that indicates how the pre-modifier is displayed on tickets and receipts:

  • PREFIX: The pre-modifier name is placed before the modifier option name, for example, "EXTRA Cheese".
  • SUFFIX: The pre-modifier name is placed after the modifier option name, for example, "Cheese EXTRA".
Enum: "PREFIX" "SUFFIX"
fixedPrice
number or null <double>

An optional fixed price for this pre-modifier. The fixed price is added to the cost of the modifier option that the pre-modifier is applied to.

A PreModifier object has two optional values, fixedPrice and multiplicationFactor, that both alter the price of a modifier option when the pre-modifier is applied to it. However, these values cannot be used at the same time. If you specify a fixedPrice value for a premodifier, then multiplicationFactor is null. If you specify a multiplicationFactor for a pre-modifier, then fixedPrice is null. If you choose not to assign either a fixed price or a multiplication factor to a pre-modifier, then the fixedPrice value is 0 and the multiplicationFactor is null.

guid
string

A unique identifier for this pre-modifier group, assigned by the Toast POS system.

multiLocationId
string (MultiLocationId)

An identifier that is used to identify and consolidate menu entities that are versions of each other.

multiLocationId replaces masterId. multiLocationId and masterId always have the same value.

Menu entities can be versioned. Those versions can be assigned to specific restaurant locations, or groups of locations, in a management group. For example, you could have two versions of a burger, one for a Boston location and another for a New York City location. Versioned menu entities share the majority of, but not all of, their data. For example, the Boston version is called the Minuteman Burger and has pickles, while the New York City version is called the Empire Burger and does not.

You use the multiLocationId to identify menu entities that are versions of each other. To continue the example above, the Minuteman Burger in the JSON returned for the Boston location has the same multilocationId as the Empire Burger in the JSON returned for the New York City location. These matching multlocationId values indicate that the two items are related versions of the same item. In Toast reports, this allows a restaurant to track sales of the burger across both locations.

The Toast POS system ensures that once a multilocationId value is assigned to a set of versions within a management group, that multiLocationId is not used for any other version sets in the same management group. It does not guarantee, however, that the multiLocationId is not used by another management group to identify a set of versions within it.

See Toast identifiers in the Toast Developer Guide for more information on the multiLocationId and its relationship to other Toast identifiers.

See Enterprise module overview in the Toast Platform Guide for more information on the enterprise module and versioning.

multiplicationFactor
number or null <double>

An optional number that specifies how much the cost of a modifier option is multiplied by when this pre-modifier is applied to it. For example, an EXTRA pre-modifier option could specify a multiplicationFactor of 1.5 to indicate that adding extra cheese to a menu item costs one and a half times the regular price of the cheese modifier option.

A PreModifier object has two optional values, fixedPrice and multiplicationFactor, that both alter the price of a modifier option when the pre-modifier is applied to it. However, these values cannot be used at the same time. If you specify a fixedPrice value for a premodifier, then multiplicationFactor is null. If you specify a multiplicationFactor for a premodifier, then fixedPrice is null. If you choose not to assign either a fixed price or a multiplication factor to a pre-modifier, then the fixedPrice value is 0 and the multiplicationFactor is null.

name
string

A descriptive name for this pre-modifier, for example, "NO" or "EXTRA".

{
  • "name": "string",
  • "guid": "string",
  • "multiLocationId": "string",
  • "fixedPrice": 0,
  • "multiplicationFactor": 0,
  • "displayMode": "PREFIX"
}