การโปรโมต

โปรโมชันเป็นวิธีสำหรับคุณและ Google ในการจูงใจลูกค้าให้ลองใช้บริการสั่งอาหารด้วยราคาส่วนลด Google สนับสนุนการผสานรวมการดำเนินการสั่งซื้อจากต้นทางถึงปลายทางกับระบบการจัดการโปรโมชันของคุณ

ประเภทส่วนลดที่รองรับมีดังนี้

  • รหัสโปรโมชันที่ Google รองรับ: รหัสโปรโมชันที่ Google กรอกไว้ล่วงหน้าหรือป้อนโดยผู้ใช้โดยอัตโนมัติ
  • รหัสโปรโมชันที่ได้รับการสนับสนุนจากบุคคลที่สาม: รหัสโปรโมชันที่ให้ผู้ใช้ป้อน ซึ่งบริการสั่งอาหารของคุณมีให้
  • ส่วนลดอัตโนมัติที่ได้รับการสนับสนุนจากบุคคลที่สาม: ส่วนลดที่บริการสั่งอาหารของคุณจะมีผลโดยอัตโนมัติโดยไม่มีรหัสโปรโมชัน

Google จะเรียกชำระเงินไปยังผู้ให้บริการสั่งอาหารของคุณเพื่อยืนยันและใช้ส่วนลด ไม่ว่าจะเป็นส่วนลดประเภทใด

ในฐานะนักพัฒนาบริการสั่งอาหาร คุณต้องทำการเปลี่ยนแปลงบางอย่างในการดำเนินการเพื่อคำนวณส่วนลดสำหรับรหัสโปรโมชันที่ถูกต้องหรือส่งข้อผิดพลาดเกี่ยวกับรหัสโปรโมชันที่ไม่ถูกต้อง จัดการข้อจำกัดการแลกใช้รหัสโปรโมชัน และติดตามข้อมูลบัญชีสำหรับการชำระเงินคืน

วิธีประมวลผลโปรโมชัน

หากต้องการใช้ Fulfillment ที่รองรับโปรโมชัน ให้ทำตามขั้นตอนต่อไปนี้

  1. ตั้งค่าการผสานรวมโปรโมชัน (ข้ามขั้นตอนนี้หากคุณไม่ได้ใช้รหัสโปรโมชันที่ Google สนับสนุน)
  2. ใช้การชำระเงินด้วยโปรโมชัน
  3. ใช้ลำดับการส่งด้วยโปรโมชัน

ตั้งค่าการผสานรวมโปรโมชัน

ส่วนนี้อธิบายวิธีตั้งค่าการผสานรวมโปรโมชันในกรณีที่คุณวางแผนที่จะใช้รหัสโปรโมชันที่ Google เป็นผู้สนับสนุน หากต้องการรองรับเฉพาะรหัสโปรโมชันหรือส่วนลดจากผู้สนับสนุนบุคคลที่สาม คุณสามารถระบุการตั้งค่าเองและข้ามส่วนนี้ได้

โดย Google จะระบุประเภทโปรโมชันที่จะสนับสนุนและติดต่อคุณเพื่อตั้งค่าการผสานรวม เรามีรายละเอียดดังต่อไปนี้

  • จํานวนส่วนลด
  • มูลค่าขั้นต่ำในรถเข็น
  • วันที่เริ่มต้นและวันที่สิ้นสุดในการใช้รหัสโปรโมชัน
  • จํานวนเงินดอลลาร์สูงสุดซึ่งงบประมาณสําหรับแคมเปญโปรโมชัน
  • จํานวนครั้งที่สามารถใช้รหัสโปรโมชันได้

ตัวอย่างของรหัสส่งเสริมการขาย:

  • FopaNewUser: 10% (เปอร์เซ็นต์คงที่) พร้อมส่วนลดสูงสุด $50
  • FopaMoreThan50: $10 (ส่วนลดเป็นจำนวนเงินคงที่)

หาก Google ตัดสินใจหยุดการใช้รหัส คุณจะได้รับการติดต่อ

ตั้งค่าการชำระเงิน

ติดต่อที่ปรึกษาของ Google EAP เพื่อตั้งค่ากระบวนการชำระเงิน Google จะคืนเงินให้เฉพาะธุรกรรมที่เกี่ยวข้องกับรหัสโปรโมชันที่ Google เป็นผู้สนับสนุนเท่านั้น หากสถานะการสั่งซื้อสุดท้ายเป็นอย่างใดอย่างหนึ่งต่อไปนี้

  • CONFIRMED
  • IN_TRANSIT
  • READY_FOR_PICKUP
  • IN_PREPARATION
  • FULFILLED

