W tym artykule znajdziesz opis opcji związanych z obiektami odpowiedzi Google Pay API do wykorzystania w witrynie. Obiekty odpowiedzi są obiektami zwracanymi przez metody klienta Google Pay API.
IsReadyToPayResponse
Ten obiekt zawiera informacje o możliwości podania przez użytkownika danych karty w witrynie, która wysłała żądanie.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
result |
Wartość logiczna | Tak | Bieżący użytkownik może podać dane karty w witrynie, która wysłała żądanie. Zdolność użytkownika do dokonania płatności może zależeć od tego, czy przeglądarka wyświetla wymagane elementy form płatności. Obejmuje to logowanie się na konto Google i wybór formy płatności. |
paymentMethodPresent |
Wartość logiczna | Nie |
Jeśli jest ustawiona wartość Istnieje tylko wtedy, gdy Jeśli |
Przykład
Poniższy przykład wskazuje, kiedy bieżący użytkownik może podać dane karty w witrynie, która wysłała żądanie.
{ "result": true }
PaymentData
To jest obiekt odpowiedzi zwracany przez Google po tym, jak płatnik zatwierdzi płatność.
PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
apiVersion |
Liczba | Tak | Główny numer wersji interfejsu API. Wartość w odpowiedzi jest zgodna z wartością w
PaymentDataRequest. |
apiVersionMinor |
liczba | Tak | Pomocniczy numer wersji interfejsu API. Wartość w odpowiedzi jest zgodna z wartością w
PaymentDataRequest. |
paymentMethodData |
PaymentMethodData | Tak | Informacje o wybranej formie płatności. |
email |
Ciąg znaków | Nie | Adres e-mail, jeśli właściwość emailRequired jest ustawiona jako true w
PaymentDataRequest.
Jeśli inne żądanie ma właściwość ustawioną jako true, nic się nie dzieje. |
shippingAddress |
Adres | Nie | Adres dostawy, jeśli właściwość shippingAddressRequired jest ustawiona jako true w
PaymentDataRequest. |
Przykład
Ta przykładowa odpowiedź wykorzystująca Google Pay API w wersji 2.0 wskazuje formę płatności CARD wybraną w arkuszu płatności Google Pay. Dla bramy example został wygenerowany token formy płatności.
{ "apiVersion": 2, "apiVersionMinor": 0, "paymentMethodData": { "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } } }
IntermediatePaymentData
To jest obiekt zwracany przez parametr onPaymentDataChanged() Google Pay API, gdy zmienią się adres dostawy lub opcje dostawy w arkuszu płatności.
| Właściwość | Typ | Czy jest wymagana | Opis |
|---|---|---|---|
callbackTrigger |
Ciąg znaków | Opcjonalna | Opisuje powód wywołania zwrotnego danych płatności.
|
offerData |
OfferData | Opcjonalna | Kod promocyjny podany przez użytkownika. |
shippingAddress |
IntermediateAddress | Opcjonalna | Adres wybrany w arkuszu płatności. |
shippingOptionData |
SelectionOptionData | Opcjonalna | Opcja dostawy wybrana w arkuszu płatności. |
Przykład
Ten przykład zawiera pośredni ładunek zwracany z Google Pay API.
{ "callbackTrigger": "SHIPPING_ADDRESS", "offerData": { "redemptionCode": "exampleCode" }, "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
PaymentMethodData
Ten obiekt dostarcza dane dla wybranej formy płatności.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
type |
Ciąg znaków | Tak |
PaymentMethod
type wybrany w arkuszu płatności Google Pay.
|
description |
ciąg tekstowy | Tak | Wiadomość dla użytkownika, która opisuje formę płatności wybraną dla tej transakcji. |
info |
Obiekt | Tak | Wartość tej właściwości zależy od zwróconej wartości type danej formy płatności.
Informacje dotyczące CARD znajdziesz w opisie właściwości CardInfo.
|
tokenizationData |
PaymentMethodTokenizationData | Nie | Dane tokenizacji płatności, które są używane przez wybraną formę płatności. |
Przykład
Ta przykładowa odpowiedź ilustruje, jak forma płatności CARD wybrana w arkuszu płatności Google Pay generuje token formy płatności dla bramy example.
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
Ten obiekt dostarcza informacji o wybranej karcie płatniczej.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
cardDetails |
Ciąg znaków | Tak | Informacje o karcie. Są to zwykle ostatnie 4 cyfry wybranego numeru konta płatności. |
assuranceDetails |
AssuranceDetailsSpecifications | Tak | Ten obiekt dostarcza informacje o weryfikacji przeprowadzonej na zwróconych danych płatności, jeśli właściwość assuranceDetailsRequired została ustawiona jako true w
CardParameters.
|
cardNetwork |
ciąg tekstowy | Tak | Sieć karty płatniczej wybranej płatności.
Zwracane wartości mają format jak Ta wartość sieci karty nie powinna wyświetlać się u kupującego. Jest używana, gdy są potrzebne informacje o jego karcie. Przykładem może być sytuacja, w której pracownik obsługi klienta potrzebuje tej wartości, aby zidentyfikować kartę użytą przez kupującego do transakcji. Aby wyświetlić opis widoczny dla użytkowników, użyj właściwości |
billingAddress |
Adres | Nie | Adres rozliczeniowy powiązany z podaną formą płatności, jeżeli właściwość billingAddressRequired została ustawiona jako true w
CardParameters.
|
cardFundingSource |
ciąg tekstowy | Tak | Źródło finansowania karty dla wybranej formy płatności.
|
Przykład
Ten przykład dotyczy karty 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.
| Imię i nazwisko | Typ | Opis |
|---|---|---|
accountVerified |
Wartość logiczna | Jeśli true, oznacza to, że na zwróconych danych uwierzytelniających płatności przeprowadzona została weryfikacja posiadania Cardholder. |
cardHolderAuthenticated |
Wartość logiczna |
Jeśli Jeśli |
Możesz otrzymywać i przetwarzać obiekt odpowiedzi, nawet jeśli nie używasz pola assuranceDetails. Aby otrzymać ten obiekt, w obiekcie żądania uwzględnij assuranceDetailsRequired: true w
CardParameters.
PaymentMethodTokenizationData
Ten obiekt dostarcza dane tokenizacji formy płatności.
| Właściwość | Typ | Zawsze istnieje | Opis |
|---|---|---|---|
type |
Ciąg znaków | Tak | Typ tokenizacji, który ma zostać użyty z wybraną formą płatności.
Ta wartość jest zgodna z wartością type w
PaymentMethodTokenizationSpecification.
|
token |
ciąg tekstowy | Nie | Wygenerowany token formy płatności.
|
Przykład
Oto przykład tokenizowanej odpowiedzi przygotowanej dla bramy example.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
Ten obiekt udostępnia informacje o wyniku autoryzacji płatności.
| Właściwość | Typ | Czy jest wymagana | Opis |
|---|---|---|---|
transactionState |
Ciąg znaków | Wymagana | Stan transakcji jest rozstrzygany przez jeden z tych wyników sprzedawcy:
|
error |
PaymentDataError | Opcjonalna | Błąd do wyświetlenia w arkuszu płatności użytkownika, gdy konieczne jest powtórzenie płatności. |
Przykład
Ten przykład ilustruje zwracany wynik płatności 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 | Czy jest wymagana | Opis |
|---|---|---|---|
reason |
Ciąg znaków | Wymagana | Lista zdefiniowanych przyczyn błędów:
|
message |
Ciąg znaków | Wymagana | Komunikat o błędzie wyświetlany użytkownikowi w oknie. |
intent |
Ciąg znaków | Wymagana | Intencja błędu. Musi być jedną z intencji zarejestrowanych w
|
Przykład
Ten przykład pokazuje intencję błędu i komunikat, który wyświetli się w arkuszu płatności.
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
Address
Ten obiekt dostarcza informacji o wymaganym adresie pocztowym. Wszystkie właściwości mają formę ciągu znaków.
Adresy mogą być zwracane w formatach MIN, FULL i FULL-ISO3166. Właściwości należące do poszczególnych formatów znajdziesz w tej tabeli.
| Właściwość | Format adresu | Opis |
|---|---|---|
name |
MIN, FULL, FULL-ISO3166 |
Imię i nazwisko adresata. |
postalCode |
MIN, FULL, FULL-ISO3166 |
Kod pocztowy. |
countryCode |
MIN, FULL, FULL-ISO3166 |
Kod kraju zgodny ze standardem ISO 3166-1 alpha-2. |
phoneNumber |
MIN, FULL, FULL-ISO3166 |
Numer telefonu, jeśli właściwość phoneNumberRequired została ustawiona jako true w
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, dzielnica lub przedmieście. |
administrativeArea |
FULL, FULL-ISO3166 |
Jednostka administracyjna w danym kraju, np. stan lub prowincja. |
sortingCode |
FULL, FULL-ISO3166 |
Kod banku. |
iso3166AdministrativeArea |
FULL-ISO3166 |
Kod regionu administracyjnego zgodny ze standardem ISO 3166-2 odpowiadający wartości administrativeArea. |
Przykład
Oto przykładowy adres w Stanach Zjednoczonych w formacie FULL-ISO3166 z danymi o ulicy i numerze umieszczonymi w kilku wierszach.
{ "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" }
IntermediateAddres
| Właściwość | Typ | Czy jest wymagana | Opis |
|---|---|---|---|
administrativeArea |
Ciąg znaków | Wymagana | Jednostka administracyjna w danym kraju, np. stan lub prowincja. |
countryCode |
Ciąg znaków | Wymagana | Kod kraju zgodny ze standardem ISO 3166-1 alpha-2. |
locality |
Ciąg znaków | Wymagana | Miasto, miejscowość, dzielnica lub przedmieście. |
postalCode |
Ciąg znaków | Wymagana | Usunięty kod pocztowy na podstawie kraju. W przypadku Kanady i Wielkiej Brytanii obejmuje tylko pierwsze 3 cyfry. W przypadku Stanów Zjednoczonych jest to pięć pierwszych cyfr. |
iso3166AdministrativeArea |
Ciąg znaków | Opcjonalna |
Kod regionu administracyjnego zgodny ze standardem ISO 3166-2 odpowiadający wartości administrativeArea. Występuje tylko wtedy, gdy format adresu dostawy to FULL-ISO3166.
|
Przykład
Ten przykład wskazuje adres wybrany w arkuszu płatności.
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| Właściwość | Typ | Czy jest wymagana | Opis |
|---|---|---|---|
id |
Ciąg znaków | Wymagana | Pasuje do SelectionOption.id |
Przykład
Ten przykład wskazuje opcję dostawy wybraną w arkuszu płatności.
{ "id": "shipping-001" }
OfferData
Ten obiekt dostarcza informacji o kodzie oferty wprowadzonym w arkuszu płatności.
| Właściwość | Typ | Czy jest wymagana | Opis |
|---|---|---|---|
redemptionCodes |
tablica | Zawsze istnieje | Zestaw kodów promocyjnych wpisanych w arkuszu płatności. Obejmuje kody, które zostały już zatwierdzone. |
Przykład
Poniższy przykład przedstawia obiekt OfferData z tablicą redemptionCodes.
"offerData": { "redemptionCodes": ["PROMOTIONALCODE"] }