W tym dokumencie opisano opcje obiektu odpowiedzi interfejsu Google Pay API, których można używać w aplikacji. Obiekty odpowiedzi to obiekty zwracane przez metody klienta interfejsu Google Pay API.
PaymentData
Jest to obiekt odpowiedzi zwracany przez Google po zatwierdzeniu płatności przez płatnika.
PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
apiVersion |
liczba | Tak | Wersja główna interfejsu API. Wartość w odpowiedzi jest zgodna z wartością podaną w |
apiVersionMinor |
liczba | Tak | Wersja podrzędna interfejsu API. Wartość w odpowiedzi jest zgodna z wartością podaną w |
paymentMethodData |
PaymentMethodData | Tak | Dane o wybranej formie płatności. |
email |
tekst | Nie | Adres e-mail, jeśli parametr emailRequired jest ustawiony na true w obiekcie
PaymentDataRequest.
Jeśli w innym żądaniu właściwość ma wartość true, nie ma to żadnego wpływu. |
shippingAddress |
Adres | Nie | Adres dostawy, jeśli parametr shippingAddressRequired jest ustawiony na true w
|
Przykład
Ten przykładowy kod odpowiedzi dla interfejsu Google Pay API w wersji 2.0 pokazuje formę płatności CARD wybraną w arkuszu płatności Google Pay. Wygenerowano token formy płatności dla bramki 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
Ten obiekt dostarcza dane dotyczące wybranej formy płatności.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
type |
tekst | Tak |
PaymentMethod
type wybrane w arkuszu płatności Google Pay.
|
description |
tekst | Tak | Wiadomość dla użytkownika opisująca formę płatności, która finansuje tę transakcję. |
info |
obiekt | Tak | Wartość tej właściwości zależy od zwróconej formy płatności type.
Więcej informacji o CARD znajdziesz w artykule CardInfo.
|
tokenizationData |
PaymentMethodTokenizationData | Nie | Dane tokenizacji płatności dla wybranej formy płatności. |
Przykład
Ten przykładowy komunikat odpowiedzi pokazuje, jak forma płatności CARD wybrana w arkuszu płatności Google Pay generuje token formy płatności dla bramki example.
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
Ten obiekt dostarcza informacje o wybranej karcie płatniczej.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
cardDetails |
tekst | Tak | Szczegóły karty. Ta wartość to zwykle ostatnie 4 cyfry wybranego numeru rachunku bankowego powiązanego z kontem płatności. |
assuranceDetails |
AssuranceDetailsSpecifications | Tak | Ten obiekt dostarcza informacje o weryfikacji przeprowadzonej na zwróconych danych karty, jeśli parametr assuranceDetailsRequired jest ustawiony na true w
CardParameters.
|
cardNetwork |
tekst | Tak | Sieć kart płatniczych wybranej płatności.
Zwracane wartości są zgodne z formatem Ta wartość sieci kart nie powinna być wyświetlana kupującemu. Jest on używany, gdy potrzebne są dane karty kupującego. Na przykład jeśli obsługa klienta potrzebuje tej wartości, aby zidentyfikować kartę, której kupujący użył do transakcji. Jeśli chcesz, aby opis był widoczny dla użytkownika, użyj właściwości |
billingAddress |
Adres | Nie | Adres rozliczeniowy powiązany z podaną formą płatności, jeśli parametr billingAddressRequired jest ustawiony na true w
CardParameters. |
cardFundingSource |
tekst | Tak | Źródło finansowania karty w przypadku wybranej formy płatności.
|
Przykład
Ten przykład pokazuje kartę w sieci Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
AssuranceDetailsSpecifications
Ten obiekt dostarcza informacji o tym, jaka weryfikacja została przeprowadzona na zwróconych danych uwierzytelniających płatność, aby można było zastosować odpowiednie kontrole ryzyka instrumentu.
| Nazwa | Typ | Opis |
|---|---|---|
accountVerified |
wartość logiczna | Jeśli true, oznacza to, że na zwróconych danych uwierzytelniających płatności przeprowadzona została weryfikacja posiadacza karty Cardholder. |
cardHolderAuthenticated |
wartość logiczna |
Jeśli Jeśli |
Możesz otrzymać i przetworzyć obiekt odpowiedzi, nawet jeśli nie używasz pola assuranceDetails. Aby otrzymać ten obiekt, uwzględnij assuranceDetailsRequired: true w obiekcie żądania
CardParameters.
PaymentMethodTokenizationData
Ten obiekt dostarcza dane tokenizacji dla formy płatności.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
type |
tekst | Tak | Rodzaj tokenizacji, który ma zostać zastosowany do wybranej formy płatności.
Ta wartość odpowiada wartości type ustawionej w
PaymentMethodTokenizationSpecification.
|
token |
tekst | Nie | Wygenerowany token formy płatności.
|
Przykład
To jest przykład odpowiedzi z tokenem przygotowanej dla bramy example.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
Ten obiekt dostarcza informacje o wyniku autoryzacji płatności.
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
transactionState |
Ciąg znaków | Wymagane | Stan transakcji jest określany przez jeden z tych wyników sprzedawcy:
|
error |
PaymentDataError | Opcjonalny | Błąd, który zostanie wyświetlony w arkuszu płatności, gdy konieczne będzie ponowienie płatności. |
Przykład
Poniższy przykład pokazuje wynik płatności zwrócony po przetworzeniu płatności:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
reason |
Ciąg znaków | Wymagane | Lista wstępnie zdefiniowanych przyczyn błędów:
|
message |
Ciąg znaków | Wymagane | Komunikat o błędzie wyświetlany użytkownikowi w oknie. |
intent |
Ciąg znaków | Wymagane | Intencja błędu.
|
Przykład
Ten przykład pokazuje intencję błędu i komunikat, który ma zostać wyświetlony w arkuszu płatności.
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
Adres
Ten obiekt dostarcza informacje o żądanym adresie pocztowym. Wszystkie właściwości są ciągami znaków.
Adresy mogą być zwracane w formatach MIN, FULL i FULL-ISO3166. Właściwości poszczególnych formatów znajdziesz w tabeli poniżej.
| Właściwość | Format adresu | Opis |
|---|---|---|
name |
MIN, FULL, FULL-ISO3166 |
Pełne imię i nazwisko adresata. |
postalCode |
MIN, FULL, FULL-ISO3166 |
Kod pocztowy. |
countryCode |
MIN, FULL, FULL-ISO3166 |
Kod kraju w formacie ISO 3166-1 alfa-2. |
phoneNumber |
MIN, FULL, FULL-ISO3166 |
Numer telefonu, jeśli parametr phoneNumberRequired jest ustawiony na true w obiekcie
PaymentDataRequest.
|
address1 |
FULL, FULL-ISO3166 |
Pierwszy wiersz adresu. |
address2 |
FULL, FULL-ISO3166 |
Drugi wiersz adresu. |
address3 |
FULL, FULL-ISO3166 |
Trzeci wiersz adresu. |
locality |
FULL, FULL-ISO3166 |
Miasto, miasteczko, dzielnica lub przedmieście. |
administrativeArea |
FULL, FULL-ISO3166 |
Podział administracyjny kraju, np. stan lub województwo. |
sortingCode |
FULL, FULL-ISO3166 |
Kod banku. |
iso3166AdministrativeArea |
FULL-ISO3166 |
Kod regionu ISO 3166-2 odpowiadający wartości administrativeArea. |
Przykład
Oto przykład adresu w formacie FULL-ISO3166 w Stanach Zjednoczonych z wieloma wierszami danych adresu.
{ "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" }
IntermediatePaymentData
Ten obiekt jest zwracany przez dane wejściowe onPaymentDataChanged() interfejsu Google Pay API, gdy adres dostawy lub opcje dostawy zostaną zmienione w arkuszu płatności.
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
callbackTrigger |
Ciąg znaków | Opcjonalny | Opisuje powód wywołania zwrotnego danych karty.
|
shippingAddress |
IntermediateAddress | Opcjonalny | Adres wybrany w arkuszu płatności. |
shippingOptionData |
SelectionOptionData | Opcjonalny | Opcja dostawy wybrana w arkuszu płatności. |
paymentMethodData |
IntermediatePaymentMethodData | Opcjonalny | Dane formy płatności wybranej w arkuszu płatności. |
Przykłady
Ten przykład pokazuje ładunek pośredni zwracany przez interfejs Google Pay API w przypadku zmian adresu dostawy.
{ "callbackTrigger": "SHIPPING_ADDRESS", "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
Ten przykład pokazuje ładunek pośredni zwracany po zmianie formy płatności.
{ "callbackTrigger": "PAYMENT_METHOD", "paymentMethodData": { "type": "CARD", "info": { "cardNetwork": "VISA", "cardFundingSource": "CREDIT", "billingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" } } } }
IntermediateAddress
Adres pośredni zawiera ukryty adres dostawy (bez ulicy i nazwy odbiorcy), aby umożliwić obliczenie odpowiedniego podatku i opcji dostawy, zanim użytkownik autoryzuje płatność.
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
administrativeArea |
Ciąg znaków | Wymagane | Podział administracyjny kraju, np. stan lub województwo. |
countryCode |
Ciąg znaków | Wymagane | Kod kraju w formacie ISO 3166-1 alfa-2. |
locality |
Ciąg znaków | Wymagane | Miasto, miasteczko, dzielnica lub przedmieście. |
postalCode |
Ciąg znaków | Wymagane | Zredagowany kod pocztowy na podstawie kraju. W przypadku Kanady i Wielkiej Brytanii zawiera tylko pierwsze 3 znaki. W przypadku Stanów Zjednoczonych zawiera on 5 pierwszych cyfr. |
iso3166AdministrativeArea |
Ciąg znaków | Opcjonalny |
Kod regionu ISO 3166-2 odpowiadający wartości administrativeArea. Widoczny tylko wtedy, gdy format adresu dostawy to FULL-ISO3166.
|
Przykład
Ten przykład pokazuje adres wybrany w arkuszu płatności.
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
id |
Ciąg znaków | Wymagane | Dopasowania do: SelectionOption.id |
Przykład
Ten przykład pokazuje opcję dostawy wybraną w arkuszu płatności.
{ "id": "shipping-001" }
IntermediatePaymentMethodData
Ten obiekt zawiera ograniczone informacje o wybranej formie płatności na potrzeby wywołań zwrotnych dewelopera.
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
type |
tekst | Wymagane | Rodzaj formy płatności. W przypadku tego wywołania zwrotnego obsługiwana jest tylko wartość CARD. |
info |
IntermediateCardInfo | Opcjonalny | Informacje o wybranej karcie. Widoczny tylko wtedy, gdy type ma wartość CARD. |
IntermediateCardInfo
Ten obiekt zawiera ograniczone informacje o wybranej karcie, używane w wywołaniach zwrotnych dewelopera.
| Właściwość | Typ | Konieczność | Opis |
|---|---|---|---|
billingAddress |
IntermediateAddress | Opcjonalny | adres rozliczeniowy powiązany z kartą, Pole jest wypełniane tylko wtedy, gdy adres rozliczeniowy jest ustawiony jako wymagany. |
cardNetwork |
tekst | Opcjonalny | Organizacja płatnicza wybranej karty płatniczej. Zwracane wartości są zgodne z formatem Ta wartość sieci kart nie powinna być wyświetlana kupującemu. |
cardFundingSource |
tekst | Opcjonalny | Źródło finansowania dla wybranej karty płatniczej.
|