ภาพรวม

ภาพรวมนี้จะสรุปขั้นตอนตั้งแต่ต้นจนจบของคำสั่งซื้อและวิธีที่ระบบโต้ตอบกับเว็บเซอร์วิสการดำเนินการตามคำสั่งซื้อ

การเรียงลำดับ

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

ขั้นตอนถัดไปคือระยะการตรวจสอบรถเข็น ซึ่งบริการเว็บจะประมวลผล Cart ที่ผู้ใช้สร้างขึ้น

การดำเนินการชำระเงิน

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

ขั้นตอนการชำระเงินจะเป็นไปตามลำดับต่อไปนี้

  1. บริการการสั่งซื้อแบบครบวงจรจะส่ง CheckoutRequestMessage ที่มี Cart ไปยังปลายทางของบริการเว็บสำหรับการนำส่ง
  2. เว็บเซอร์วิสของคุณต้องตรวจสอบรายการใน Cart โดยอิงตามราคา ความพร้อมให้บริการ และผู้ให้บริการปัจจุบัน จากนั้นคำนวณราคารวม ซึ่งรวมส่วนลด ภาษี และค่าธรรมเนียมการนำส่ง
  3. ปลายทางจะตอบกลับด้วย CheckoutResponseMessage ที่มี Cart ที่ไม่มีการเปลี่ยนแปลงสําหรับคําขอที่ประสบความสําเร็จ คุณสามารถใส่ FoodErrorExtension ไว้ใน CheckoutResponseMessage เพื่อแจ้งข้อผิดพลาดในการประมวลผลหรือเสนอการเปลี่ยนแปลงเล็กน้อยได้ หากจำเป็น

หลังจากตรวจสอบ Cart แล้ว ผู้ใช้อาจเลือกที่จะไปยังขั้นตอนการส่งคำสั่งซื้อของขั้นตอน

ส่งการดําเนินการตามคําสั่งซื้อ

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

ขั้นตอนการส่งคำสั่งซื้อจะเป็นไปตามลำดับต่อไปนี้

  1. บริการการสั่งซื้อแบบครบวงจรจะส่ง SubmitOrderRequestMessage ที่มี Order ไปยังปลายทางของบริการเว็บสำหรับการจำหน่าย แบ็กเอนด์ของคุณต้องดำเนินการตรวจสอบ Cart อีกครั้งก่อนดำเนินการต่อ
  2. เว็บเซอร์วิสจะประมวลผลรายละเอียดการชำระเงินที่พบใน Order โดยปกติจะดำเนินการต่อไปนี้

    1. ดำเนินการยืนยันโทเค็น การประพฤติมิชอบ และการตรวจสอบการมีสิทธิ์อื่นๆ
    2. อนุมัติและเรียกเก็บเงินจากบัตร (ไม่บังคับ)
  3. อุปกรณ์ปลายทางจะตอบกลับด้วย SubmitOrderResponseMessage ที่มี OrderUpdate ที่มีสถานะเป็น CREATED ("สั่งซื้อแล้ว") CONFIRMED ("ยอมรับแล้ว") หรือ REJECTED ("ปฏิเสธแล้ว")

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

การดำเนินการอัปเดตคำสั่งซื้อแบบอะซิงโครนัส

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

  1. การเปลี่ยนแปลง OrderState เช่น การเปลี่ยนจาก CREATED เป็น CONFIRMED และจาก CONFIRMED เป็น IN_TRANSIT
  2. การเปลี่ยนแปลงสินค้าในคำสั่งซื้อ เช่น ราคาหรือความพร้อมจำหน่ายสินค้า
  3. เมื่อใดก็ตามที่ผู้ใช้ส่งคำขอการสนับสนุนจากช่องทางการสนับสนุนลูกค้า

ระบบจะส่งการอัปเดตจากปลายทางของเว็บเซอร์วิสเป็น AsyncOrderUpdateRequestMessage ที่มี OrderUpdate Google จะตอบกลับด้วย AsyncOrderUpdateResponseMessage

แผนภาพลำดับ

ภาพประกอบต่อไปนี้แสดงวิธีที่การดำเนินการตามคำสั่งซื้อโต้ตอบกับบริการเว็บของคุณ คลิกเพื่อขยาย

ขั้นตอนการดำเนินการตามคำสั่งซื้อแบบครบวงจร

ตั้งค่าปลายทางการดำเนินการตามคำสั่งซื้อ

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

  • บริการเว็บของคุณต้องสามารถรับข้อความ JSON เป็นคำขอ POST จากบริการการสั่งซื้อแบบครบวงจร
  • เว็บเซอร์วิสของคุณต้องมีปลายทาง URL ที่เข้าถึงได้แบบสาธารณะ ซึ่งเรียกว่า URL การดำเนินการตามคำสั่งซื้อ ซึ่งคุณระบุไว้ในศูนย์การดำเนินการ ระบบจะใช้ URL การดำเนินการตามคำสั่งซื้อเพื่อชำระเงินและส่งคำสั่งซื้อ การติดตั้งใช้งานของคุณต้องจัดการคําขอทั้ง 2 ประเภท
  • เว็บเซอร์วิสของคุณต้องยืนยันข้อความจาก Google ได้โดยใช้วิธีการยืนยันข้อความ
  • การติดตั้งใช้งานปลายทาง URL ของคุณต้องจัดการทั้งการชำระเงินและการดำเนินการตามคำสั่งซื้อได้ด้วยปลายทางเดียว คุณไม่สามารถมี URL ปลายทาง 1 รายการสำหรับการชําระเงินและปลายทางแยกต่างหากสําหรับการส่งคําสั่งซื้อ

ไลบรารีไคลเอ็นต์

เครื่องมือสร้างโค้ดไคลเอ็นต์ในส่วนเครื่องมือมีไว้เพื่อตรวจสอบเว็บเซอร์วิสของคุณเทียบกับข้อกำหนดของ Fulfillment API