Method: notification.partners.bookings.patch

อัปเดต Booking ที่มีอยู่

คำขอ HTTP

PATCH https://mapsbooking.googleapis.com/v1alpha/notification/{booking.name=partners/*/bookings/*}

URL ใช้ไวยากรณ์การแปลง gRPC

พารามิเตอร์เส้นทาง

พารามิเตอร์
booking.name

string

ชื่อทรัพยากรของการจอง: partners/{partner ID}/bookings/{booking ID}

พารามิเตอร์การค้นหา

พารามิเตอร์
updateMask

string (FieldMask format)

ฟิลด์มาสก์ของช่องการจองทั้งหมดที่จะอัปเดต

ซึ่งเป็นรายการชื่อฟิลด์ที่สมบูรณ์ในตัวเองที่คั่นด้วยคอมมา ตัวอย่าง: "user.displayName,photo"

bookingFailure

object (BookingFailure)

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

เนื้อหาของคำขอ

เนื้อความของคำขอมีอินสแตนซ์ของ Booking

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Booking

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/mapsbooking

BookingFailure

ข้อมูลสถานะที่แสดงเหตุผลที่การประมวลผลการจองไม่สำเร็จแบบไม่พร้อมกัน BookingFailure มีไว้เพื่อบันทึกข้อผิดพลาดของตรรกะทางธุรกิจเป็นหลัก

การแสดง JSON
{
  "cause": enum (Cause),
  "rejectedCardType": enum (CreditCardType),
  "description": string,
  "paymentFailure": {
    object (PaymentFailureInformation)
  }
}
ช่อง
cause

enum (Cause)

สาเหตุที่การจองไม่สำเร็จ (ต้องระบุ)

rejectedCardType

enum (CreditCardType)

(ต้องระบุเฉพาะในกรณีที่สาเหตุคือ PAYMENT_ERROR_CARD_TYPE_REJECTED)

description

string

ฟิลด์ที่ไม่บังคับนี้ใช้เพื่อให้พาร์ทเนอร์ระบุข้อมูลเพิ่มเติมเพื่อการแก้ไขข้อบกพร่องเท่านั้น (ไม่บังคับ)

paymentFailure

object (PaymentFailureInformation)

ข้อมูลเกี่ยวกับการชําระเงินที่ไม่สําเร็จ

สาเหตุ

การแจกแจงสาเหตุของการไม่ผ่าน

