Method: notification.partners.bookings.patch

Cập nhậ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

Thông số
booking.name

string

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

Tham số truy vấn

Thông số
updateMask

string (FieldMask format)

Mặt nạ trường của tất cả các trường đặt chỗ cần cập nhật

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

bookingFailure

object (BookingFailure)

Nếu quá trình xử lý yêu cầu đặt chỗ được xác nhận không đồng bộ không thành công và trạng thái của lượt đặt chỗ đang được cập nhật thành FAILED, thì trường này sẽ phản ánh lỗi logic nghiệp vụ (ví dụ: người dùng đã đặt trước một lượt đặt chỗ quá gần với thời gian này). Bạn chỉ nên đặt trường này khi cập nhật trạng thái đặt chỗ thành FAILED, nếu không, trường này sẽ bị bỏ qua.

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 thực thể của Booking.

Phạm vi uỷ quyền

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 xử lý lượt đặt chỗ không thành công một cách không đồng bộ. BookingFailure chủ yếu dùng để nắm bắt các lỗi logic nghiệp vụ.

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 khiến lượt đặt chỗ không thành công. (bắt buộc)

rejectedCardType

enum (CreditCardType)

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

description

string

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

paymentFailure

object (PaymentFailureInformation)

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

Nguyên nhân

Liệt kê các nguyên nhân gây ra 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ờ còn trống được tham chiếu không còn trống.
SLOT_ALREADY_BOOKED_BY_USER Người dùng đã đặt lịch hẹn cho khung giờ còn trống được tham chiếu.
LEASE_EXPIRED Thời hạn thuê (nếu có) đã hết và không thể sử dụng nữa để hoàn tất lượt đặt chỗ được yêu cầu.
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 các 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 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. Bạn phải cung cấp loại thẻ tín dụng trong rejectedCardType.
PAYMENT_ERROR_CARD_DECLINED Đã xảy ra lỗi 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/hội viên được dùng để thanh toán cho lượt đặt chỗ. Có thể không còn lượt sử dụng hợp lệ, có thể đã hết hạn, v.v.
PAYMENT_ERROR Đã xảy ra lỗi khi xử lý khoản thanh toán cho lượt đặt chỗ này. Chỉ sử dụng giá trị này để cho biết lỗi chung liên quan đến thanh toán nếu lỗi không khớp với lỗi thanh toán cụ thể ở trên.
USER_CANNOT_USE_PAYMENT_OPTION Người dùng không thể sử dụng phương thức thanh toán đã cho (ví dụ: người dùng cố gắng sử dụng mức giá lần đầu tiên cho lần thứ hai).
BOOKING_ALREADY_CANCELLED Lượt đặt chỗ mà người dùng cố gắng huỷ đã bị huỷ.
BOOKING_NOT_CANCELLABLE Lượt đặt chỗ mà người dùng cố gắng huỷ không thể huỷ.
OVERLAPPING_RESERVATION Người dùng đã đặt trước một lượt đặt chỗ quá gần với thời gian này.
USER_OVER_BOOKING_LIMIT Lượt đặt chỗ không thành công do người dùng vượt quá giới hạn đặt chỗ trên mỗi người dùng của trình tổng hợp.
PAYMENT_REQUIRES_3DS1

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

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

PaymentFailureInformation

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

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

object (ThreeDS1Parameters)

Các tham 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ừ phi bạn đặt BookingFailure.cause thành PAYMENT_REQUIRES_3DS1.

ThreeDS1Parameters

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

Các tham số được đặt theo nội dung 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 để tải biểu mẫu nhằm hiển thị cho Người dùng để xác thực.

paReq

string

Yêu cầu xác thực thanh toán. Đượ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 người bán. Được đăng lên biểu mẫu ACSUrl nếu được cung cấp.