Справочные материалы о клиенте

Ознакомьтесь с этими справочными материалами, чтобы узнать о методах работы с клиентом JavaScript, необходимых для интеграции Google Pay API с веб-приложениями.

Конструктор

Инициализирует объект PaymentsClient. Вызов конструктора должен предшествовать вызову любых методов этого объекта.

new PaymentsClient(paymentOptions)

Аргументы

Свойство Описание
paymentOptions

Объект, содержащий пары "ключ – значение" для настройки Google Pay API. Подробная информация о различных настраиваемых свойствах есть в разделе PaymentOptions.

Пример: {environment:'PRODUCTION'}

Возвращаемые значения

Тип Описание
google.payments.api.PaymentsClient Объект PaymentsClient.

Исключения

Тип Описание
Error

Передано неподдерживаемое значение свойства environment.

Методы объекта

createButton(options)

Этот метод предназначен для создания на веб-странице фирменной кнопки оплаты через Google Pay.

Элемент HTMLElement включает динамически встроенную каскадную таблицу стилей (CSS). Он также содержит изображение в формате SVG, загруженное из CDN компании Google.

Подробнее о том, как выбрать подходящий цвет и тип кнопки для дизайна вашего сайта, рассказывается в руководстве по использованию бренда Google Play. Возможно, вам потребуется изменить размеры кнопки, чтобы она соответствовала другим кнопкам или элементам оформления покупки на странице. Настроить кнопку для своего случая можно с помощью инструмента Настроить кнопку.

Аргументы

Название Описание
options

Объект, содержащий пары "ключ-значение" для настройки кнопок. Подробная информация о настраиваемых свойствах есть в разделе ButtonOptions.

Пример: {onClick:onGooglePaymentButtonClicked}

Возвращаемые значения

Тип Описание
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

Выполнено. Объект, содержащий сведения о платежеспособности пользователя. Дополнительную информацию можно найти в разделе IsReadyToPayResponse.

Отклонено. Объект ошибки, содержащий более подробную информацию о причине отказа. Дополнительную информацию можно найти в разделе PaymentsError.

Ошибки

statusCode Описание
DEVELOPER_ERROR
  • Неверный формат переданного объекта IsReadyToPayRequest. Указано недостаточно параметров для определения готовности пользователя к оплате, или в объекте содержатся недопустимые параметр и/или значение.
  • Платежная система или браузер не выполнили запрос в данном контексте безопасности. Такое случается, когда данные передаются без шифрования.

loadPaymentData(paymentDataRequest)

Показывает страницу оплаты Google Pay, где можно выбирать способы оплаты и при необходимости изменять настройки.

Этот метод должен быть вызван в то время, когда браузер обрабатывает поведение активации в результате события клика. Во всплывающем окне пользователю будет предложено выбрать способ оплаты или другие необходимые данные, указанные в параметрах переданного запроса.

Аргументы

Название Описание
paymentDataRequest Объект, содержащий пары "ключ-значение" для полной настройки Google Pay API. Информация о настраиваемых свойствах приводится в разделе PaymentDataRequest.

Возвращаемые значения

Тип Описание
Promise

Решение. Объект, содержащий запрошенные данные о покупателе. Подробная информация есть в разделе PaymentData.

Отклонено. Объект, содержащий код ошибки и более подробную информацию о причине отказа. Подробная информация есть в разделе PaymentsError.

Ошибки

statusCode Описание
CANCELED
  • Вошедший в учетную запись пользователь Google или используемый в данный момент браузер не поддерживаются.
  • Покупатель закрыл страницу оплаты Google Pay, не авторизовав платеж.
  • Платежная система или браузер не выполнили запрос в данном контексте безопасности. Такое случается, когда данные передаются без шифрования.
  • Метод был вызван, пока была открыта страница оплаты.
  • Переданный объект PaymentDataRequest был отклонен страницей оплаты. Обычно это происходит, когда параметры PaymentMethodTokenizationSpecification для шлюза не настроены или настроены не полностью, а также когда значения параметров недопустимы.
DEVELOPER_ERROR Неверный формат переданного объекта PaymentDataRequest. Указано недостаточно параметров, или в объекте содержится недопустимый параметр и/или значение.

prefetchPaymentData(paymentDataRequest)

Используется для предзагрузки конфигурации PaymentDataRequest, чтобы уменьшить время обработки loadPaymentData во время последующего взаимодействия пользователя с приложением. Значения не отображаются.

Оптимизация предварительной выборки доступна в Chrome для Android.

Аргументы

Название Описание
paymentDataRequest Объект, содержащий пары "ключ-значение" для полной настройки Google Pay API. Информация о настраиваемых свойствах приводится в разделе PaymentDataRequest. Изменение свойства transactionInfo не повлияет на кешированное предзагружаемое значение.

Обратные вызовы платежных данных

Для поддержки авторизации платежей и динамического обновления цен в функцию PaymentOptions.paymentDataCallbacks можно передать следующие обработчики обратного вызова:

onPaymentAuthorized(paymentData)

Этот метод вызывается, когда платеж авторизуется на странице оплаты.

Аргументы

Имя Описание
paymentData Объект, содержащий запрошенные данные о покупателе. Подробная информация есть в разделе PaymentData.

возврат товаров;

Тип Описание
Promise

Выполнено. Объект, содержащий сведения о результатах транзакции. Подробная информация есть в разделе PaymentAuthorizationResult.

Отклонено. Объект, который содержит значение ошибки и сообщение, которое соответствует ей на странице оплаты. Подробная информация есть в разделе PaymentDataError.

onPaymentDataChanged(intermediatePaymentData)

Используется для обработки изменений данных, например адреса доставки и настроек доставки.

Аргументы

Имя Описание
intermediatePaymentData Объект, который включает выбранный адрес и способ доставки. Подробная информация есть в разделе IntermediatePaymentData.

возврат товаров;

Тип Описание
Promise

Выполнено. Объект, который содержит сведения о новых данных по транзакции, способе доставки и ошибках в платежных данных. Подробная информация есть в разделе PaymentDataRequestUpdate.

Отклонено. Объект, который содержит значение ошибки и сообщение, которое соответствует ей на странице оплаты. Подробная информация есть в разделе PaymentDataError.