ใช้ขั้นตอนการชำระเงินด้วยโปรโมชัน

ส่วนนี้อธิบายการใช้ขั้นตอนการชำระเงินเมื่อคุณรองรับรหัสโปรโมชัน (Google สนับสนุนหรือบุคคลที่สามสนับสนุน) สำหรับส่วนลดอัตโนมัติที่ได้รับการสนับสนุนจากบุคคลที่สาม คุณเพียงแค่ส่งคืนรายการโฆษณาส่วนลดใน CheckoutResponseMessage เท่านั้น (ไม่จำเป็นต้องตรวจสอบรหัสโปรโมชัน)

ในระหว่างการดำเนินการตามคำสั่งซื้ออาหาร Google จะส่งรหัสโปรโมชันเดียวใน CheckoutRequestMessage ไปยังการจำหน่ายของคุณ ผู้ใช้อาจเปลี่ยนรถเข็นหรือรหัสโปรโมชันในคำขอชำระเงินซ้ำ

หากต้องการตรวจสอบว่าผู้ใช้ใช้รหัสโปรโมชันเป็นครั้งแรกหรือไม่ ให้ทำดังนี้

  • รหัสโปรโมชันที่ Google เป็นผู้สนับสนุน: Google จะตรวจสอบว่าผู้ใช้ที่กลับมาพยายามใช้รหัสโปรโมชันเดิมอีกครั้งหรือไม่ คุณไม่จำเป็นต้องดำเนินการใดๆ
  • รหัสโปรโมชันที่ได้รับการสนับสนุนจากบุคคลที่สามหรือส่วนลดอัตโนมัติ: หากคุณไม่ได้ใช้งานการลิงก์บัญชีและเลือกให้ผู้ใช้เข้าร่วม คุณจะไม่สามารถตรวจสอบรายละเอียดของผู้ใช้ในระหว่างการประมวลผลคำขอชำระเงินได้ ให้ตรวจหาปัญหานี้ในระหว่างการประมวลผล SubmitOrderRequestMessage แทน โดยใช้รายละเอียด Contact (เช่น อีเมลของผู้ใช้) จากออบเจ็กต์ FoodCartExtension

ระบุข้อผิดพลาดหรือคำนวณส่วนลดในการดำเนินการตามคำสั่งซื้อตามคำขอชำระเงินล่าสุด เมื่อดำเนินการดังกล่าว โปรดตรวจสอบว่าระบบไม่ได้เก็บข้อมูลสถานะที่ไม่มีการอัปเดตไว้

ตรวจสอบความถูกต้องของรหัสโปรโมชัน

การดำเนินการตามคำสั่งซื้อควรตรวจสอบความถูกต้องหรือการมีสิทธิ์ของรหัสโปรโมชันที่ระบุเทียบกับข้อกำหนดที่กำหนด เช่น วันที่หมดอายุ การใช้งานสูงสุด และส่วนลดสูงสุด จากนั้นให้ตอบกลับอย่างเหมาะสมใน CheckoutResponseMessage ด้วยส่วนลดที่คำนวณแล้ว หรือ foodOrderErrors ในกรณีที่ใช้รหัสโปรโมชันไม่ได้ หากตรวจพบข้อผิดพลาดเกี่ยวกับรหัสโปรโมชัน โปรดทำตามขั้นตอนที่อธิบายไว้ในจัดการข้อผิดพลาดเกี่ยวกับโปรโมชัน

ข้อมูลโค้ดต่อไปนี้แสดงตัวอย่าง foodOrderErrors สำหรับรหัสโปรโมชัน ตรวจสอบว่า correctedProposedOrder ไม่มีโหนดโปรโมชัน

