В этом справочнике описаны параметры объектов ответа API Google Pay, которые можно использовать в вашем приложении. Объекты ответа — это объекты, возвращаемые методами клиента API Google Pay.
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" } } }
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 | логический | Если Если |
Вы можете получить и обработать объект ответа, даже если не используете поле assuranceDetails . Чтобы получить этот объект, добавьте assuranceDetailsRequired: true в объект Request. CardParameters .
PaymentMethodTokenizationData
Этот объект предоставляет данные токенизации для способа оплаты.
| Свойство | Тип | Всегда существует | Описание |
|---|---|---|---|
type | нить | Да | Тип токенизации, применяемый к выбранному способу оплаты. Это значение соответствует type установленному в PaymentMethodTokenizationSpecification . |
token | нить | Нет | Сгенерированный токен способа оплаты.
|
Пример
Это пример токенизированного ответа, подготовленного для example шлюза.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
Адрес
Этот объект предоставляет информацию о запрошенном почтовом адресе. Все свойства являются строками.
Адреса могут возвращаться в форматах 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" }
Промежуточные платежные данные
Этот объект возвращается функцией 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" } }
Результат авторизации платежа
Этот объект предоставляет информацию о результате авторизации платежа.
| Свойство | Тип | Необходимость | Описание |
|---|---|---|---|
transactionState | Нить | Необходимый | Состояние транзакции определяется одним из следующих результатов, полученных от продавца:
|
error | PaymentDataError | Необязательный | Ошибка, которая должна отображаться в платежной ведомости для пользователя, когда необходимо повторить платеж. |
Пример
В следующем примере показан результат обработки платежа:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }