27/04/2022
Velkommen til en dybdegående guide til Google Pay API for Android. I nutidens digitale æra forventer brugere en hurtig, sikker og problemfri betalingsoplevelse, når de handler via mobile apps. Google Pay API leverer netop dette ved at give dine kunder mulighed for at betale med kredit- eller debetkort, der er gemt på deres Google-konto, inklusive Android-enhedstokens. Dette kan dramatisk forbedre din apps checkout-flow, reducere antallet af opgivne indkøbskurve og øge konverteringerne ved at give adgang til hundredvis af millioner af kort globalt. Lad os udforske, hvordan du kan integrere og optimere Google Pay i din Android-app for at give dine brugere den bedst mulige oplevelse.

Hvordan fungerer Google Pay på Android-enheder?
Google Pay API strømliner checkout-processen i din app og giver dig nem adgang til et stort antal betalingskort, der er gemt på Google-konti verden over. Når en bruger trykker på Google Pay-betalingsknappen i din app, præsenteres de for et betalingsark. Dette ark viser de betalingsmetoder, der er gemt på brugerens Google-konto, og kan også inkludere valgfri felter som en leveringsadresse. Brugere kan hurtigt vælge en eksisterende betalingsmetode, tilføje en leveringsadresse eller indtaste nye oplysninger.
Betalingsflowet er typisk som følger:
- Brugeren trykker på Google Pay-betalingsknappen i din app.
- Et betalingsark vises med en liste over understøttede betalingsmetoder.
- Brugeren vælger en betalingsmetode.
- Google Pay returnerer sikkert et betalingstoken for den valgte metode til din app. Dette token indeholder krypteret betalingsinformation.
- Din app sender betalingstokenet, sammen med detaljer om købet, til din egen backend-server.
- For at udføre betalingen behandler din backend købet og sender betalingstokenet til din betalingstjenesteudbyder (PSP).
Denne proces sikrer en hurtig checkout og en høj grad af sikkerhed, da følsomme kortdata aldrig direkte håndteres af din app, men i stedet behandles via sikre tokens.
Test af Google Pay API'en
Før du implementerer Google Pay i din produktionsapp, er det afgørende at teste integrationen grundigt. Google tilbyder en eksempelsapp, der demonstrerer grundlæggende brug af Google Pay API for Android. Denne app er et glimrende udgangspunkt for at forstå API'ens funktionalitet og sikre, at din implementering fungerer som forventet.
Google Pay API Eksempelapp for Android:
Eksempelappen viser, hvordan du anmoder om kredit- eller debetkort, der er gemt på en kundes Google-konto, herunder Android-enhedstokens.

