Method: notification.partners.bookings.patch

Cập nhật một Booking hiện có.

Yêu cầu HTTP

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

URL sử dụng cú pháp Chuyển mã gRPC.

Tham số đường dẫn

Tham số
booking.name

string

Tên tài nguyên của lượt đặt trước: partners/{partner ID}/bookings/{booking ID}

Tham số truy vấn

Tham số
updateMask

string (FieldMask format)

Mặt nạ trường của tất cả các trường đặt phòng sẽ được cập nhật

Đây là danh sách các tên trường đủ điều kiện được phân tách bằng dấu phẩy. Ví dụ: "user.displayName,photo"

bookingFailure

object (BookingFailure)

Nếu một yêu cầu đặt phòng được xác nhận không đồng bộ không thành công và trạng thái của yêu cầu đặt phòng đang được cập nhật thành KHÔNG THÀNH CÔNG, thì trường này phải phản ánh lỗi logic nghiệp vụ (ví dụ: người dùng hiện có một yêu cầu đặt phòng quá gần thời điểm này). Bạn chỉ nên đặt trường này khi cập nhật trạng thái đặt phòng thành KHÔNG THÀNH CÔNG. Nếu không, bạn sẽ bỏ qua trường này.

Nội dung yêu cầu

Nội dung yêu cầu chứa một bản sao của Booking.

Nội dung phản hồi

Nếu thành công, nội dung phản hồi sẽ chứa một phiên bản của Booking.

Phạm vi cấp phép

Yêu cầu phạm vi OAuth sau:

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

BookingFailure

Dữ liệu trạng thái cho biết lý do khiến quá trình xử lý yêu cầu đặt phòng không thành công theo cách không đồng bộ. Mục đích của tính năng Đặt phòng không thành công là để chủ yếu phát hiện các lỗi về logic kinh doanh.

Biểu diễn dưới dạng JSON
{
  "cause": enum (Cause),
  "rejectedCardType": enum (CreditCardType),
  "description": string,
  "paymentFailure": {
    object (PaymentFailureInformation)
  }
}
Trường
cause

enum (Cause)

Lý do không đặt được vé. (bắt buộc)

rejectedCardType

enum (CreditCardType)

(chỉ bắt buộc nếu nguyên nhân là PAYMENT_ERROR_CARD_TYPE_Removed)

description

string

Trường không bắt buộc này được dùng cho đối tác để chỉ cung cấp thông tin bổ sung cho mục đích gỡ lỗi. (không bắt buộc)

paymentFailure

object (PaymentFailureInformation)

Thông tin về lỗi thanh toán.

Nguyên nhân

Liệt kê nguyên nhân lỗi.

Enum
CAUSE_UNSPECIFIED Giá trị mặc định: Không sử dụng; tương đương với "lỗi không xác định"
SLOT_UNAVAILABLE Khung giờ trống được tham chiếu không còn nữa.
SLOT_ALREADY_BOOKED_BY_USER Người dùng này đã đặt trước một cuộc hẹn cho khung giờ trống được tham chiếu.
LEASE_EXPIRED Hợp đồng thuê (nếu có) đã hết hạn và không thể sử dụng được nữa để hoàn tất yêu cầu đặt phòng.
OUTSIDE_CANCELLATION_WINDOW Không thể thực hiện yêu cầu huỷ vào thời điểm hiện tại do quy định hạn chế về thời gian trong chính sách huỷ của người bán.
PAYMENT_ERROR_CARD_TYPE_REJECTED Đã xảy ra lỗi trong khi xử lý khoản thanh toán vì người bán không chấp nhận loại thẻ tín dụng được cung cấp. Loại thẻ tín dụng phải được cung cấp trong từ chốiCardType.
PAYMENT_ERROR_CARD_DECLINED Đã xảy ra lỗi trong khi xử lý khoản thanh toán vì thẻ tín dụng được cung cấp đã bị từ chối.
PAYMENT_OPTION_NOT_VALID Đã xảy ra lỗi với gói/gói thành viên dùng để thanh toán cho lượt đặt trước. Có thể không còn trường hợp sử dụng hợp lệ nào, có thể đã hết hạn, v.v.
PAYMENT_ERROR Đã xảy ra lỗi trong quá trình xử lý khoản thanh toán cho yêu cầu đặt vé này. Hãy sử dụng giá trị này để chỉ ra lỗi chung liên quan đến thanh toán, chỉ khi lỗi đó không khớp với một lỗi thanh toán cụ thể ở trên.
USER_CANNOT_USE_PAYMENT_OPTION Người dùng không thể sử dụng lựa chọn thanh toán đã cho (ví dụ: người dùng cố gắng sử dụng giá lần đầu tiên lần thứ hai).
BOOKING_ALREADY_CANCELLED Một yêu cầu đặt vé mà người dùng muốn huỷ đã bị huỷ.
BOOKING_NOT_CANCELLABLE Không thể huỷ một lượt đặt phòng mà người dùng đã cố gắng huỷ.
OVERLAPPING_RESERVATION Người dùng có một đơn đặt chỗ hiện có quá gần thời điểm này.
USER_OVER_BOOKING_LIMIT Không đặt được phòng do người dùng vượt quá giới hạn số lượt đặt trước trên mỗi người dùng của đơn vị tập hợp.
PAYMENT_REQUIRES_3DS1

Đặt thời điểm khoản thanh toán bị từ chối vì bạn yêu cầu thử lại giao dịch, nhưng lần này là sau khi đã trải qua bước kiểm tra/phản hồi 3DS1. Lưu ý rằng trạng thái không thành công của giao dịch hiện tại sẽ vẫn là không thành công. Lần thử lại sẽ hoàn toàn riêng biệt.

Khi đây là lý do xảy ra lỗi, bạn PHẢI đặt paymentFailure.3DS1_parameters. Nếu không, nguyên nhân hiện tại sẽ được xử lý như thể là PAYMENT_ERROR.

PaymentFailureInformation

Thông tin về lỗi thanh toán.

Biểu diễn dưới dạng JSON
{
  "threeds1Parameters": {
    object (ThreeDS1Parameters)
  }
}
Trường
threeds1Parameters

object (ThreeDS1Parameters)

Các thông số mà trình tổng hợp RwG sử dụng để bắt đầu giao thức xác thực 3DS1 với người dùng. Sẽ bị bỏ qua trừ khi BookingErrors.Nguyên nhân được đặt thành PAYMENT_REQUIRES_3DS1.

ThreeDS1Parameters

Các thông số yêu cầu RwG thực hiện thử thách 3DS1.

Các tham số được thiết lập theo phần mô tả của EMVCo về giao thức 3DS1.

Biểu diễn dưới dạng JSON
{
  "acsUrl": string,
  "paReq": string,
  "transactionId": string,
  "mdMerchantData": string
}
Trường
acsUrl

string

URL mà từ đó biểu mẫu sẽ được hiển thị cho người dùng để xác thực.

paReq

string

Yêu cầu PaymentAuthentication. Được đăng lên biểu mẫu ACSUrl nếu được cung cấp.

transactionId

string

Giá trị nhận dạng do nhà cung cấp ACS sử dụng. Được đăng lên biểu mẫu ACSUrl nếu được cung cấp.

mdMerchantData

string

Dữ liệu của người bán. Được đăng lên biểu mẫu ACSUrl nếu được cung cấp.