- JSON representation
- OrderItem
- OrderModifierGroup
- OrderModifier
- OrderModifierAction
- OrderMetadata
- OrderFulfillment
- OrderPriceInfo
Order represents the content of a user's in-progress or completed order.
| JSON representation |
|---|
{ "items": [ { object ( |
| Fields | |
|---|---|
items[] |
Optional. The items in the order. |
metadata |
Optional. Other metadata collected or inferred during the order. |
fulfillment |
Optional. The fulfillment information for the order. |
priceInfo |
Optional. Price information for the order. |
externalOrderId |
Output only. The external identifier for this order. Populated only if a point-of-sale integration is enabled. |
OrderItem
OrderItem specifies the state of an Item which is part of an Order.
| JSON representation |
|---|
{ "uid": string, "itemId": string, "displayName": string, "image": { object ( |
| Fields | |
|---|---|
uid |
Optional. A system-assigned unique identifier for this item. |
itemId |
Required. Identifier for an Item in the Menu, unique within its Menu. |
displayName |
Output only. Human-readable name for this line item to be shown on user interfaces. |
image |
Output only. Image to display for this item in the UI. |
basePrice |
Output only. The base price of the item. This may be affected by the selected modifiers. This is the price per unit of the item. |
integrationAttributes |
Output only. Metadata associated with this entity used for downstream integrations. |
modifierGroups[] |
Optional. ModifierGroups applied to this item. |
quantity |
Optional. The quantity of this item in the order. |
OrderModifierGroup
OrderModifierGroup specifies the state of a ModifierGroup which is part of an OrderItem.
| JSON representation |
|---|
{ "modifierGroupId": string, "displayName": string, "integrationAttributes": { object ( |
| Fields | |
|---|---|
modifierGroupId |
Required. Identifier for this modifier group, unique within its menu. |
displayName |
Output only. The modifier group name -- e.g. "Toppings (Sandwich)" or "Side for Medium Combo". |
integrationAttributes |
Output only. Metadata associated with this entity used for downstream integrations. |
modifiers[] |
Optional. The modifiers applied to this modifier group. |
OrderModifier
OrderModifier specifies the state of a Modifier which is part of an OrderModifierGroup.
| JSON representation |
|---|
{ "uid": string, "modifierId": string, "displayName": string, "priceAdjustment": { object ( |
| Fields | |
|---|---|
uid |
Optional. A system-assigned unique identifier for this modifier. |
modifierId |
Required. Identifier for this modifier, unique within the menu. |
displayName |
Output only. The modifier display name to be shown on user interfaces. |
priceAdjustment |
Output only. The price adjustment associated with this modifier, if any. This is the price per unit of the modifier. |
quantity |
Optional. The quantity of this modifier action applied. |
modifierAction |
Optional. The modifier action applied to this modifier. |
image |
Output only. Image to display for this modifier in the UI. |
integrationAttributes |
Output only. Metadata associated with this entity used for downstream integrations. |
modifierGroups[] |
Optional. Nested modifier groups applied to this modifier. |
OrderModifierAction
OrderModifierAction specifies the ModifierAction associated with an applied OrderModifier.
| JSON representation |
|---|
{ "name": string } |
| Fields | |
|---|---|
name |
Optional. The modifier action name -- e.g. "NO", "SIDE", "ADD", "EXTRA". |
OrderMetadata
OrderMetadata contains other metadata collected or inferred during the order.
| JSON representation |
|---|
{ "collectedCustomerName": string, "callerPhoneNumber": string } |
| Fields | |
|---|---|
collectedCustomerName |
Optional. Name of the customer, collected while taking the order. Only populated when the agent is configured to collect the customer's name. This may be collected verbally and could contain spelling mistakes or mistranscriptions, so care should be taken when displaying it to users, and it shouldn't be trusted as e.g. payment information. |
callerPhoneNumber |
Optional. The phone number of the customer placing the order. |
OrderFulfillment
OrderFulfillment contains information about order fulfillment.
| JSON representation |
|---|
{
"fulfillmentMethod": enum ( |
| Fields | |
|---|---|
fulfillmentMethod |
Optional. The fulfillment method of the order. |
createTime |
Output only. The time the order was created at. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
targetFulfillmentTime |
Optional. The time the order is scheduled for fulfillment, used for 'order ahead'. If not provided, the order is assumed to be for 'as soon as possible'. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
OrderPriceInfo
OrderPriceInfo encapsulates the various price components of an order.
| JSON representation |
|---|
{ "totalPrice": { object ( |
| Fields | |
|---|---|
totalPrice |
Optional. The final total price after all taxes, fees, and discounts are applied. |
subtotalPrice |
Optional. The subtotal price of all items and modifiers, before taxes, discounts. |
taxPrice |
Optional. The amount of tax applied to the order. |