"foodOrderErrors": [
  {
    "error": "PROMO_NOT_APPLICABLE",
    // Copy promotions.coupon string from CheckoutRequest as the ID
    "id": "GoogleNewUser",
    "description": "Promotion could not be applied"
  }
],
"correctedProposedOrder": {// required ...},
"paymentOptions": {// required ...}

ส่วนลดในการคำนวณ

หากรหัสโปรโมชันถูกต้อง Fulfillment ของคุณควรคำนวณมูลค่าส่วนลดเป็นดอลลาร์และส่ง CheckoutResponseMessage กลับมาพร้อมมูลค่าส่วนลดที่คำนวณในอาร์เรย์ otherItems ราคารวมในคำสั่งซื้อต้องไม่ติดลบ หากจำนวนส่วนลดเกินกว่าจำนวนเงินในรถเข็น ให้ส่งจำนวนเงินสูงสุดในสกุลเงินดอลลาร์กลับเพื่อแสดงราคารวมของคำสั่งซื้อเป็น $0

ตัวอย่างต่อไปนี้แสดงตัวอย่างส่วน CheckoutResponseMessage สำหรับส่วนลดโปรโมชัน

"proposedOrder": {
   "otherItems": [
      . . .
      {
        "name": "Discount",
        // copy promotions.coupon field from CheckoutRequest as the id
        "id": "GoogleNewUser",
        "price": {
          "type": "ESTIMATE",
          "amount": {
          "currencyCode": "USD",
          "units": "-3",
          "nanos": -500000000
        }
      },
      "type": "DISCOUNT",
    }
  ]
}

เผยแพร่โปรโมชันที่ไม่ได้ใช้

คำขอชำระเงินบางรายการอาจไม่ได้นำไปยังการส่งคำขอคำสั่งซื้อ หากการดำเนินการตามคำสั่งซื้อระงับโปรโมชันไว้ ณ เวลาที่มีการโทรที่จุดชำระเงิน ให้ตรวจสอบว่าคุณมีกลไกพร้อมในการยกเลิกการระงับหากไม่มีการอ้างสิทธิ์โปรโมชันผ่านคำสั่งซื้อที่ส่งหลังจากผ่านไประยะหนึ่ง วิธีนี้ช่วยให้มั่นใจได้ว่าบริการสั่งอาหาร มีโควต้าแคมเปญที่ถูกต้อง

จัดการข้อผิดพลาดเกี่ยวกับโปรโมชัน

หาก Fulfillment ของคุณระบุว่ารหัสโปรโมชันจาก CheckoutRequestMessage ไม่ถูกต้อง (เช่น หมดอายุ ไม่ถูกต้อง หรือไม่รู้จัก) ให้ส่ง CheckoutResponseMessage พร้อมด้วย foodOrderError ที่มีรหัสข้อผิดพลาดและข้อความเหตุผลที่เกี่ยวข้อง พร้อมด้วยออบเจ็กต์ correctedProposedOrder และ paymentOptions

หากการดำเนินการตามคำสั่งซื้อพบข้อผิดพลาดเกี่ยวกับรหัสโปรโมชันหลายรายการจากคำขอเดียวกัน ให้ส่งกลับข้อผิดพลาดที่กู้คืนไม่ได้ก่อนที่จะส่งข้อผิดพลาดที่กู้คืนได้กลับมา จัดลําดับความสําคัญของเช็คดังต่อไปนี้ (จากลําดับความสําคัญสูงไปต่ำ)

  • PROMO_NOT_RECOGNIZED
  • PROMO_EXPIRED
  • PROMO_USER_INELIGIBLE
  • PROMO_ORDER_INELIGIBLE
  • PROMO_NOT_APPLICABLE

ตัวอย่าง

ตัวอย่างคำขอการชำระเงินที่มีรหัสโปรโมชันมีดังนี้

{
    "accessToken": "test_access_token",
    "lastSeen": "2018-06-22T19:25:39Z"
  },
  "conversation": {
    "conversationId": "XYZ"
  },
  "inputs": [
    {
      "intent": "actions.foodordering.intent.CHECKOUT",
      "arguments": [
        {
          "extension": {
            "@type": "type.googleapis.com/google.actions.v2.orders.Cart",
            "merchant": {
              "id": "https://www.exampleprovider.com/merchant/id1",
              "name": "Falafel Bite"
            },
            "lineItems": [
              {
                "name": "Falafel Tray",
                "type": "REGULAR",
                "id": "sample_item_offer_id_1",
                "quantity": 1,
                "price": {
                  "type": "ESTIMATE",
                  "amount": {
                    "currencyCode": "USD",
                    "units": "9",
                    "nanos": 950000000
                  }
                },
                "offerId": "https://www.exampleprovider.com/menu/item/offer/id1",
                "extension": {
                  "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension"
                }
              }
            ],
            "promotions": [
              {
                "coupon": "FOPAACTIVECODE"
              }
            ],
            "extension": {
              "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension",
              "fulfillmentPreference": {
                "fulfillmentInfo": {
                  "pickup": {
                    "pickupTimeIso8601": "P0M"
                  }
                }
              }
            }
          }
        }
      ]
    }
  ],
  "directActionOnly": true,
  "isInSandbox": true
}

หากรหัสโปรโมชันถูกต้อง การตอบกลับการชำระเงินที่เกี่ยวข้องจาก Fulfillment มีดังนี้

{
  "expectUserResponse": false,
  "finalResponse": {
    "richResponse": {
      "items": [
        {
          "structuredResponse": {
            "checkoutResponse": {
              "proposedOrder": {
                "otherItems": [
                  {
                    "name": "Delivery Fees",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "3",
                        "nanos": 500000000
                      }
                    },
                    "type": "DELIVERY"
                  },
                  {
                    "name": "Tax",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "1",
                        "nanos": 370000000
                      }
                    },
                    "type": "TAX"
                  },
                  {
                    "name": "Promotion",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "-5",
                        "nanos": 0
                      }
                    },
                    "id": "FOPAACTIVECODE",
                    "type": "DISCOUNT"
                  }
                ],
                "cart": {
                  "merchant": {
                    "id": "https://www.exampleprovider.com/merchant/id1",
                    "name": "Falafel Bite"
                  },
                  "lineItems": [
                    {
                      "name": "Falafel Tray",
                      "type": "REGULAR",
                      "id": "2529103",
                      "quantity": 1,
                      "price": {
                        "type": "ESTIMATE",
                        "amount": {
                          "currencyCode": "USD",
                          "units": "9",
                          "nanos": 950000000
                        }
                      },
                      "offerId": "https://www.exampleprovider.com/menu/item/offer/id1",
                      "extension": {
                        "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension"
                      }
                    }
                  ],
                  "promotions": [
                    {
                      "coupon": "FOPAACTIVECODE"
                    }
                  ],
                  "extension": {
                    "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension",
                    "fulfillmentPreference": {
                      "fulfillmentInfo": {
                        "pickup": {
                          "pickupTimeIso8601": "P0M"
                        }
                      }
                    }
                  }
                },
                "totalPrice": {
                  "type": "ESTIMATE",
                  "amount": {
                    "currencyCode": "USD",
                    "units": "9",
                    "nanos": 820000000
                  }
                },
                "extension": {
                  "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension",
                  "availableFulfillmentOptions": [
                    {
                      "fulfillmentInfo": {
                        "pickup": {
                          "pickupTimeIso8601": "P0M"
                        }
                      },
                      "expiresAt": "2018-06-22T19:30:52.596Z"
                    }
                  ]
                }
              },
              "orderOptions": {},
              "paymentOptions": {
                "googleProvidedOptions": {
                  "tokenizationParameters": {
                    "tokenizationType": "PAYMENT_GATEWAY",
                    "parameters": {
                      "gateway": "stripe",
                      "stripe:publishableKey": "example_stripe_client_key",
                      "stripe:version": "2017-04-06"
                    }
                  },
                  "supportedCardNetworks": [
                    "AMEX",
                    "DISCOVER",
                    "MASTERCARD",
                    "VISA",
                    "JCB"
                  ],
                  "prepaidCardDisallowed": true
                }
              }
            }
          }
        }
      ],
      "suggestions": []
    }
  }
}

ต่อไปนี้คือตัวอย่างการตอบกลับที่จุดชำระเงินหากรหัสโปรโมชันไม่ถูกต้อง

{
  "expectUserResponse": false,
  "finalResponse": {
    "richResponse": {
      "items": [
        {
          "structuredResponse": {
            "error": {
              "foodOrderErrors": [
                {
                  "error": "PROMO_NOT_RECOGNIZED",
                  "id": "SOMEPROMO",
                  "description": "Coupon not found"
                }
              ],
              "correctedProposedOrder": {
                "cart": {
                  "merchant": {
                    "id": "https://www.exampleprovider.com/merchant/id1",
                    "name": "Falafel Bite"
                  },
                  "lineItems": [
                    {
                      "id": "sample_item_offer_id_4",
                      "name": "Prawns Biryani",
                      "type": "REGULAR",
                      "quantity": 1,
                      "price": {
                        "type": "ESTIMATE",
                        "amount": {
                          "currencyCode": "USD",
                          "units": "18",
                          "nanos": 750000000
                        }
                      },
                      "offerId": "https://www.exampleprovider.com/menu/item/offer/id4",
                      "extension": {
                        "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension"
                      }
                    }
                  ],
                  "extension": {
                    "fulfillmentPreference": {
                      "fulfillmentInfo": {
                        "pickup": {
                          "pickupTimeIso8601": "P0M"
                        }
                      }
                    },
                    "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension"
                  },
                  "promotions": []
                },
                "otherItems": [
                  {
                    "name": "Tax",
                    "type": "TAX",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "1",
                        "nanos": 650000000
                      }
                    }
                  }
                ],
                "termsOfServiceUrl": "https://exampleprovider.com/terms",
                "totalPrice": {
                  "type": "ESTIMATE",
                  "amount": {
                    "currencyCode": "USD",
                    "units": "20",
                    "nanos": 400000000
                  }
                },
                "extension": {
                  "availableFulfillmentOptions": [
                    {
                      "fulfillmentInfo": {
                        "pickup": {
                          "pickupTimeIso8601": "PT0M"
                        }
                      }
                    }
                  ],
                  "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension"
                }
              },
              "paymentOptions": {
                "googleProvidedOptions": {
                  "prepaidCardDisallowed": false,
                  "billingAddressRequired": true,
                  "tokenizationParameters": {
                    "tokenizationType": "PAYMENT_GATEWAY",
                    "parameters": {
                      "gateway": "braintree",
                      "braintree:apiVersion": "v1",
                      "braintree:sdkVersion": "1.4.0",
                      "braintree:merchantId": "example_braintree_merchant_ID",
                      "braintree:clientKey": "example_braintree_client_key",
                      "braintree:authorizationFingerprint": "example_braintree_fingerprint"
                    }
                  }
                }
              },
              "@type": "type.googleapis.com/google.actions.v2.orders.FoodErrorExtension"
            }
          }
        }
      ]
    }
  }
}

