Thông tin tham khảo về khách hàng

Tài liệu tham khảo này mô tả các phương thức ứng dụng JavaScript mà bạn có thể dùng để triển khai Google Pay API trong các ứng dụng web của mình.

Hàm dựng

Khởi động đối tượng PaymentsClient. Bạn phải gọi hàm khởi tạo này trước khi gọi các phương thức thành viên.

new PaymentsClient(paymentOptions)

Đối số

Thuộc tính Mô tả
paymentOptions

Một đối tượng chứa các cặp khoá-giá trị của dữ liệu cấu hình Google Pay API. Hãy xem PaymentOptions để biết các thuộc tính có thể định cấu hình.

Ví dụ: {environment:'PRODUCTION'}

Giá trị trả về

Loại Mô tả
google.payments.api.PaymentsClient Đối tượng PaymentsClient.

Gửi

Loại Mô tả
Error

Giá trị thuộc tính môi trường đã truyền không được hỗ trợ.

Phương thức đối tượng

createButton(options)

Phương thức tiện lợi được dùng để tạo một nút thanh toán Google Pay có kiểu dáng theo thương hiệu Google Pay mới nhất để chèn vào một trang web.

HTMLElement được tạo bao gồm CSS được chèn động và hình ảnh SVG được lưu trữ trên CDN của Google.

Hãy tham khảo Nguyên tắc sử dụng thương hiệu của chúng tôi để biết thêm thông tin về cách chọn màu nút và loại nút phù hợp cho thiết kế trang web của bạn. Bạn có thể cần thay đổi kích thước của nút để khớp với các nút hoặc thành phần thanh toán tương tự trên trang của mình. Sử dụng công cụ Tuỳ chỉnh nút của chúng tôi để định cấu hình một nút cho trường hợp sử dụng của bạn.

Đối số

Tên Mô tả
options

Một đối tượng chứa các cặp khoá-giá trị cho cấu hình nút. Hãy xem ButtonOptions để biết các thuộc tính có thể định cấu hình.

Ví dụ: {onClick:onGooglePaymentButtonClicked}

Giá trị trả về

Loại Mô tả
HTMLElement Một <button> HTML bên trong một vùng chứa nội dung luồng chung, chẳng hạn như <div>.

Gửi

Loại Mô tả
Error

Bạn chưa đặt một thuộc tính bắt buộc.

isReadyToPay(isReadyToPayRequest)

Sử dụng phương thức isReadyToPay(isReadyToPayRequest) để xác định khả năng của người dùng trong việc trả lại một hình thức thanh toán từ Google Pay API.

Nếu trình duyệt hỗ trợ Google Pay, isReadyToPay sẽ trả về true. Để xác định xem người dùng đã đăng nhập vào Tài khoản Google hay chưa hoặc đã lưu một phương thức thanh toán trong Google Pay hay chưa, hãy đặt IsReadyToPayRequest.existingPaymentMethodRequired thành true và xác minh rằng paymentMethodPresent trả về true trong lời hứa đã phân giải. Để biết thêm thông tin, hãy xem IsReadyToPayResponse.

Nếu PaymentsClient được khởi động bằng một thuộc tính môi trường là TEST, thì paymentMethodPresent luôn trả về true.

Đối số

Tên Mô tả
isReadyToPayRequest Một đối tượng chứa các phương thức thanh toán mà người bán hỗ trợ. Để biết thông tin chi tiết về các thuộc tính có thể định cấu hình, hãy xem IsReadyToPayRequest.

Giá trị trả về

Loại Mô tả
Promise

Đã giải quyết: Một đối tượng chứa thông tin về khả năng thanh toán của người dùng. Để biết thêm thông tin, hãy xem IsReadyToPayResponse.

Bị từ chối: Một đối tượng lỗi chứa thêm thông tin về lý do từ chối. Để biết thêm thông tin, hãy xem PaymentsError.

Lỗi

statusCode Mô tả
DEVELOPER_ERROR
  • Đối tượng IsReadyToPayRequest được truyền có định dạng không đúng cách, thiếu các tham số bắt buộc tối thiểu để xác định mức độ sẵn sàng thanh toán của người dùng hoặc chứa tham số và/hoặc giá trị không hợp lệ.
  • Yêu cầu được bắt đầu từ một bối cảnh bảo mật mà tác nhân thanh toán hoặc trình duyệt đã chọn không thực hiện. Đây thường là lỗi ngữ cảnh trình duyệt không an toàn.

loadPaymentData(paymentDataRequest)

Phương thức này trình bày một bảng thanh toán của Google Pay cho phép chọn một phương thức thanh toán và các thông số được định cấu hình (không bắt buộc).

