Google Pay directe AUTH integratie

  Laatst bijgewerkt: 

 

De volgende inhoud gaat ervan uit dat u de noodzakelijke PCI-certificering hebt verkregen om gevoelige kaarthoudergegevens te verwerken en in te dienen in het verzoek aan onze Webservices API.
Lees dit artikel voor meer informatie.

  Alle bedrijven binnen de EER (Europese Economische Ruimte) zijn verplicht om 3-D Secure te gebruiken bij het verwerken van e-commercetransacties, als onderdeel van het PSD2 -mandaat.

Handelaren die e-commercetransacties verwerken MOETEN 3DS-verificatie ondersteunen. Klik hier voor meer informatie.

De volgende inhoud mag alleen worden gebruikt door merchants die Mail Order Telephone Order (MOTO) betalingen verwerken of andere workflows die zijn vrijgesteld van het PSD2 mandaat.

Voor de PAN_ONLY authmethod hieronder beschreven vereist 3DS-authenticatie.

 

In dit document wordt ervan uitgegaan dat je een directe integratie met Google Pay hebt geconfigureerd en de richtlijnen van Google hebt gevolgd voor het gebruik van het Google Pay betalingstoken payload (link naar externe site) en dat je de TRU Connect gateway wilt gebruiken om de betaling te verwerken.

 

Over verificatiemethoden

Elke Google Pay transactie kan op twee verschillende manieren worden geverifieerd:

  • PAN_ONLY - Een kaart die is opgeslagen op het Google-account van de klant.
  • CRYPTOGRAM_3DS - Een apparaattoken opgeslagen op een Android-gevoed apparaat dat is geverifieerd met een 3-D Secure cryptogram.

 

Als je Google Pay integratie is geconfigureerd om zowel PAN_ONLY als CRYPTOGRAM_3DS authenticatiemethoden te ondersteunen , moet je voor elke transactie vaststellen welke van deze twee authenticatiemethoden is uitgevoerd. Dit is belangrijk omdat de authenticatiemethode die wordt geretourneerd door de Google Pay API de volgende stappen dicteert die je systeem moet uitvoeren om de betaling te voltooien.

Om de authenticatiemethode te controleren die is gebruikt voor een bepaalde transactie, moet je de versleuteldeBoodschap ontsleutelen die is teruggestuurd in het betalingstoken van de Google Pay API. Specifiek moet u kijken naar het veld paymentMethodDetails > authMethod en controleren of de waarde PAN _ONLY of CRYPTOGRAM_3DS is.

 

1️⃣ PAN_ONLY 2️⃣ CRYPTOGRAM_3DS

Als PAN_ONLY wordt geretourneerd in de authMethodmoet u de transactie eerst verifiëren met 3-D Secure. Als de kaart is geregistreerd en met succes is geverifieerd, beschikt u over de onderstaande velden, die vereist zijn in het AUTH verzoek:

Resultaatgegevens van 3-D Secure provider:

  • cavv
  • eci
  • ingeschreven
  • status
  • threedversion
  • threeddirectorytransactionreference

Velden moeten worden ingediend in AUTH indien beschikbaar.

Betalingsgegevens van het antwoord op Google Pay :

  • pan
    Afgebeeld van:
    encryptedMessage ≫ paymentMethodDetails ≫ pan
  • expirydate
    Afgedrukt van:
    encryptedMessage ≫ paymentMethodDetails ≫ expirationMonth/expirationYear
  • walletdisplayname
    Afgebeeld van:
    paymentMethodData ≫ info

Als je van plan bent om de factuur- en aflevergegevens van de klant van hun Google Wallet vast te leggen, moet je ook de respons van de Google API voor deze velden analyseren en ze toewijzen aan de juiste velden in het daaropvolgende AUTH verzoek.

PANALLEEN - AUTH Aanvraag - Specificatie

  Voordat u de AUTH!


  Niet ingeschreven kaarten

Als zowel uw bedrijf als de bank van de kaarthouder gevestigd zijn binnen de Europese Economische Ruimte (EER) of het Verenigd Koninkrijk, moet uw implementatie voldoen aan de Payment Services Directive (PSD2).