ใช้การส่งคำสั่งซื้อด้วยโปรโมชัน

ในการดำเนินการตามคำสั่งซื้อที่ส่ง ให้ตรวจสอบว่าผู้ใช้ได้ใช้รหัสโปรโมชันเป็นครั้งแรกหรือไม่ ในระหว่างการประมวลผล SubmitOrderRequestMessage คุณจะตรวจสอบได้โดยใช้รายละเอียด Contact (เช่น อีเมลของผู้ใช้) จากออบเจ็กต์ FoodCartExtension

นอกจากนี้ คุณควรตรวจสอบความเกี่ยวข้องของรหัสโปรโมชันอีกครั้งดังนี้

  • หากใช้รหัสได้ ให้ยืนยันคำสั่งซื้อและทำเครื่องหมายคูปองที่แลกสิทธิ์แล้ว
  • หากใช้รหัสไม่ได้แล้ว ให้ปฏิเสธคําสั่งซื้อโดยมีข้อผิดพลาด PROMO_NOT_APPLICABLE คุณระบุเหตุผลการปฏิเสธที่เจาะจงได้โดยใช้กลไกเดียวกันกับ FoodOrderUpdateExtension

ตัวอย่าง

ตัวอย่างคำขอให้ส่งคำขอที่มีโปรโมชันมีดังนี้

