This guide will be removed on April 29, 2022. Please use our new, easier-to-use Toast technical documentation site. All updated content is on the new site.
When a menu item is priced using the Size Price pricing
strategy, its pricingStrategy
value is
SIZE_PRICE
and its pricingRules
value
contains the information you need to calculate the prices for
different sizes of the item. Inside the pricingRules
value, you see the sizeSpecificPricingGuid
value, which
is populated with the GUID
of the Size modifier group
that contains the sizes and prices for this menu item.
The Toast platform automatically creates a Size modifier group
when you choose the Size Price pricing strategy for a menu item. The
system stores the sizes and prices you specify in this modifier group,
using separate modifier options, one for each size. You use the
sizeSpecificPricingGuid
value to locate the correct Size
modifier group to use when pricing a menu item that uses size pricing.
In the JSON fragment below, you can see that Cheese Pizza menu item
uses the SIZE_PRICE
pricing strategy and the Size
modifier group where the sizes and prices for the Cheese Pizza menu
item are defined has a GUID
ending in 31b0
.
The Size modifier group has two modifier options that define two sizes
for the Cheese Pizza menu item, Small and Large, which cost $8 and
$10, respectively.
In this use case, the timeSpecificPricingRules
array contained in the pricingRules
value is empty
because the menu item uses a size price, not a time-specific price.
Also, the sizeSequencePricingRules
array is empty because
because this array is used for modifier option pricing, not menu item
pricing.
Sample JSON for a menu item that uses the Size Price pricing strategy
{ "restaurantGuid": "2071fb81-988b-4d75-b8dc-c5c17cff9706", ... "menus": [ { "name": "Dinner", "guid": "ddd681de-3c12-4d45-b8b1-a5b2ea898210", ... "menuGroups": [ { "name": "Pizza", "guid": "dc868006-919a-4950-a4cc-3a03f9770fd7", ... "menuItems": [ { "name": "Cheese Pizza", "guid": "95c5d500-8d92-46f2-bec4-fb2a42a46621", ... "price": null, "pricingStrategy": "SIZE_PRICE", "pricingRules": { "timeSpecificPricingRules": [], "sizeSpecificPricingGuid": "23c02762-9d6a-4d3f-a298-71c989bf31b0","sizeSequencePricingRules": [] }, ... "modifierGroupReferences": [ 2,
6,
... ], ... } ] } ] } ], "modifierGroupReferences": { ... "2": {
"referenceId": 2, "name": "Size", "guid": "23c02762-9d6a-4d3f-a298-71c989bf31b0", ... "pricingStrategy": "NONE", "pricingRules": null, ... "modifierOptionReferences": [
12, 13 ], ... }, ... }, "modifierOptionReferences": { ... "12": {
"referenceId": 12, "name": "Small", "guid": "352244f2-a952-4a3a-a3ae-7775fa221ce7", ... "price": 8.0,
"pricingStrategy": "BASE_PRICE",
"pricingRules": null,
... "modifierGroupReferences": [] }, "13": {
"referenceId": 13, "name": "Large", "guid": "4ff89bca-b448-4892-bc4c-62c37a28ac44", ... "price": 10.0, "pricingStrategy": "BASE_PRICE", "pricingRules": null, ... "modifierGroupReferences": [] } ... } }
The |
|
A reference to the Size modifier group in the
|
|
References to other, non-size related, modifier groups that modify the Cheese Pizza menu item. |
|
The Size modifier group for the Cheese Pizza menu item. |
|
References to the modifier options in the Size modifier group where the individual sizes and prices are defined. |
|
The Small modifier option, which defines the price of the Small size of the Cheese Pizza menu item. |
|
The price ($8) of the Small size of the Cheese Pizza menu item. This price is inherited from the Small modifier option's underlying item reference. |
|
The |
|
The |
|
The Large modifier option, which defines the price of the Large size of the Cheese Pizza menu item. |