PSD2 vereist dat online kaartbetalingen worden verwerkt met 3-D Secure. Als een kaart niet is geregistreerd, is de aanbevolen aanpak om de transactie te stoppen en de klant een alternatief betaalmiddel aan te bieden.

Als je rekening hebt gehouden met de juridische implicaties die hierboven zijn beschreven en als je door mag gaan, moet je systeem een AUTH -verzoek opstellen en handmatig indienen om de betaling te voltooien met een niet-ingeschreven kaart. Klik hier voor de volledige specificatie.


  Niet-geauthenticeerde kaarten

Wij raden ten zeerste af de transactie door te zetten indien de status is "N" of "R":

  • Als status "N" is, betekent dit dat de klant niet is geauthenticeerd.
  • Als status "R" is, betekent dit dat de authenticatie is geweigerd.

 

AUTH Voorbeeld aanvragen

Python PHP cURL Ruwe JSON Ruwe XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

auth = {
"accounttypedescription":"ECOM",
  "baseamount":"2000",
  "currencyiso3a":"GBP",
  "expirydate":"07/2026",
 "pan":"5100000000000511",
  "requesttypedescriptions": ["AUTH"],
 "sitereference": "test_site12345",
  "cavv":"Q0FWVkNBVlZDQVZWQ0FWVkNBVlY=",
  "eci":"05",
  "enrolled":"Y",
  "status":"Y",
  "threedversion":"2.1.0",
  "threeddirectorytransactionreference":"f00e1111-0011-00a6-ab00-a00000a00000",
  "walletdisplayname":"MasterCard 0511",
"orderreference":"My_Order_123",
"walletsource":"GOOGLEPAY"

}

strequest = securetrading.Request()
strequest.update(auth)
stresponse = st.process(strequest) #stresponse contains the transaction response

 

AUTH Specificatie verzoekveld

  Veld Mapping naar velden van Google paymentData Formaat Beschrijving
X1-EN.png accounttypedescription
XPath: /operation/accounttypedescription
N/A Alpha (20) Submit "ECOM" voor een e-commerce transactie.
X1-EN.png baseamount
XPath: /billing/amount
N/A Numeriek (13)

Het bedrag van de transactie in basiseenheden, zonder komma's of decimalen, dus £10 wordt weergegeven als 1000. Deze waarde moet groter zijn dan nul.

X1-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
N/A Alpha (3) De Munt van de transactie. Klik hier voor een volledige lijst van beschikbare valuta.
X1-EN.png ingeschreven
XPath: /threedsecure/enrolled
N/A Char (1)

Vul 'J' in om aan te geven dat de kaart is geregistreerd.

X1-EN.png expirydate
XPath: /billing/payment/expirydate

encryptedMessage ≫ paymentMethodDetails ≫ expirationMonth/expirationYear

Datum MM/JJJJ

De op de kaart gedrukte vervaldatum.

Je moet de velden expirationMonth (vervaldatum) en expirationYear (vervaldatum) van Google combineren en dit in de indeling "MM/JJJJ" indienen in het verzoek AUTH .

X1-EN.png pan
XPath: /billing/payment/pan

encryptedMessage ≫ paymentMethodDetails ≫ pan

Numeriek (12-19) Dit is het lange nummer dat op de voorzijde van de kaart van de klant is gedrukt.
X1-EN.png requesttypedescriptions
XPath: /@type
N/A Alpha (20)

Ondersteunde Verzoektype combinaties:

  • [“AUTH”]
  • [“AUTH”, “RISKDEC”]
  • [“AUTH”, “SUBSCRIPTION”]
  • [“ACCOUNTCHECK”, “AUTH”]
  • [“ACCOUNTCHECK”, “SUBSCRIPTION”]
  • [“RISKDEC”, “AUTH”]
  • [“RISKDEC”, “AUTH”, “SUBSCRIPTION”]
  • [“RISKDEC”, “ACCOUNTCHECK”, “AUTH”]
  • [“RISKDEC”, “ACCOUNTCHECK”, “AUTH”, “SUBSCRIPTION”]

Klik hier voor meer informatie over verzoektypes.