{
  "conversation": {
    "conversationId": "example_conversation_ID"
  },
  "inputs": [
    {
      "intent": "actions.intent.TRANSACTION_DECISION",
      "arguments": [
        {
          "transactionDecisionValue": {
            "order": {
              "finalOrder": {
                "cart": {
                  "merchant": {
                    "id": "https://www.exampleprovider.com/merchant/id1",
                    "name": "Falafel Bite"
                  },
                  "lineItems": [
                    {
                      "name": "Falafel Tray",
                      "type": "REGULAR",
                      "id": "sample_item_offer_id_1",
                      "quantity": 1,
                      "price": {
                        "type": "ESTIMATE",
                        "amount": {
                          "currencyCode": "USD",
                          "units": "9",
                          "nanos": 950000000
                        }
                      },
                      "offerId": "https://www.exampleprovider.com/menu/item/addon/offer/id1",
                      "extension": {
                        "@type": "type.googleapis.com/google.actions.v2.orders.FoodItemExtension"
                      }
                    }
                  ],
                  "promotions": [
                    {
                      "coupon": "FOPAACTIVECODE"
                    }
                  ],
                  "extension": {
                    "@type": "type.googleapis.com/google.actions.v2.orders.FoodCartExtension",
                    "fulfillmentPreference": {
                      "fulfillmentInfo": {
                        "pickup": {
                          "pickupTimeIso8601": "P0M"
                        }
                      }
                    },
                    "contact": {
                      "displayName": "Food Ordering",
                      "email": "example.provider@gmail.com",
                      "phoneNumber": "+19993334444",
                      "firstName": "Food",
                      "lastName": "Ordering"
                    }
                  }
                },
                "otherItems": [
                  {
                    "name": "Delivery Fees",
                    "type": "DELIVERY",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "3",
                        "nanos": 500000000
                      }
                    }
                  },
                  {
                    "name": "Tax",
                    "type": "TAX",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "1",
                        "nanos": 370000000
                      }
                    }
                  },
                  {
                    "name": "Promotion",
                    "type": "DISCOUNT",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "-5"
                      }
                    },
                    "id": "FOPAACTIVECODE"
                  },
                  {
                    "name": "Subtotal",
                    "type": "SUBTOTAL",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD",
                        "units": "9",
                        "nanos": 950000000
                      }
                    }
                  },
                  {
                    "name": "Tip",
                    "type": "GRATUITY",
                    "price": {
                      "type": "ESTIMATE",
                      "amount": {
                        "currencyCode": "USD"
                      }
                    }
                  }
                ],
                "totalPrice": {
                  "type": "ESTIMATE",
                  "amount": {
                    "currencyCode": "USD",
                    "units": "9",
                    "nanos": 820000000
                  }
                },
                "extension": {
                  "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderExtension"
                }
              },
              "googleOrderId": "example_google_order_ID",
              "orderDate": "2018-06-22T19:30:59.502Z",
              "paymentInfo": {
                "displayName": "example_display_name",
                "googleProvidedPaymentInstrument": {
                  "instrumentToken": "example_instrument_token"
                },
                "paymentType": "PAYMENT_CARD"
              },
              "locale": "en"
            }
          }
        }
      ]
    }
  ],
  "directActionOnly": true,
  "isInSandbox": true
}

ต่อไปนี้คือตัวอย่างการตอบกลับคำขอส่งที่เกี่ยวข้องจากการดำเนินการตามคำสั่งซื้อ หากรหัสโปรโมชันถูกต้อง

{
  "expectUserResponse": false,
  "finalResponse": {
    "richResponse": {
      "items": [
        {
          "structuredResponse": {
            "orderUpdate": {
              "actionOrderId": "example_action_order_ID",
              "orderState": {
                "state": "CREATED",
                "label": "Order is created with partner."
              },
              "updateTime": "2018-06-22T19:31:01.556Z",
              "orderManagementActions": [
                {
                  "type": "CALL_RESTAURANT",
                  "button": {
                    "title": "Call Us",
                    "openUrlAction": {
                      "url": "tel:+1-111-111-1111"
                    }
                  }
                },
                {
                  "type": "EMAIL",
                  "button": {
                    "title": "Email Us",
                    "openUrlAction": {
                      "url": "mailto:example.provider@gmail.com"
                    }
                  }
                },
                {
                  "type": "CUSTOMER_SERVICE",
                  "button": {
                    "title": "Customer Service",
                    "openUrlAction": {
                      "url": "http://www.google.com"
                    }
                  }
                }
              ]
            }
          }
        }
      ],
      "suggestions": []
    }
  }
}

ต่อไปนี้คือตัวอย่างการตอบกลับคำสั่งซื้อที่ส่งหากรหัสโปรโมชันไม่ถูกต้อง

"orderUpdate": {
  "actionOrderId": "sample_action_order_id",
  "orderState": {
    "state": "REJECTED",
    "label": "Order rejected."
  },
  "updateTime": "2017-05-10T02:30:00.000Z",
  "rejectionInfo": {
    "type": "PROMO_NOT_APPLICABLE",
    "reason": "Sorry, there's something wrong. Try another code?"
  },
  "orderManagementActions": [
    {
      "type": "CUSTOMER_SERVICE",
      "button": {
        "title": "Contact customer service",
        "openUrlAction": {
          "url": "mailto:support@example.com"
        }
      }
    },
    {
      "type": "EMAIL",
      "button": {
        "title": "Email restaurant",
        "openUrlAction": {
          "url": "mailto:example.provider@example.com"
        }
      }
    },
    {
      "type": "CALL_RESTAURANT",
      "button": {
        "title": "Call restaurant",
        "openUrlAction": {
          "url": "tel:+19993334444"
        }
      }
    }
  ],
  "infoExtension": {
    "@type": "type.googleapis.com/google.actions.v2.orders.FoodOrderUpdateExtension",
    "foodOrderErrors": [
      {
        "error": "PROMO_USER_INELIGIBLE",
        "description": "Sorry, you can only use this promotion once."
      }
    ]
  }
}