- JSON 表示法
- OrderItem
- OrderModifierGroup
- OrderModifier
- OrderModifierAction
- OrderMetadata
- DeliveryAddress
- ValidationStatus
- OrderFulfillment
- OrderPriceInfo
Order 表示用户正在进行或已完成的订单的内容。
| JSON 表示法 |
|---|
{ "items": [ { object ( |
| 字段 | |
|---|---|
items[] |
可选。订单中的商品。 |
metadata |
可选。在下单过程中收集或推断的其他元数据。 |
fulfillment |
可选。订单的履单信息。 |
priceInfo |
可选。订单的价格信息。 |
externalOrderId |
仅限输出。此订单的外部标识符。仅在启用了销售终端集成时填充。 |
OrderItem
OrderItem 指定属于订单一部分的商品的状态。
| JSON 表示法 |
|---|
{ "uid": string, "itemId": string, "displayName": string, "image": { object ( |
| 字段 | |
|---|---|
uid |
可选。系统为此商品分配的唯一标识符。 |
itemId |
必需。菜单中商品的标识符,在菜单中是唯一的。 |
displayName |
仅限输出。此订单项的人类可读名称,将在界面上显示。 |
image |
仅限输出。在界面中为此项显示的图片。 |
basePrice |
仅限输出。商品的基本价格。这可能会受到所选修饰选项的影响。这是商品的单价。 |
integrationAttributes |
仅限输出。与此实体关联的元数据,用于下游集成。 |
modifierGroups[] |
可选。应用于此商品的 ModifierGroups。 |
quantity |
可选。订单中此商品的数量。 |
totalPrice |
仅限输出。此订单项的总价,包括所选修饰符并反映商品数量,税前。用于显示每个商品的购物袋。 |
categoryIds[] |
仅限输出。底层菜单项所属的类别 ID。镜像菜单的 Item.category_ids,以便客户按菜单类别对订购的商品进行分组。 |
OrderModifierGroup
OrderModifierGroup 指定 ModifierGroup 的状态,ModifierGroup 是 OrderItem 的一部分。
| JSON 表示法 |
|---|
{ "modifierGroupId": string, "displayName": string, "integrationAttributes": { object ( |
| 字段 | |
|---|---|
modifierGroupId |
必需。此修饰符组的标识符,在其菜单中是唯一的。 |
displayName |
仅限输出。修饰符组名称,例如“配料(三明治)”或“中号套餐配菜”。 |
integrationAttributes |
仅限输出。与此实体关联的元数据,用于下游集成。 |
modifiers[] |
可选。应用于此修饰符组的修饰符。 |
OrderModifier
OrderModifier 指定属于 OrderModifierGroup 的 Modifier 的状态。
| JSON 表示法 |
|---|
{ "uid": string, "modifierId": string, "displayName": string, "priceAdjustment": { object ( |
| 字段 | |
|---|---|
uid |
可选。系统为此修饰符分配的唯一标识符。 |
modifierId |
必需。此修饰符的标识符,在菜单中是唯一的。 |
displayName |
仅限输出。要在界面上显示的修饰符显示名称。 |
priceAdjustment |
仅限输出。与此修饰符关联的价格调整(如有)。这是修饰符的单价。 |
quantity |
可选。此修饰符操作的应用数量。 |
modifierAction |
可选。应用于此修饰符的修饰符操作。 |
image |
仅限输出。在界面中为此修饰符显示的图片。 |
integrationAttributes |
仅限输出。与此实体关联的元数据,用于下游集成。 |
modifierGroups[] |
可选。应用于此修饰符的嵌套修饰符组。 |
isDefault |
仅限输出。此修饰符是否为其修饰符组的默认选择。需要此信息,以便客户端计算准确的选择差异。 |
OrderModifierAction
OrderModifierAction 指定与已应用的 OrderModifier 关联的 ModifierAction。
| JSON 表示法 |
|---|
{ "name": string } |
| 字段 | |
|---|---|
name |
可选。修饰符操作名称,例如“NO”“SIDE”“ADD”“EXTRA”。 |
OrderMetadata
OrderMetadata 包含在订单期间收集或推断的其他元数据。
| JSON 表示法 |
|---|
{
"collectedCustomerName": string,
"callerPhoneNumber": string,
"deliveryAddress": {
object ( |
| 字段 | |
|---|---|
collectedCustomerName |
可选。客户姓名,在接单时收集。仅在智能体配置为收集客户姓名时填充。这些信息可能是通过口头方式收集的,可能包含拼写错误或转写错误,因此在向用户显示时应谨慎,不应将其视为付款信息等。 |
callerPhoneNumber |
可选。下单客户的手机号码。 |
deliveryAddress |
可选。配送地址(如果订单是配送订单)。 |
DeliveryAddress
订单的配送地址。这可能是现有已保存或收集的地址。
| JSON 表示法 |
|---|
{ "address": { object ( |
| 字段 | |
|---|---|
address |
可选。配送地址。 |
validationStatus |
可选。地址的验证状态。 |
coordinates |
可选。地址的地理坐标。用于验证地址是否在商店的配送范围内。 |
ValidationStatus
配送地址的验证状态。它由客户端特定的验证逻辑决定。
| 枚举 | |
|---|---|
VALIDATION_STATUS_UNSPECIFIED |
该地址尚未经过验证。 |
VALIDATION_STATUS_VALID |
地址有效。 |
VALIDATION_STATUS_INVALID |
地址无效(不存在、无法解析等) |
VALIDATION_STATUS_OUT_OF_RANGE |
地址存在且已解析,但超出了商店的范围。 |
VALIDATION_STATUS_INCOMPLETE_ADDRESS |
地址中缺少必填字段(缺少门牌号/街道名称、城市、州/省/自治区/直辖市、邮政编码等) |
OrderFulfillment
OrderFulfillment 包含有关订单履行的信息。
| JSON 表示法 |
|---|
{
"fulfillmentMethod": enum ( |
| 字段 | |
|---|---|
fulfillmentMethod |
可选。订单的履单方式。 |
createTime |
仅限输出。订单的创建时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
targetFulfillmentTime |
可选。订单预定履单时间,用于“提前下单”。如果未提供,则系统会假定订单为“尽快”。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
OrderPriceInfo
OrderPriceInfo 封装了订单的各种价格组成部分。
| JSON 表示法 |
|---|
{ "totalPrice": { object ( |
| 字段 | |
|---|---|
totalPrice |
可选。应用所有税费、费用和折扣后的最终总价。 |
subtotalPrice |
可选。所有商品和修饰符的税前、折扣前小计价格。 |
taxPrice |
可选。订单的税费金额。 |
discount |
可选。应用于订单的总折扣 |
saving |
可选。订单已应用特惠折扣 |
fees |
可选。订单的总费用 |