Krav for at bygge og køre eksempelappen:
- Android Studio 3.0 eller nyere installeret.
- En enhed, der kører Android 4.4 (KitKat) eller nyere.
- Google Play services version 16.0.0 eller nyere installeret på denne enhed.
For at teste API'en fuldt ud, skal du åbne kotlin eller java mappen i Android Studio. Det er vigtigt at læse og modificere kommentarerne i filerne Constants.java og PaymentsUtil.java, som beskrevet i eksemplets instruktioner. Disse filer indeholder konstanter, der skal justeres for at tilpasse appen til dine testbehov. Husk, at du i testmiljøet vil arbejde med simuleret betalingsinformation.
Konfiguration af Google Pay til betalingskort
Konfigurationen af Google Pay API involverer at definere, hvilke betalingsmetoder og netværk din app vil acceptere, samt at specificere detaljer om din forretning og transaktioner. Dette gøres primært gennem konstanter og JSON-objekter, der sendes til API'en. En central fil i Android-implementeringen er ofte Constants.java (eller tilsvarende i Kotlin), hvor mange af disse indstillinger er defineret.
Her er nogle af de vigtigste konfigurationselementer:
PAYMENTS_ENVIRONMENT:
Denne konstant bestemmer, om du arbejder i et testmiljø eller et produktionsmiljø.
WalletConstants.ENVIRONMENT_TEST: Anvendes til test og returnerer simuleret kortinformation. Dette er ideelt til udvikling og fejlfinding.WalletConstants.ENVIRONMENT_PRODUCTION: Anvendes til live-transaktioner og returnerer faktisk opkrævelig kortinformation. At skifte til dette miljø kræver en Google Pay Merchant ID og en godkendt ansøgning gennem Google Pay Business Console.
SUPPORTED_NETWORKS:
En liste over de kortnetværk, din app understøtter. Kun kort fra disse netværk vil blive tilbudt brugeren i betalingsarket. Eksempler inkluderer "AMEX", "DISCOVER", "JCB", "MASTERCARD" og "VISA". Det er afgørende, at du kun lister de netværk, din betalingstjenesteudbyder kan behandle.
SUPPORTED_METHODS:
Angiver, hvordan Google Pay må returnere kortoplysninger. De mest almindelige metoder er:
- "PAN_ONLY": Refererer til kort gemt på Google.com (Primary Account Number).
- "CRYPTOGRAM_3DS": Refererer til et enhedstoken på en Android-enhed, der er autentificeret med et 3-D Secure kryptogram. Dette giver en forbedret sikkerhed ved at erstatte følsomme kortdata med et unikt token for hver transaktion.
COUNTRY_CODE og CURRENCY_CODE:
Disse angiver landekoden (f.eks. "US" for USA) og valutaen (f.eks. "USD" for amerikanske dollars) for din forretning. Disse er påkrævet af API'en, men er typisk ikke synlige for brugeren i betalingsarket.

SHIPPING_SUPPORTED_COUNTRIES:
Hvis din app anmoder om en leveringsadresse, skal du angive en liste over lande (ISO 3166-1 alpha-2 koder), hvor du tilbyder forsendelse. Hvis leveringsadresse ikke er relevant for din app, kan du fjerne denne funktionalitet fra din kode.
Tokeniseringsspecifikationer:
Dette er afgørende for, hvordan betalingsdata behandles. Du vil typisk bruge en af to typer:
PAYMENT_GATEWAY: Anvendes, når du behandler betalinger via en betalingstjenesteudbyder (PSP). Du skal angive navnet på din gateway (f.eks. "example") og eventuelle yderligere parametre, som din gateway kræver (f.eks. "gatewayMerchantId"). Dette er den mest almindelige metode.DIRECT: Anvendes, hvis du selv behandler betalinger direkte på dine PCI DSS-kompatible servere. Dette kræver avanceret kryptografi og er sjældnere for de fleste udviklere.
Her er en oversigt over nogle centrale konstanter, du ofte vil konfigurere:
| Konstant | Beskrivelse | Eksempelværdier |
|---|---|---|
PAYMENTS_ENVIRONMENT | Miljø for API-kald | WalletConstants.ENVIRONMENT_TEST eller .ENVIRONMENT_PRODUCTION |
SUPPORTED_NETWORKS | Kortnetværk der accepteres | ["VISA", "MASTERCARD", "AMEX"] |
SUPPORTED_METHODS | Betalingsmetoder der accepteres (tokenisering) | ["PAN_ONLY", "CRYPTOGRAM_3DS"] |
COUNTRY_CODE | Forretningens landekode | "DK" |
CURRENCY_CODE | Forretningens valuta | "DKK" |
PAYMENT_GATEWAY_TOKENIZATION_NAME | Navn på betalingsgateway | "example" |
PAYMENT_GATEWAY_TOKENIZATION_PARAMETERS | Parametre til betalingsgateway | {"gateway": "example", "gatewayMerchantId": "dit_merchant_id"} |
Hvad er en Google Pay API Codelab?
En Google Pay API Codelab er en trin-for-trin guide, der hjælper udviklere med at integrere Google Pay API i deres applikationer. Disse codelabs er designet til at give praktisk erfaring og en dyb forståelse af API'ens funktioner og den bedste praksis for implementering. De er en uvurderlig ressource for at komme hurtigt i gang med integrationen.
Formålet med et Codelab er at forbedre checkout-oplevelsen for dine brugere ved at gøre den hurtigere, mere bekvem og mere sikker. Dette fører til øgede konverteringer og gladere kunder. Et typisk Codelab vil guide dig gennem følgende centrale trin for at integrere Google Pay:
1. Tilføj de nødvendige afhængigheder:
Det første skridt er at inkludere Google Play Services Wallet-pakken i din apps build.gradle-fil. Dette giver din app adgang til de nødvendige API-klasser. For eksempel:
implementation "com.google.android.gms:play-services-wallet:18.0.0"2. Aktivér API'en i dit manifest:
Du skal informere systemet om, at din app vil bruge Google Pay API ved at tilføje et meta-data-element i din AndroidManifest.xml-fil, inden for application-noden:
<meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true" />3. Planlæg brugergrænsefladen (UI) og placeringen af Google Pay-knappen:
Designet og den overordnede brugeroplevelse er afgørende. Google Pay giver mulighed for at tilbyde hurtige checkout-muligheder tidligt i processen, f.eks. direkte på produktdetaljesiden. Det er vigtigt at placere Google Pay-knappen strategisk og at følge Googles retningslinjer for knapdesign for at sikre konsistens og genkendelighed. En vigtig anbefaling er kun at vise knappen, når du har bestemt, at brugeren faktisk kan betale med Google Pay.
4. Initialiser og konfigurer Google Pay API'en:
Du skal oprette en instans af PaymentsClient-objektet, som du vil bruge til at foretage API-kald. Klienten initialiseres med WalletOptions, hvor du indstiller miljøet (f.eks. ENVIRONMENT_TEST til udvikling). Husk, at for ENVIRONMENT_PRODUCTION kræves en gyldig Google Pay Merchant ID fra Google Pay Business Console.