Phương thức này phải được gọi trong khi trình duyệt xử lý hành vi kích hoạt do sự kiện nhấp chuột. Một cửa sổ bật lên có thể xuất hiện để người dùng chọn phương thức thanh toán hoặc dữ liệu bắt buộc khác được chỉ định trong tham số yêu cầu đã truyền.

Đối số

Tên Mô tả
paymentDataRequest Một đối tượng chứa các cặp khoá-giá trị của cấu hình đầy đủ Google Pay API. Hãy xem PaymentDataRequest để biết các thuộc tính có thể định cấu hình.

Giá trị trả về

Loại Mô tả
Promise

Đã giải quyết: Một đối tượng chứa dữ liệu người mua sắm được yêu cầu. Hãy xem PaymentData để biết thêm thông tin.

Bị từ chối: Một đối tượng chứa mã lỗi và thông tin khác về lý do từ chối. Hãy xem PaymentsError để biết thêm thông tin.

Lỗi

statusCode Mô tả
CANCELED
  • Trình duyệt hiện tại hoặc người dùng Google đã đăng nhập không được hỗ trợ.
  • Người mua sắm đã đóng trang thanh toán Google Pay mà không uỷ quyền thanh toán.
  • Yêu cầu được bắt đầu từ một bối cảnh bảo mật mà tác nhân thanh toán hoặc trình duyệt đã chọn không thực hiện. Thường là một ngữ cảnh trình duyệt không an toàn.
  • Phương thức này được gọi trong khi bảng thanh toán của Google Pay đã xuất hiện.
  • Google Pay payment sheet đã từ chối đối tượng PaymentDataRequest. Thông số PaymentMethodTokenizationSpecification bị thiếu hoặc không đầy đủ cho cổng hoặc giá trị tham số không hợp lệ là nguyên nhân thường gặp.
DEVELOPER_ERROR Đối tượng PaymentDataRequest được truyền có định dạng không đúng cách, thiếu các tham số tối thiểu bắt buộc hoặc chứa một tham số và/hoặc giá trị không hợp lệ.

prefetchPaymentData(paymentDataRequest)

Sử dụng phương thức này để tìm nạp trước cấu hình PaymentDataRequest nhằm cải thiện thời gian thực thi loadPaymentData khi có lượt tương tác của người dùng sau này. Không có giá trị nào được trả về.

Các chế độ tối ưu hoá tìm nạp trước có trên Chrome dành cho Android.

Đối số

Tên Mô tả
paymentDataRequest Một đối tượng chứa các cặp khoá-giá trị của cấu hình đầy đủ Google Pay API. Hãy xem PaymentDataRequest để biết các thuộc tính có thể định cấu hình. Thay đổi đối với thuộc tính transactionInfo không ảnh hưởng đến giá trị tìm nạp trước được lưu vào bộ nhớ đệm.

Lệnh gọi lại dữ liệu thanh toán

Bạn có thể truyền các trình xử lý lệnh gọi lại sau đây đến PaymentOptions.paymentDataCallbacks để hỗ trợ tính năng Uỷ quyền thanh toán và Cập nhật giá linh hoạt.

onPaymentAuthorized(paymentData)

Phương thức này được gọi khi một khoản thanh toán được uỷ quyền trong bảng thanh toán.

Đối số

Tên Mô tả
paymentData Một đối tượng chứa dữ liệu người mua sắm được yêu cầu. Để biết thông tin chi tiết, hãy xem PaymentData.

Giá trị trả về

Loại Mô tả
Promise

Đã phân giải: Một đối tượng chứa thông tin về kết quả giao dịch thanh toán. Để biết thông tin chi tiết, hãy xem PaymentAuthorizationResult.

Bị từ chối: Một đối tượng lỗi có ý định và thông báo lỗi sẽ được hiển thị trong trang thanh toán. Để biết thông tin chi tiết, hãy xem PaymentDataError.

onPaymentDataChanged(intermediatePaymentData)

Phương thức này xử lý các thay đổi về dữ liệu thanh toán trong trang thanh toán, chẳng hạn như địa chỉ giao hàng và lựa chọn vận chuyển.

Đối số

Tên Mô tả
intermediatePaymentData Một đối tượng chứa địa chỉ và lựa chọn vận chuyển đã chọn trong trang thanh toán. Để biết thông tin chi tiết, hãy xem IntermediatePaymentData.

Giá trị trả về

Loại Mô tả
Promise

Đã phân giải: Một đối tượng chứa thông tin về thông tin giao dịch mới, các lựa chọn vận chuyển và lỗi dữ liệu thanh toán. Để biết thông tin chi tiết, hãy xem PaymentDataRequestUpdate.

Bị từ chối: Một đối tượng lỗi có ý định và thông báo lỗi sẽ được hiển thị trong trang thanh toán. Để biết thông tin chi tiết, hãy xem PaymentDataError.