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

คำขอการตรวจสอบสิทธิ์การชำระเงิน หากระบุไว้ ระบบจะโพสต์ไปยังแบบฟอร์ม ACSUrl

transactionId

string

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

mdMerchantData

string

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