- JSON 表示法
- OrderItem
- OrderModifierGroup
- OrderModifier
- OrderModifierAction
- OrderMetadata
- DeliveryAddress
- ValidationStatus
- OrderFulfillment
- OrderPriceInfo
- OrderPayment
- TippingInfo
- LoyaltyAmount
- PaymentInfo
- PaymentMethod
Order 代表使用者進行中或已完成訂單的內容。
| JSON 表示法 |
|---|
{ "items": [ { object ( |
| 欄位 | |
|---|---|
items[] |
選用。訂單中的商品。 |
metadata |
選用。在訂購期間收集或推論的其他中繼資料。 |
fulfillment |
選用。訂單的出貨資訊。 |
priceInfo |
選用。訂單的價格資訊。 |
externalOrderId |
僅供輸出。這筆訂單的外部 ID。只有在啟用銷售點整合功能時,系統才會填入資料。 |
orderPayment |
選用。與這筆訂單相關聯的付款狀態。 |
OrderItem
OrderItem 會指定訂單中某個項目的狀態。
| JSON 表示法 |
|---|
{ "uid": string, "itemId": string, "displayName": string, "image": { object ( |
| 欄位 | |
|---|---|
uid |
選用。系統為這個項目指派的專屬 ID。 |
itemId |
這是必要旗標,菜單中品項的 ID,在菜單中不得重複。 |
displayName |
僅供輸出。這個委刊項在使用者介面中顯示的名稱,應為人類可讀。 |
image |
僅供輸出。在 UI 中為這個項目顯示的圖片。 |
basePrice |
僅供輸出。商品的底價。這可能會受到所選修飾標記的影響。這是商品的單價。 |
integrationAttributes |
僅供輸出。與這個實體相關聯的中繼資料,用於下游整合。 |
modifierGroups[] |
選用。套用至此項目的 ModifierGroups。 |
quantity |
選用。訂單中的商品數量。 |
totalPrice |
僅供輸出。這個明細項目的總價,包含所選修飾符,並反映商品數量 (稅前)。用於顯示每項商品的購物袋。 |
categoryIds[] |
僅供輸出。基礎選單項目所屬的類別 ID。反映菜單的 Item.category_ids,讓用戶端能依菜單類別將訂購的品項分組。 |
OrderModifierGroup
OrderModifierGroup 會指定 ModifierGroup 的狀態,而 ModifierGroup 是 OrderItem 的一部分。
| JSON 表示法 |
|---|
{ "modifierGroupId": string, "displayName": string, "integrationAttributes": { object ( |
| 欄位 | |
|---|---|
modifierGroupId |
這是必要旗標,這個修飾符群組的 ID,在所屬菜單中不得重複。 |
displayName |
僅供輸出。修飾符群組名稱,例如「配料 (三明治)」或「中份套餐配菜」。 |
integrationAttributes |
僅供輸出。與這個實體相關聯的中繼資料,用於下游整合。 |
modifiers[] |
選用。套用至這個修飾符群組的修飾符。 |
OrderModifier
OrderModifier 會指定修飾符的狀態,該修飾符屬於 OrderModifierGroup。
| JSON 表示法 |
|---|
{ "uid": string, "modifierId": string, "displayName": string, "priceAdjustment": { object ( |
| 欄位 | |
|---|---|
uid |
選用。系統指派給這個修飾符的專屬 ID。 |
modifierId |
這是必要旗標,這個修改項目的 ID,在菜單中不得重複。 |
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 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
targetFulfillmentTime |
選用。訂單預定出貨時間,用於「預先訂購」。如未提供,系統會假設訂單為「盡快」。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
OrderPriceInfo
OrderPriceInfo 封裝訂單的各種價格元件。
| JSON 表示法 |
|---|
{ "totalPrice": { object ( |
| 欄位 | |
|---|---|
totalPrice |
選用。計入所有稅金、費用和折扣後的最終總價。 |
subtotalPrice |
選用。所有品項和修飾符的小計價格,稅前且不含折扣。 |
taxPrice |
選用。訂單套用的稅額。 |
discount |
選用。訂單套用的總折扣 |
saving |
選用。訂單已套用特惠折扣 |
fees |
選用。訂單總費用 |
OrderPayment
訂單的付款相關資訊。
| JSON 表示法 |
|---|
{ "tippingInfo": { object ( |
| 欄位 | |
|---|---|
tippingInfo |
選用。小費資訊。 |
loyaltyConsumed |
選用。付款時使用的會員點數。 |
paymentInfo |
選用。所用付款方式的相關資訊。 |
TippingInfo
小費相關資訊。
| JSON 表示法 |
|---|
{ // Union field |
| 欄位 | |
|---|---|
聯集欄位 tip_type。小費金額或百分比。tip_type 只能是下列其中一個設定: |
|
amount |
選用。小費的具體金額。 |
percentageBps |
選用。以基點表示的百分比,例如 450 = 4.5%。 |
LoyaltyAmount
代表顧客的會員點數。
| JSON 表示法 |
|---|
{ "units": string } |
| 欄位 | |
|---|---|
units |
這是必要旗標,會員點數。 |
PaymentInfo
使用者的付款資訊。
| JSON 表示法 |
|---|
{
"creditCardLastFourDigits": string,
"creditCardCvv": string,
"paymentMethod": enum ( |
| 欄位 | |
|---|---|
creditCardLastFourDigits |
選用。信用卡末四碼。這項資訊會在付款階段用於驗證信用卡號碼。 |
creditCardCvv |
選用。信用卡的 CVV。 |
paymentMethod |
選用。使用的付款方式類型。 |
PaymentMethod
付款方式類型。
| 列舉 | |
|---|---|
PAYMENT_METHOD_UNSPECIFIED |
未指定付款方式。 |
PAYMENT_METHOD_CREDIT_CARD |
信用卡。 |
PAYMENT_METHOD_CASH |
現金。 |