X1-EN.png sitereference
XPath: /operation/sitereference
N/A Alfanumeriek
& underscore (50)
Identificeert uw site op het Trust Payments systeem.
X1-EN.png status
XPath: /threedsecure/status
N/A Char (1)

Geeft aan of de klant al dan niet op de ACS van de kaartuitgever werd geauthenticeerd:

  • "Y" - Klant geauthenticeerd.
  • A" - Authenticatie geprobeerd maar kon niet worden voltooid.
  • U' - Kan geen verificatie uitvoeren.
  • C' - Uitdaging vereist voor authenticatie.
X1-EN.png walletdisplayname
XPath:/billing/payment/wallet/displayname

paymentMethodData ≫ info

Numeriek (4)

Dit is door de kaartuitgever verstrekte informatie die aan de klant kan worden getoond om de betalingsmethode te identificeren. Dit omvat doorgaans de laatste 4 cijfers van hun kaartnummer.

Het info-object bevat twee eigenschappen die je moet meesturen in het veld walletdisplayname . Je moet de cardNetwork & cardDetails en ze combineren, bijvoorbeeld
"VISA 1111".

X1-EN.png walletsource
XPath: /billing/payment/wallet/source
N/A Alfa (8) Moet worden ingediend met waarde "GOOGLEPAY".
X2-EN.png billingfirstname
XPath: /billing/name/first
billingAddress ≫ name Alfanumeriek, inclusief
symbolen (127)

De klant Voornaam facturatie.

Vereist voor handelaren in kansspelen.

X2-EN.png billinglastname
XPath: /billing/name/last
billingAddress ≫ name Alfanumeriek, inclusief
symbolen (127)

De klant Achternaam facturatie.

Vereist voor handelaren in kansspelen.

X2-EN.png cavv
XPath: /threedsecure/cavv
N/A  Alfanumeriek (56)

De unieke Cardholder Authentication Verification Value (CAVV) geassocieerd met de transactie.

Dien deze waarde altijd in als hij beschikbaar is.

 

X2-EN.png customerpostcode
XPath: /customer/postcode
shippingAddress ≫ postalCode Alfanumeriek (25)

De afleverpostcode of postcode van de klant. Dit moet een geldige postcode zijn voor de customercountryiso2a ingediend.

Vereist indien Klant Categorie Code (MCC) 6012 is en Betalingstype VISA is.

X2-EN.png customerlastname
XPath: /customer/name/last
shippingAddress ≫ naam Alfanumeriek, inclusief
symbolen (127)

De achternaam op het afleveradres van de klant.

Vereist indien Klant Categorie Code (MCC) 6012 is en Betalingstype VISA is.

X2-EN.png eci
XPath: /threedsecure/eci
N/A Alfanumeriek (2)

Het beveiligingsniveau ECI (E-Commerce Indicator) van de transactie.

Dien deze waarde altijd in als hij beschikbaar is.

Klik hier voor meer informatie over mogelijke ECI waarden.

X2-EN.png threedversion
XPath: /threedsecure/versie
 N/A Numeriek (6)

Versie van 3-D Secure gebruikt om de betaling te authenticeren. (bijv. "2.1.0")

Dien deze waarde altijd in als hij beschikbaar is.

 

X2-EN.png

threeddirectorytransactionreference

XPath: /threedsecure/directorytransactionreference

 N/A Alfanumeriek (48)

Unieke DSTransactionId teruggestuurd door uw MPI provider.

Dien deze waarde altijd in als hij beschikbaar is.

 

X3-EN.png billingcountryiso2a
XPath: /billing/country
billingAddress ≫ countryCode Alpha (2)

Het land op het factuuradres van de klant. Dit moet in ISO2A-formaat zijn.

Klik hier voor een volledige lijst van landcodes.

X3-EN.png billingemail
XPath: /billing/email
N/A E-mail (255) Het E-mailadres facturatie adres van de klant. Maximale lengte van 255 (maximaal 64 tekens vóór het "@"-teken).
X3-EN.png billingpostcode
XPath: /billing/postcode
billingAddress ≫ postalCode Alfanumeriek (25)

De Postcode facturatie of postcode. Dit moet een geldige postcode/ZIP-code zijn voor de billingcountryiso2a ingediend.