Enum
CAUSE_UNSPECIFIED ค่าเริ่มต้น: อย่าใช้ จะเป็น "ข้อผิดพลาดที่ไม่รู้จัก"
SLOT_UNAVAILABLE ช่วงเวลาที่พร้อมให้บริการที่อ้างอิงไม่พร้อมให้บริการแล้ว
SLOT_ALREADY_BOOKED_BY_USER ผู้ใช้ได้จองการนัดหมายสำหรับช่วงเวลาที่พร้อมให้บริการที่อ้างอิงแล้ว
LEASE_EXPIRED สัญญาเช่า (หากมี) หมดอายุแล้วและไม่สามารถใช้ในการจองที่ขอได้อีกต่อไป
OUTSIDE_CANCELLATION_WINDOW ขณะนี้เราดำเนินการยกเลิกตามคำขอไม่ได้เนื่องจากข้อจำกัดด้านเวลาในนโยบายการยกเลิกของผู้ขาย
PAYMENT_ERROR_CARD_TYPE_REJECTED พบข้อผิดพลาดขณะประมวลผลการชำระเงินเนื่องจากผู้ขายไม่ยอมรับบัตรเครดิตประเภทที่ระบุ คุณต้องระบุประเภทบัตรเครดิตใน rejectedCardType
PAYMENT_ERROR_CARD_DECLINED เกิดข้อผิดพลาดขณะประมวลผลการชำระเงินเนื่องจากบัตรเครดิตที่ระบุถูกปฏิเสธ
PAYMENT_OPTION_NOT_VALID เกิดข้อผิดพลาดกับแพ็ก/การเป็นสมาชิกที่ใช้ชำระเงินสำหรับการจอง อาจมีการใช้งานที่ถูกต้องเหลืออยู่ไม่เพียงพอ บัตรอาจหมดอายุแล้ว ฯลฯ
PAYMENT_ERROR เกิดข้อผิดพลาดขณะประมวลผลการชำระเงินสำหรับการจองนี้ ใช้ค่านี้เพื่อระบุข้อผิดพลาดทั่วไปเกี่ยวกับการชำระเงินในกรณีที่ข้อผิดพลาดไม่ตรงกับข้อผิดพลาดการชำระเงินที่เฉพาะเจาะจงข้างต้นเท่านั้น
USER_CANNOT_USE_PAYMENT_OPTION ผู้ใช้ใช้ตัวเลือกการชำระเงินที่ระบุไม่ได้ (เช่น ผู้ใช้พยายามใช้ราคาสำหรับผู้ใช้ครั้งแรกเป็นครั้งที่ 2)
BOOKING_ALREADY_CANCELLED การจองที่ผู้ใช้พยายามยกเลิกถูกยกเลิกไปแล้ว
BOOKING_NOT_CANCELLABLE การจองที่ผู้ใช้พยายามยกเลิกจะยกเลิกไม่ได้
OVERLAPPING_RESERVATION ผู้ใช้มีการจองที่ใกล้กับเวลานี้เกินไป
USER_OVER_BOOKING_LIMIT การจองล้มเหลวเนื่องจากผู้ใช้มีจำนวนการจองเกินขีดจำกัดการจองต่อผู้ใช้ของผู้รวบรวมข้อมูล
PAYMENT_REQUIRES_3DS1

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

เมื่อเป็นเหตุผลที่ไม่สำเร็จ คุณต้องตั้งค่า paymentFailure.3DS1_parameters หากไม่ใช่ ระบบจะถือว่าสาเหตุปัจจุบันเป็น PAYMENT_ERROR

PaymentFailureInformation

ข้อมูลเกี่ยวกับการชําระเงินที่ไม่สําเร็จ

การแสดง JSON
{
  "threeds1Parameters": {
    object (ThreeDS1Parameters)
  }
}
ช่อง
threeds1Parameters

object (ThreeDS1Parameters)

พารามิเตอร์ที่รวบรวมข้อมูล RwG ใช้เพื่อเริ่มโปรโตคอลการตรวจสอบสิทธิ์ 3DS1 กับผู้ใช้ ระบบจะละเว้นเว้นแต่จะมีการตั้งค่า BookingFailure.cause เป็น PAYMENT_REQUIRES_3DS1

ThreeDS1Parameters

พารามิเตอร์ที่ขอให้ RwG ดำเนินการยืนยันตัวตนแบบ 3DS1

พารามิเตอร์เหล่านี้จะตั้งค่าตามคำอธิบายโปรโตคอล 3DS1 ของ EMVCo

การแสดง JSON
{
  "acsUrl": string,
  "paReq": string,
  "transactionId": string,
  "mdMerchantData": string
}
ช่อง
acsUrl

string

URL ที่จะโหลดแบบฟอร์มเพื่อแสดงต่อผู้ใช้เพื่อตรวจสอบสิทธิ์

paReq

string

คำขอ PaymentAuthentication เพื่อโพสต์ไปยังแบบฟอร์ม ACSUrl หากระบุไว้

transactionId

string

ตัวระบุที่ผู้ให้บริการ ACS ใช้ เพื่อโพสต์ไปยังแบบฟอร์ม ACSUrl หากระบุไว้

mdMerchantData

string

ข้อมูลผู้ขาย เพื่อโพสต์ไปยังแบบฟอร์ม ACSUrl หากระบุไว้