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.

Modifier Option that Uses a Time Specific Price from Its Item Reference

The example below shows a modifier group, Toppings, whose modifier options are individually priced. One of the modifier options in the Toppings group, Goat Cheese, uses the TIME_SPECIFIC_PRICE pricing strategy. When the Goat Cheese modifier option is ordered between noon and 2pm, it costs $1. During the rest of the day, it costs $2.

Sample JSON for a modifier option that inherits a Time Specific Price from its item reference

{
  "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",1
              "pricingRules": {
                "timeSpecificPricingRules": [],
                "sizeSpecificPricingGuid": "23c02762-9d6a-4d3f-a298-71c989bf31b0",2
                "sizeSequencePricingRules": []
              },
              ...
              "modifierGroupReferences": [
                2,3
                6,4
                ...
              ],
              ...
            }
          ]
        }
      ]
    }
  ],
  "modifierGroupReferences": {
    "6": {5
      "referenceId": 6,
      "name": "Toppings",
      "guid": "a1778e92-7ce9-4b1e-867d-c1effd7478b8",
      ...
      "pricingStrategy": "NONE",6
      "pricingRules": null,
      ...
      "modifierOptionReferences": [
        18,7
        ...
      ],
      ...
    },
    "2": {8
      "referenceId": 2,
      "name": "Size",
      "guid": "23c02762-9d6a-4d3f-a298-71c989bf31b0",
      ...
      "pricingStrategy": "NONE",9
      "pricingRules": null,
      ...
      "modifierOptionReferences": [
        12,10
        1311
      ],
      ...
    },
  },
  "modifierOptionReferences": {
    "18": {
      "referenceId": 18,
      "name": "Goat Cheese",
      "guid": "0ca19f15-184c-4b69-8049-cd50bf96c39e",
      ...
      "price": null,
      "pricingStrategy": "TIME_SPECIFIC_PRICE",12
      "pricingRules": {
        "timeSpecificPricingRules": [
          {
            "timeSpecificPrice": 1.0,13
            "basePrice": 2.0,14
            "schedule": [15
              {
                "days": [16
                  "MONDAY",
                  "TUESDAY",
                  "WEDNESDAY",
                  "THURSDAY",
                  "FRIDAY",
                  "SATURDAY",
                  "SUNDAY"
                ],
                "timeRanges": [17
                  {
                    "start": "12:00",
                    "end": "14:00"
                  }
                ]
              }
            ]
          }
        ],
        "sizeSpecificPricingGuid": null,
        "sizeSequencePricingRules": []
      },
      ...
    },
    "12": {
      "referenceId": 12,
      "name": "Small",18
      "guid": "352244f2-a952-4a3a-a3ae-7775fa221ce7",
      ...
      "price": 8.0,19
      "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": []
    }
  }
}

1

Indicates that the pricing strategy for the Cheese Pizza menu item is SIZE_PRICE.

2

The GUID of the Size modifier group that defines the sizes and prices for Cheese Pizza menu item. Note that this is the same modifier group that is referenced in the modifierGroupReferences map using the ID 2.

3

Reference to the Size modifier group in the modifierGroupReferences map. This is the same modifier group whose GUID is specified in the sizeSpecificPricingGuid value.

4

Reference to the Toppings modifier group.

5

The Toppings modifier group.

6

A price is defined on the Goat Cheese modifier option itself, so the pricingStrategy for the Toppings modifier group is NONE and pricingRules is null.

7

Reference to the Goat Cheese modifier option.

8

The Size modifier group that defines sizes and prices for the Cheese Pizza menu item.

9

Prices are defined on the Small and Large modifier options themselves, so the pricingStrategy for the Size modifier group is NONE and pricingRules is null.

10

Reference to the Small modifier option for the Cheese Pizza menu item.

11

Reference to the Large modifier option for the Cheese Pizza menu item.

12

Indicates that the pricing strategy for the Goat Cheese modifier option is TIME_SPECIFIC_PRICE.

13

The price of the Goat Cheese modifier option during the time period defined by the schedule value ($1).

14

The base price of the Goat Cheese modifier option ($2), used for time periods when a time-specific price has not been defined.

15

The schedule for this time-specific price, which defines the days and times the price applies.

16

The days this time-specific price applies (Monday through Sunday).

17

The times this time-specific price applies (noon to 2pm), in the restaurant's local time.

18

The modifier option that defines the price of a Small cheese pizza.

19

The price of a Small cheese pizza ($8).