X3-EN.png billingpremise
XPath: /billing/premise
billingAddress ≫ address1 Alfanumeriek, inclusief
symbolen (25)
De huisnaam/het huisnummer op het factuuradres van de klant.
X3-EN.png billingtelephone
XPath: /billing/telephone
billingAddress ≫ phoneNumber Alfanumeriek, inclusief
symbolen (20)
Het telefoonnummer van de klant voor facturering. Geldige tekens:
  • Cijfers 0-9
  • Ruimtes
  • Speciale tekens: + - ( )
X3-EN.png billingtown
XPath: /billing/town
billingAddress ≫ plaats Alfanumeriek, inclusief
symbolen (127)
De ingevoerde stad voor het factuuradres van de klant.
X3-EN.png customercountryiso2a
XPath: /customer/country
shippingAddress ≫ countryCode Alpha (2)

Het land op het afleveradres van de klant. Dit moet in ISO2A-formaat zijn.

Klik hier voor een volledige lijst van landcodes.

X3-EN.png customeremail
XPath: /customer/email
N/A E-mail (255) E-mailadres voor levering van de klant. Maximale lengte 255 (maximaal 64 tekens voor het "@"-symbool).
X3-EN.png customerfirstname
XPath: /customer/name/first
shippingAddress ≫ naam Alfanumeriek, inclusief
symbolen (127)

De eerste naam op het afleveradres van de klant.

X3-EN.png customerpremise
XPath: /customer/premise
shippingAddress ≫ address1 Alfanumeriek, inclusief
symbolen (25)
De huisnaam/het huisnummer op het afleveradres van de klant.
X3-EN.png customertelephone
XPath: /customer/telephone
shippingAddress ≫ phoneNumber Alfanumeriek, inclusief
symbolen (20)
Telefoonnummer voor bezorging van de klant. Geldige tekens:
  • Cijfers 0-9
  • Ruimtes
  • Speciale tekens: + - ( )
X3-EN.png customertown
XPath: /customer/town
shippingAddress ≫ plaats Alfanumeriek, inclusief
symbolen (127)
De stad op het afleveradres van de klant.
X3-EN.png orderreference
XPath: /merchant/orderreference
N/A Alfanumeriek, inclusief
symbolen (25)

Uw unieke bestelreferentie die in het Trust Payments systeem kan worden opgeslagen.

X3-EN.png paymenttypedescription
XPath: /billing/payment/@type
N/A Alpha (20) Betalingsmethode (bijv. "VISA" of "MASTERCARD").
PAN_ONLY - AUTH antwoord - Specificatie

AUTH Voorbeeld antwoord

Na het indienen van het AUTH verzoek, krijg je een AUTH antwoord terug:

Python PHP Ruwe JSON Ruwe XML
{
u 'requestreference': u 'A0bxh87wt',
u 'version': u '1.00',
u 'responses': [{
u 'accounttypedescription': u 'ECOM',
u 'acquirerresponsecode': u '00',
u 'authcode': u 'TEST09',
u 'authmethod': u 'FINAL',
u 'baseamount': u '2000',
u 'cavv': u 'Q0FWVkNBVlZDQVZWQ0FWVkNBVlY=',
u 'currencyiso3a': u 'GBP',
u 'customeroutput': u 'RESULT',
u 'debtrepayment': u '0',
u 'eci': u '05',
u 'enrolled': u 'Y',
u 'errorcode': u '0',
u 'errormessage': u 'Ok',
u 'issuercountryiso2a': u 'JP',
u 'livestatus': u '0',
u 'maskedpan': u '510000######0511',
u 'merchantcategorycode': u '1234',
u 'merchantcountryiso2a': u 'GB',
u 'merchantname': u 'Test Merchant',
u 'merchantnumber': u '00000000',
u 'orderreference': u 'My_Order_123',
u 'operatorname': u 'webservices@example.com',
u 'paymenttypedescription': u 'MASTERCARD',
u 'requesttypedescription': u 'AUTH',
u 'securityresponseaddress': u '0',
u 'securityresponsepostcode': u '0',
u 'securityresponsesecuritycode': u '0',
u 'settleduedate': u '2023-03-22',
u 'settlestatus': u '0',
u 'splitfinalnumber': u '1',
u 'status': u 'Y',
u 'threedversion': u '2.1.0',
u 'tid': u '27882788',
u 'transactionreference': u '36-9-286248',
u 'transactionstartedtimestamp': u '2023-03-22 09:34:31',
u 'walletdisplayname': u 'MasterCard 0511',
u 'walletsource': u 'GOOGLEPAY'
}]
}

 

