В этой статье описаны методы клиента JavaScript, которые используются для реализации Google Pay API в веб-приложениях.
Конструктор
Инициализирует объект PaymentsClient. Этот конструктор необходимо вызвать перед вызовом методов-членов.
new PaymentsClient(paymentOptions)
Аргументы
| Свойство | Описание |
|---|---|
paymentOptions |
Объект, содержащий пары "ключ-значение" с данными конфигурации Google Pay API. Доступные для настройки свойства перечислены в разделе Пример: |
Возвраты
| Тип | Описание |
|---|---|
google.payments.api.PaymentsClient |
Объект PaymentsClient. |
Исключения
| Тип | Описание |
|---|---|
Error
|
Переданное значение свойства среды не поддерживается. |
Методы объекта
createButton(options)
Этот метод используется для создания кнопки оплаты через Google Pay, оформленной в соответствии с последними рекомендациями по брендингу, для вставки на веб-страницу.
Сгенерированный код HTMLElement включает динамически вставленный код CSS и SVG-изображение, размещенное в сети доставки контента Google.
Дополнительную информацию о том, как выбрать подходящий цвет и тип кнопки для дизайна вашего сайта, можно найти в правилах фирменного оформления. При необходимости вы можете изменить размеры кнопки, чтобы она соответствовала другим кнопкам и элементам на странице. Используйте инструмент Настроить кнопку, чтобы создать кнопку для своего случая.
Аргументы
| Название | Описание |
|---|---|
options |
Объект, содержащий пары "ключ-значение" для конфигурации кнопки.
Список настраиваемых свойств приведен в разделе Пример: |
Возвраты
| Тип | Описание |
|---|---|
HTMLElement |
Элемент HTML <button> внутри общего контейнера контента, например <div>. |
Исключения
| Тип | Описание |
|---|---|
Error
|
Не задано обязательное свойство. |
isReadyToPay(isReadyToPayRequest)
Используйте метод isReadyToPay(isReadyToPayRequest), чтобы определить, может ли пользователь получить способ оплаты из Google Pay API.
Если браузер поддерживает Google Pay, isReadyToPay возвращает true. Чтобы определить, вошел ли пользователь в аккаунт Google или сохранил ли он способ оплаты в Google Pay, задайте для IsReadyToPayRequest.existingPaymentMethodRequired значение true и убедитесь, что paymentMethodPresent возвращает true в разрешенном обещании. Подробнее: IsReadyToPayResponse.
Если PaymentsClient инициализируется со свойством среды TEST, paymentMethodPresent всегда возвращает true.
Аргументы
| Название | Описание |
|---|---|
isReadyToPayRequest |
Объект, содержащий способы оплаты, которые поддерживает продавец. Подробные сведения о настраиваемых свойствах приведены в статье IsReadyToPayRequest.
|
Возвраты
| Тип | Описание |
|---|---|
Promise |
Resolved. Объект, содержащий информацию о платежеспособности пользователя. Подробные сведения можно найти в статье о типе Rejected. Объект ошибки, содержащий дополнительную информацию о причине отклонения. Подробные сведения можно найти в статье о типе |
Ошибки
| statusCode | Описание |
|---|---|
DEVELOPER_ERROR |
|
loadPaymentData(paymentDataRequest)
Этот метод позволяет открыть страницу оплаты Google Pay, на которой можно выбрать способ оплаты и настроить дополнительные параметры.
Этот метод должен вызываться, когда браузер обрабатывает поведение активации в результате события клика. Пользователю может быть показано всплывающее окно, в котором он сможет выбрать способ оплаты или указать другие данные, необходимые для выполнения запроса.
Аргументы
| Название | Описание |
|---|---|
paymentDataRequest |
Объект, содержащий пары "ключ-значение" полной конфигурации Google Pay API.
Список настраиваемых свойств приведен в разделе PaymentDataRequest. |
Возвраты
| Тип | Описание |
|---|---|
Promise |
Resolved: объект, содержащий запрошенные данные о покупателе. Подробную информацию можно найти в разделе PaymentData. Rejected (Отклонено). Объект, содержащий код ошибки и дополнительную информацию о причине отклонения. Подробную информацию можно найти в разделе PaymentsError. |
Ошибки
| statusCode | Описание |
|---|---|
CANCELED |
|
DEVELOPER_ERROR |
Переданный объект PaymentDataRequest неправильно отформатирован, в нем отсутствуют минимально необходимые параметры или содержится недопустимый параметр и/или значение. |
prefetchPaymentData(paymentDataRequest)
Используйте этот метод, чтобы предварительно получить конфигурацию PaymentDataRequest и сократить время выполнения loadPaymentData при последующем взаимодействии с пользователем. Значение не возвращается.
Оптимизация предзагрузки доступна в Chrome для Android.
Аргументы
| Название | Описание |
|---|---|
paymentDataRequest |
Объект, содержащий пары "ключ-значение" полной конфигурации Google Pay API.
Список настраиваемых свойств приведен в разделе PaymentDataRequest. Изменение свойства transactionInfo не влияет на кешированное значение предзагрузки. |
Обратные вызовы платежных данных
Следующие обработчики обратных вызовов можно передать в PaymentOptions.paymentDataCallbacks для поддержки авторизации платежей и динамического ценообразования.
onPaymentAuthorized(paymentData)
Этот метод вызывается, когда платеж авторизуется в окне оплаты.
Аргументы
| Название | Описание |
|---|---|
paymentData |
Объект, содержащий запрошенные данные покупателя. Подробную информацию можно найти в статье PaymentData. |
Возвраты
| Тип | Описание |
|---|---|
Promise |
Resolved. Объект, содержащий информацию о результатах платежной транзакции.
Подробную информацию можно найти в статье Отклонено. Объект ошибки с намерением ошибки и сообщением, которое будет показано на платежной странице. Подробную информацию можно найти в статье |
onPaymentDataChanged(intermediatePaymentData)
Этот метод обрабатывает изменения платежных данных в окне оплаты, например адреса и способа доставки.
Аргументы
Здравствуйте!| Название | Описание |
|---|---|
intermediatePaymentData |
Объект, который содержит выбранный адрес и способ доставки. Подробную информацию можно найти в статье IntermediatePaymentData. |
Возвраты
| Тип | Описание |
|---|---|
Promise |
Resolved. Объект, содержащий информацию о новой транзакции, способах доставки и ошибках в платежных данных. Подробную информацию можно найти в статье Отклонено. Объект ошибки с намерением ошибки и сообщением, которое будет показано на платежной странице. Подробную информацию можно найти в статье |