В этом справочнике описываются параметры объектов ответа API Google Pay для использования на вашем веб-сайте. Объекты ответа — это объекты, возвращаемые клиентскими методами API Google Pay.
IsReadyToPayResponse
Этот объект предоставляет информацию о способности посетителя веб-сайта предоставить платежную информацию сайту, который ее запрашивает.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
result | булев | Да | Текущий посетитель может предоставить платёжную информацию запрашивающему её сайту. Платёжеспособность посетителя может быть связана с возможностью его веб-браузера отображать необходимые компоненты для указанных способов оплаты. Это включает в себя вход в учётную запись Google и указание способа оплаты. |
paymentMethodPresent | булев | Нет | Если Существует только в том случае, если Если |
Пример
В следующем примере показано, когда текущий посетитель может предоставить платежную информацию сайту, который ее запрашивает.
{ "result": true }
PaymentData
Это объект ответа, который возвращается Google после того, как плательщик одобряет платеж.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
apiVersion | число | Да | Основная версия API. Значение в ответе совпадает со значением, указанным в PaymentDataRequest . |
apiVersionMinor | число | Да | Версия API младшего уровня. Значение в ответе соответствует значению, указанному в PaymentDataRequest . |
paymentMethodData | PaymentMethodData | Да | Данные о выбранном способе оплаты. |
email | нить | Нет | Адрес электронной почты, если emailRequired имеет значение true в PaymentDataRequest .Если в другом запросе свойство установлено как true , то это не даст никакого эффекта. |
shippingAddress | Адрес | Нет | Адрес доставки, если shippingAddressRequired имеет значение true в PaymentDataRequest . |
Пример
В этом примере ответа для API Google Pay версии 2.0 на странице оплаты Google Pay выбран способ оплаты CARD . Для example шлюза был сгенерирован токен способа оплаты.
{ "apiVersion": 2, "apiVersionMinor": 0, "paymentMethodData": { "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } } }
ПромежуточныеПлатежныеДанные
Этот объект возвращается методом onPaymentDataChanged() API Google Pay при изменении адреса доставки или вариантов доставки на платежной странице.
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
callbackTrigger | Нить | Необязательный | Описывает причину, по которой был вызван обратный вызов платежных данных.
|
offerData | OfferData | Необязательный | Промокод, предоставленный пользователем. |
shippingAddress | ПромежуточныйАдрес | Необязательный | Выбранный адрес в платежном листе. |
shippingOptionData | SelectionOptionData | Необязательный | Выбранный вариант доставки в платежном листе. |
Пример
В этом примере показана промежуточная полезная нагрузка, возвращаемая API Google Pay.
{ "callbackTrigger": "SHIPPING_ADDRESS", "offerData": { "redemptionCode": "exampleCode" }, "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
PaymentMethodData
Этот объект предоставляет данные для выбранного способа оплаты.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
type | нить | Да | PaymentMethod type , выбранный на платежной странице Google Pay. |
description | нить | Да | Сообщение для пользователя, описывающее способ оплаты, с помощью которого финансируется данная транзакция. |
info | объект | Да | Значение этого свойства зависит от возвращаемого type способа оплаты. Для CARD см. CardInfo . |
tokenizationData | МетодОплатыТокенизацияДанные | Нет | Данные токенизации платежей для выбранного способа оплаты. |
Пример
В этом примере ответа показано, как способ оплаты CARD , выбранный на платежной странице Google Pay, генерирует токен способа оплаты для шлюза в example .
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
Данный объект предоставляет информацию о выбранной платежной карте.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
cardDetails | нить | Да | Данные карты. Обычно это последние четыре цифры номера выбранного платёжного счёта. |
assuranceDetails | ГарантияДеталиХарактеристики | Да | Этот объект предоставляет информацию о проверке, выполненной для возвращенных платежных данных, если параметру assuranceDetailsRequired присвоено значение true в ПараметрыКарты . |
cardNetwork | нить | Да | Платежная система выбранной карты. Возвращаемые значения соответствуют формату Это значение сети карты не должно отображаться покупателю. Оно используется, когда требуются данные карты покупателя. Например, если службе поддержки клиентов требуется это значение для идентификации карты, которую покупатель использовал для транзакции. Для описания, видимого пользователю, используйте свойство |
billingAddress | Адрес | Нет | Платежный адрес, связанный с предоставленным способом оплаты, если billingAddressRequired имеет значение true в ПараметрыКарты . |
cardFundingSource | нить | Да | Источник пополнения карты для выбранного способа оплаты.
|
Пример
В этом примере показана карта в сети Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
ГарантияДеталиХарактеристики
Этот объект предоставляет информацию о том, какая проверка была выполнена в отношении возвращенных платежных данных, чтобы можно было применить соответствующие проверки риска инструмента.
| Имя | Тип | Описание |
|---|---|---|
accountVerified | булев | Если true , это означает, что проверка владельца Cardholder на предмет владения возвращенными платежными данными была выполнена. |
cardHolderAuthenticated | булев | Если Если |
Вы можете получить и обработать объект ответа, даже если не используете поле assuranceDetails . Чтобы получить этот объект, добавьте assuranceDetailsRequired: true в поле запроса. ПараметрыКарты .
МетодОплатыТокенизацияДанные
Этот объект предоставляет данные токенизации для способа оплаты.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
type | нить | Да | Тип токенизации, применяемый к выбранному способу оплаты. Это значение соответствует type заданному в PaymentMethodTokenizationSpecification . |
token | нить | Нет | Сгенерированный токен способа оплаты.
|
Пример
Это пример токенизированного ответа, подготовленного для example шлюза.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
Результат авторизации платежа
Этот объект предоставляет информацию о результате авторизации платежа.
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
transactionState | Нить | Необходимый | Состояние транзакции определяется одним из следующих результатов продавца:
|
error | PaymentDataError | Необязательный | Ошибка, которая будет отображена на платежной странице для пользователя, когда необходимо повторить попытку платежа. |
Пример
В следующем примере показан возврат результата платежа после его обработки:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
reason | Нить | Необходимый | Список предопределенных причин ошибок:
|
message | Нить | Необходимый | Сообщение об ошибке для пользователя, отображаемое в диалоговом окне. |
intent | Нить | Необходимый | Цель ошибки. Она должна быть зарегистрирована в
|
Пример
В этом примере показано намерение исправить ошибку и сообщение, которое будет отображено на платежной ведомости.
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
Адрес
Этот объект предоставляет информацию о запрошенном почтовом адресе. Все свойства являются строками.
Адреса могут быть возвращены в форматах MIN , FULL и FULL-ISO3166 . Свойства каждого формата представлены в следующей таблице.
| Свойство | Формат адреса | Описание |
|---|---|---|
name | MIN , FULL , FULL-ISO3166 | Полное имя адресата. |
postalCode | MIN , FULL , FULL-ISO3166 | Почтовый индекс. |
countryCode | MIN , FULL , FULL-ISO3166 | Код страны ISO 3166-1 alpha-2. |
phoneNumber | MIN , FULL , FULL-ISO3166 | Номер телефона, если в параметре phoneNumberRequired установлено значение true PaymentDataRequest . |
address1 | FULL , FULL-ISO3166 | Первая строка адреса. |
address2 | FULL , FULL-ISO3166 | Вторая строка адреса. |
address3 | FULL , FULL-ISO3166 | Третья строка адреса. |
locality | FULL , FULL-ISO3166 | Город, поселок, район или пригород. |
administrativeArea | FULL , FULL-ISO3166 | Подразделение страны, например штат или провинция. |
sortingCode | FULL , FULL-ISO3166 | Код сортировки. |
iso3166AdministrativeArea | FULL-ISO3166 | Код административной зоны ISO 3166-2, соответствующий AdministrativeArea. |
Пример
Это пример адреса в формате FULL-ISO3166 в США с несколькими строками данных адреса.
{ "name": "John Doe", "address1": "c/o Google LLC", "address2": "1600 Amphitheatre Pkwy", "address3": "Building 40", "locality": "Mountain View", "administrativeArea": "CA", "countryCode": "US", "postalCode": "94043", "sortingCode": "" "iso3166AdministrativeArea": "US-CA" }
ПромежуточныйАдрес
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
administrativeArea | Нить | Необходимый | Подразделение страны, например штат или провинция. |
countryCode | Нить | Необходимый | Код страны ISO 3166-1 alpha-2. |
locality | Нить | Необходимый | Город, поселок, район или пригород. |
postalCode | Нить | Необходимый | Исправленный почтовый индекс страны. Для Канады и Великобритании он содержит только первые три символа. Для США он содержит первые пять цифр. |
iso3166AdministrativeArea | Нить | Необязательный | Код административной зоны ISO 3166-2, соответствующий административной зоне. Присутствует только в случае, если адрес доставки имеет формат FULL-ISO3166 . |
Пример
В этом примере показан адрес, выбранный в платежном листе.
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
id | Нить | Необходимый | Совпадает с SelectionOption.id |
Пример
В этом примере показан вариант доставки, выбранный на листе оплаты.
{ "id": "shipping-001" }
OfferData
Этот объект предоставляет информацию о коде предложения, введенном в платежный лист.
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
redemptionCodes | множество | Всегда существует | Набор промокодов, внесённых в платёжный лист. Включает уже одобренные коды. |
Пример
В следующем примере показан объект OfferData с массивом redemptionCodes .
"offerData": { "redemptionCodes": ["PROMOTIONALCODE"] }