AUTH Specificatie van antwoordvelden

  Veld Formaat Beschrijving
X4-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) "ECOM" wordt teruggestuurd in het antwoord om een e-commercetransactie weer te geven.
X4-EN.png authmethod
XPath: /operation/authmethod
Alpha (11)

De authmethod specificeert hoe een transactie moet worden verwerkt door de kaartuitgever. Je zou moeten verwachten dat een van de volgende waarden wordt geretourneerd om de authmethod in dienst. Klik op de volgende links voor meer informatie:

  • PRE - Pre-autorisatie
  • FINAL - Finale autorisatie

Dit veld wordt teruggestuurd indien het in het verzoek is ingediend.

X4-EN.png baseamount
XPath: /billing/amount
Numeriek (13) Het bedrag van de transactie in basiseenheden, zonder komma's of decimalen, dus £10 wordt weergegeven als 1000. Deze waarde moet groter zijn dan nul.
X4-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

De Munt van de transactie.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X4-EN.png dccenabled
XPath: /billing/dcc/@enabled
Numeriek (1) Omdat Google Pay DCC niet ondersteunt, wordt "0" teruggestuurd om aan te geven dat DCC is uitgeschakeld voor deze transactie.
X4-EN.png debtrepayment
XPath: /merchant/debtrepayment
Numeriek (1)

Geeft aan of een transactie is gemarkeerd als schuldaflossing. Klik hier voor meer informatie.

X4-EN.png eci
XPath: /threedsecure/eci
Alfanumeriek (2) Het beveiligingsniveau ECI (E-Commerce Indicator) van de transactie. Klik hier voor meer informatie over mogelijke ECI waarden.
X4-EN.png errorcode
XPath: /error/code
Numeriek (1-5) De foutcode (errorcode) moet worden gebruikt om te bepalen of het verzoek succesvol was of niet.
  • Als de foutcode "0" is, is de transactie geslaagd.
  • Als de foutcode niet "0" is, is de transactie niet geslaagd.

Klik hier voor een volledige lijst van errorcode en bericht waarden.

X4-EN.png errormessage
XPath: /error/message
Alfanumeriek (255) Dit geeft een korte uitleg over de oorzaak van de fout.

Voor succesvolle transacties wordt dit geretourneerd als "Ok".

Klik hier voor een volledige lijst van errorcode en bericht waarden.

X4-EN.png issuercountryiso2a
XPath: /billing/payment/issuercountry
Alpha (2)

Het land van de kaartuitgever van de klant.
Dit is in ISO2A-formaat.

Klik hier voor een volledige lijst van landcodes.

X4-EN.png livestatus
XPath: /live
Numeriek (1)
  • 0 - Transactie verwerkt met een testrekening.
  • 1 - Transactie verwerkt met een live rekening.
X4-EN.png maskedpan
XPath: /billing/payment/pan
Alfanumeriek, inclusief "#" (12-19) De maskedpan veld staat voor het kaartnummer van de klant. De waarde van maskedpan veld wordt in het antwoord gemaskeerd. Het grootste deel van het nummer wordt opzettelijk verborgen door "#" tekens, bijv. 411111######0211.
X4-EN.png operatorname
XPath: /merchant/operatorname
Alfanumeriek (255) De waarde van dit veld bevat de naam van de gebruiker die het verzoek heeft verwerkt.
X4-EN.png paymenttypedescription
XPath: /billing/payment/@type
Alpha (20) Betalingsmethode (bijv. "VISA" of "MASTERCARD").
X4-EN.png requesttypedescription
XPath: /@type
Alpha (20) "AUTH" wordt in het antwoord teruggezonden.
X4-EN.png securityresponseaddress
XPath: /security/address
Numeriek (1) Het resultaat van AVS en beveiligingscodecontroles.

Klik hier voor meer informatie.

