В этом справочнике описаны параметры объектов ответа 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 . |
Пример
В этом примере ответа для Google Pay API версии 2.0 показан способ оплаты CARD , выбранный в платежной форме Google Pay. Для 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 | PaymentMethodTokenizationData | Нет | Данные токенизации платежа для выбранного способа оплаты. |
Пример
В этом примере ответа показано, как выбранный в Google Pay способ оплаты CARD генерирует токен способа оплаты для example шлюза.
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
Информация о карте
Этот объект предоставляет информацию о выбранной платежной карте.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
cardDetails | нить | Да | Информация о карте. Обычно это последние четыре цифры номера выбранного платежного счета. |
assuranceDetails | Подробности гарантииСпецификации | Да | Этот объект предоставляет информацию о проверке, выполненной над возвращаемыми платежными данными, если параметр assuranceDetailsRequired имеет значение true CardParameters . |
cardNetwork | нить | Да | Платежная сеть выбранной платежной карты. Возвращаемые значения соответствуют формату Это значение платежной системы не должно отображаться покупателю. Оно используется, когда необходимы данные карты покупателя. Например, если службе поддержки клиентов требуется это значение для идентификации карты, использованной покупателем для совершения транзакции. Для отображения описания пользователю используйте свойство |
billingAddress | Адрес | Нет | Платежный адрес, связанный с указанным способом оплаты, если для billingAddressRequired установлено значение true . CardParameters . |
cardFundingSource | нить | Да | Источник пополнения карты для выбранного способа оплаты.
|
Пример
В этом примере показана карта, работающая в сети Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
Подробности гарантииСпецификации
Этот объект предоставляет информацию о том, какая проверка была выполнена в отношении возвращенных платежных данных, чтобы можно было применить соответствующие проверки рисков инструмента.
| Имя | Тип | Описание |
|---|---|---|
accountVerified | логический | Если true , это означает, что была выполнена проверка владения Cardholder возвращенными платежными данными. |
cardHolderAuthenticated | логический | Если Если |
You can receive and process the response Object even if you don't use the assuranceDetails field. To receive this object, include assuranceDetailsRequired: true in the Request object's CardParameters .
PaymentMethodTokenizationData
Этот объект предоставляет данные токенизации для способа оплаты.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
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, соответствующий administrativeArea. Присутствует только в том случае, если формат адреса доставки — 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"] }