Hver gang du kommunikerer med API'en, skal du inkludere konfigurationsparametre som API-version (apiVersion, apiVersionMinor) og en liste over accepterede betalingsmetoder (allowedPaymentMethods). For kortbetalinger specificerer du type (f.eks. "CARD"), allowedCardNetworks (f.eks. "VISA", "MASTERCARD") og allowedAuthMethods ("PAN_ONLY", "CRYPTOGRAM_3DS").
5. Bestem tilgængelighed for at betale med Google Pay (isReadyToPay):
For at optimere brugeroplevelsen bør du først kontrollere, om den specifikke bruger kan anvende Google Pay. Dette gøres med isReadyToPay-anmodningen. Hvis svaret er positivt, kan du vise Google Pay-knappen. Hvis ikke, kan du tilbyde alternative betalingsmetoder. Du kan også inkludere existingPaymentMethodRequired: true i anmodningen for kun at vise knappen, hvis brugeren allerede har en kompatibel betalingsmetode tilknyttet sin Google-konto.
6. Vis Google Pay-knappen:
Når isReadyToPay returnerer positivt, indstiller du knappens synlighed til View.VISIBLE og tilføjer en klik-lytter, der vil udløse betalingsprocessen, når brugeren trykker på knappen.
7. Forbered betalingsanmodningen:
Når brugeren er klar til at foretage et køb, opretter du et PaymentDataRequest-objekt. Dette objekt bygger videre på din grundlæggende konfiguration og inkluderer yderligere detaljer:
tokenizationSpecification: Definerer, hvordan den valgte betalingsmetode skal behandles (f.eks.PAYMENT_GATEWAYmed din gateway og merchant ID).- Yderligere parametre for kortbetalingsmetoden, f.eks.
billingAddressRequiredogbillingAddressParametersfor at anmode om faktureringsadresse og telefonnummer. transactionInfo: Indeholder finansielle detaljer somtotalPrice,totalPriceStatus(FINAL/ESTIMATED) ogcurrencyCode.merchantInfo: Information om din forretning, herundermerchantName(vist til brugeren) ogmerchantId(dit Google Pay Merchant ID, der kun evalueres i produktionsmiljøet).
8. Anmod om betalingsinformation og behandl resultatet:
Du sender den forberedte PaymentDataRequest til paymentsClient.loadPaymentData(). Dette udløser visningen af Google Pay-betalingsarket. Når brugeren har valgt en betalingsmetode, returneres resultatet til din apps onActivityResult-metode. Hvis transaktionen lykkes (Activity.RESULT_OK), kan du udpakke PaymentData-objektet, som indeholder det vigtige betalingstoken. Dette token sendes derefter til din backend for at fuldføre transaktionen via din betalingstjenesteudbyder.
Eksempel på det returnerede PaymentData JSON-objekt:
{ "apiVersionMinor": 0, "apiVersion": 2, "paymentMethodData": { "description": "Visa •••• 1234", "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }, "type": "CARD", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "billingAddress": { "phoneNumber": "...", "..." } } } }Det token-felt i tokenizationData er det, du sender til din betalingsgateway for at gennemføre betalingen. Husk at dette token vil indeholde de faktiske betalingsoplysninger, når du opererer i produktionsmiljøet.

Vigtige overvejelser og bedste praksis
For at sikre en succesfuld integration og en optimal brugeroplevelse med Google Pay API er der flere vigtige punkter at huske på:
- Brugeroplevelse er nøglen: Brug
isReadyToPaytil at tilpasse din UI dynamisk. Vis kun Google Pay-knappen, når det er relevant for brugeren, da dette skaber en mere strømlinet og mindre forvirrende oplevelse. - Sikkerhed først: Google Pay's tokeniseringsmekanismer og kryptogrammer er designet til at beskytte følsomme kortdata. Sørg for, at din backend-integration også følger de højeste sikkerhedsstandarder, og at du aldrig håndterer rå kortdata direkte i din app.
- Produktionsklarhed: At skifte fra
ENVIRONMENT_TESTtilENVIRONMENT_PRODUCTIONer et kritisk skridt, der kræver en gyldig Google Pay Merchant ID og en godkendt ansøgning. Planlæg dette trin omhyggeligt og følg Googles retningslinjer for at undgå forsinkelser. - Minimal dataanmodning: Anmod kun om de oplysninger (f.eks. fakturerings- eller leveringsadresse), der er absolut nødvendige for at gennemføre transaktionen. Jo færre felter brugeren skal udfylde, jo bedre er konverteringsraten.
Ved at følge disse retningslinjer kan du skabe en robust og brugervenlig Google Pay-integration, der vil glæde dine kunder og drive din virksomhed fremad.
Ofte Stillede Spørgsmål (FAQ)
1. Hvad er forskellen på test- og produktionsmiljøet i Google Pay API?
I testmiljøet (WalletConstants.ENVIRONMENT_TEST) returnerer Google Pay API simuleret betalingsinformation, hvilket er ideelt til udvikling, test og fejlfinding uden at involvere rigtige penge. Produktionsmiljøet (WalletConstants.ENVIRONMENT_PRODUCTION) håndterer derimod reelle transaktioner og kræver en godkendt Google Pay Merchant ID samt en verificeret app for at fungere.
2. Hvordan ved jeg, om en bruger kan betale med Google Pay i min app?
Du kan bruge paymentsClient.isReadyToPay()-metoden til at kontrollere, om brugerens enhed understøtter Google Pay, og om de har en kompatibel betalingsmetode tilknyttet deres Google-konto. Det anbefales at skjule Google Pay-knappen, indtil denne kontrol er udført og viser et positivt resultat, for at forbedre brugeroplevelsen.
3. Hvilke kortnetværk understøtter Google Pay API?
Google Pay API understøtter en bred vifte af populære kortnetværk, herunder AMEX, DISCOVER, JCB, MASTERCARD og VISA. Du skal konfigurere SUPPORTED_NETWORKS-listen i din app for at angive, hvilke netværk din betalingstjenesteudbyder kan behandle. Det er vigtigt at sikre, at din liste stemmer overens med de netværk, din PSP faktisk understøtter.
Hvis du vil læse andre artikler, der ligner Google Pay API til Android: Din Komplette Guide, kan du besøge kategorien Teknologi.