X4-EN.png securityresponsepostcode
XPath: /security/postcode
Numeriek (1)
X4-EN.png securityresponsesecuritycode
XPath: /security/securitycode
Numeriek (1)
X4-EN.png settleduedate
XPath: /settlement/settleduedate
Datum JJJJ-MM-DD De datum waarop de transactie zal worden afgewikkeld.
X4-EN.png settlestatus
XPath: /settlement/settlestatus
Numeriek (3)

Een numerieke waarde die wordt gebruikt om de voortgang van afwikkeling met betrekking tot deze transactie aan te geven.

Klik hier voor een volledige lijst van settlestatus waarden.

X4-EN.png splitfinalnumber
XPath: /operation/splitfinalnumber
Numeriek (2) Omdat Google Pay Split Shipment niet ondersteunt, wordt "1" teruggestuurd om aan te geven dat het geld in één keer wordt overgemaakt.
X4-EN.png tid
XPath: /merchant/tid
Alfanumeriek (255) De terminal ID die gebruikt wordt om de transactie te verwerken. Dit wordt gekoppeld aan uw handelaarsnummer wanneer wij uw rekening in onze systemen instellen.
X4-EN.png transactionreference
XPath: /transactionreference
Alfanumeriek, inclusief
koppeltekens (25)
Een unieke referentie voor de transactie toegewezen door Trust Payments. U hebt deze referentie nodig om een terugbetaling uit te voeren of de transactie bij te werken.
X4-EN.png transactionstartedtimestamp
XPath: /timestamp
Datum tijd JJJJ-MM-DD hh:mm:ss Het tijdstip waarop de transactie werd verwerkt.
X4-EN.png walletdisplayname
XPath: /billing/payment/wallet/displayname
Alfanumeriek (255) Het door de klant gebruikte kaarttype en de laatste vier cijfers van zijn kaartnummer (bijv. "Visa 1111").
X4-EN.png walletsource
XPath: /billing/payment/wallet/source
Alfanumeriek (20) Wordt gebruikt om het type portemonnee te identificeren dat wordt gebruikt voor deze betaling (in dit geval "GOOGLEPAY").
X2-EN.png acquirerresponsecode
XPath: /acquirerresponsecode
Alfanumeriek (255)

Gebruikt door uw verwerver om het resultaat van het verzoek aan te geven.

Dit varieert afhankelijk van uw wervende bank. Neem contact op met uw bank voor meer informatie.

X2-EN.png authcode
XPath: /authcode
Alfanumeriek (255)

De autorisatie code verstrekt door de uitgevende bank. Deze zal verschillen afhankelijk van de bank die u gebruikt.

Wordt alleen geretourneerd als de transactie is toegestaan.

X2-EN.png errordata
XPath: /error/data
Alfanumeriek (255)

Aanvullende informatie om te helpen bij het oplossen van de fout.

Wordt alleen geretourneerd als er een fout is opgetreden.

X2-EN.png merchantcategorycode
XPath: /merchant/merchantcategorycode
Alfanumeriek (255)

Dit zijn gegevens die gekoppeld zijn aan de rekening die gebruikt wordt om de transactie te verwerken. Om deze velden te wijzigen, kunt u contact opnemen met ons Support Team.

De geretourneerde waarden zijn afhankelijk van je accountconfiguratie.

X2-EN.png merchantcity
XPath: /merchant/merchantcity
Alfanumeriek (127)
X2-EN.png merchantcountryiso2a
XPath: /merchant/merchantcountryiso2a
Alpha (2)
X2-EN.png merchantname
XPath: /merchant/merchantname
Alfanumeriek (255)
X2-EN.png merchantstatecode
XPath: /merchant/merchantstatecode
Alfanumeriek (127)
X2-EN.png merchantzipcode
XPath: /merchant/merchantzipcode
Alfanumeriek (10)
X2-EN.png orderreference
XPath: /merchant/orderreference
Alfanumeriek, inclusief
symbolen (25)

Uw unieke bestelreferentie die in het Trust Payments systeem kan worden opgeslagen.

Dit veld wordt teruggestuurd indien het in het verzoek is ingediend.

Was dit artikel nuttig?
0 van de 0 vonden dit nuttig