Visa Secure is Visa's EMV 3-D Secure authenticatieproduct dat Strong Customer Authentication (SCA) voor elektronische betalingen mogelijk maakt.
Handelaren en partners die Trust Payments shopping cart plugins gebruiken, hoeven geen actie te ondernemen omdat deze plugins al geconfigureerd zijn om deze gegevens te verstrekken.
Om het ecosysteem van betalingen te ondersteunen bij het realiseren van de volledige voordelen van EMV 3-D Secure authenticatie, heeft Visa gemandateerd dat winkeliers hun authenticatieverzoeken (AReq/THREEDQUERY) berichten bijwerken om de hieronder beschreven velden op te nemen tegen 12 augustus 2024.
Als dit mandaat niet wordt nageleefd, kan dit leiden tot mislukte verificatie, downgrades en het verlies van de bescherming tegen aansprakelijkheidsverschuiving van Visa.
Breid je oplossing uit in de onderstaande lijst voor meer informatie over het bijwerken van je aanvragen:
Welke stappen je moet volgen, hangt af van hoe de klantgegevens voor de transactie worden verkregen. Raadpleeg de onderstaande oplossingen:
Doorloop
Werk je POST naar Trust Payments bij met strequiredfields zoals in het onderstaande voorbeeld.
<html>
<body>
<form method="POST" action="<DOMAIN>/process/payments/choice">
<input type="hidden" name="sitereference" value="test_site12345">
<input type="hidden" name="stprofile" value="default">
<input type="hidden" name="currencyiso3a" value="USD">
<input type="hidden" name="mainamount" value="100.00">
<!-- Enforcing the required billing fields -->
<input type="hidden" name="strequiredfields" value="billingfirstname">
<input type="hidden" name="strequiredfields" value="billinglastname">
<!-- Enforcing billing email and/or telephone fields -->
<!-- Choose billingemail, billingtelephone or both -->
<input type="hidden" name="strequiredfields" value="billingemail">
<input type="hidden" name="strequiredfields" value="billingtelephone">
<input type="hidden" name="version" value="2">
<input type="submit" value="Pay">
</form>
</body>
</html>
Vervang <DOMAIN>
met een ondersteund domein. Klik hier voor een volledige lijst.
Info over het specificeren van verplichte velden Laten we iets anders proberen
-
Je moet je CSS bijwerken om de code te verwijderen die specifiek deze velden verbergt en de bijgewerkte CSS uploaden via Bestandsbeheer.
-
Werk dan je POST naar Trust Payments bij met strequiredfields zoals in het onderstaande voorbeeld.
De strequiredfields ingediend zorgen ervoor dat de klant niet kan doorgaan naar 3-D Secure authenticatie zonder waarden op te nemen voor de velden die vereist zijn als onderdeel van dit mandaat.<html>
<body>
<form method="POST" action="<DOMAIN>/process/payments/choice">
<input type="hidden" name="sitereference" value="test_site12345">
<input type="hidden" name="stprofile" value="default">
<input type="hidden" name="currencyiso3a" value="USD">
<input type="hidden" name="mainamount" value="100.00">
<!-- Enforcing the required billing fields -->
<input type="hidden" name="strequiredfields" value="billingfirstname">
<input type="hidden" name="strequiredfields" value="billinglastname">
<!-- Enforcing billing email and/or telephone fields -->
<!-- Choose billingemail, billingtelephone or both -->
<input type="hidden" name="strequiredfields" value="billingemail">
<input type="hidden" name="strequiredfields" value="billingtelephone">
<input type="hidden" name="version" value="2">
<input type="submit" value="Pay">
</form>
</body>
</html>Vervang
<DOMAIN>
met een ondersteund domein. Klik hier voor een volledige lijst.
Info over de Bestandsbeheer Info over het specificeren van verplichte velden Laten we iets anders proberen
-
Als u een van de volgende stdefaultprofile-configuraties gebruikt, worden de factureringsvelden verborgen:
Om ervoor te zorgen dat de factureringsvelden worden weergegeven, moet u uw configuratie bijwerken naar een van de volgende alternatieven:
Afhankelijk van hoe je site referentie is geconfigureerd, kan het zijn dat je voor het wijzigen van je stdefaultprofile contact moet opnemen met ons supportteam. Neem contact met ons op als je het niet zeker weet. -
Werk dan je POST naar Trust Payments bij met strequiredfields zoals in het onderstaande voorbeeld.
De strequiredfields ingediend zorgen ervoor dat de klant niet kan doorgaan naar 3-D Secure authenticatie zonder waarden op te nemen voor de velden die vereist zijn als onderdeel van dit mandaat.<html>
<body>
<form method="POST" action="<DOMAIN>/process/payments/choice">
<input type="hidden" name="sitereference" value="test_site12345">
<input type="hidden" name="stprofile" value="default">
<input type="hidden" name="currencyiso3a" value="USD">
<input type="hidden" name="mainamount" value="100.00">
<!-- Enforcing the required billing fields -->
<input type="hidden" name="strequiredfields" value="billingfirstname">
<input type="hidden" name="strequiredfields" value="billinglastname">
<!-- Enforcing billing email and/or telephone fields -->
<!-- Choose billingemail, billingtelephone or both -->
<input type="hidden" name="strequiredfields" value="billingemail">
<input type="hidden" name="strequiredfields" value="billingtelephone">
<input type="hidden" name="version" value="2">
<input type="submit" value="Pay">
</form>
</body>
</html>Vervang
<DOMAIN>
met een ondersteund domein. Klik hier voor een volledige lijst.
Info over stdefaultprofiel Info over het specificeren van verplichte velden Laten we iets anders proberen
-
Je moet een van de volgende dingen toevoegen aan je HTML-opmaak op de [stprofile]details.html pagina en opnieuw uploaden naar je site referentie met behulp van de Bestandsbeheer:
Vereiste factureringsvelden afzonderlijk weergeven{{st.billingfirstname.textfield}} {{st.billinglastname.textfield}} {{st.billingemail.textfield}} {{st.billingtelephone.textfield}}
Omdat billingemail OF billingtelephone velden verplicht zijn, kun je desgewenst een van deze velden weglaten.Weergaveblok van alle factureringsvelden{{st.block.billingdetailsdiv}}
-
Werk dan je POST naar Trust Payments bij met strequiredfields zoals in het onderstaande voorbeeld.
De strequiredfields ingediend zorgen ervoor dat de klant niet kan doorgaan naar 3-D Secure authenticatie zonder waarden op te nemen voor de velden die vereist zijn als onderdeel van dit mandaat.<html>
<body>
<form method="POST" action="<DOMAIN>/process/payments/choice">
<input type="hidden" name="sitereference" value="test_site12345">
<input type="hidden" name="stprofile" value="default">
<input type="hidden" name="currencyiso3a" value="USD">
<input type="hidden" name="mainamount" value="100.00">
<!-- Enforcing the required billing fields -->
<input type="hidden" name="strequiredfields" value="billingfirstname">
<input type="hidden" name="strequiredfields" value="billinglastname">
<!-- Enforcing billing email and/or telephone fields -->
<!-- Choose billingemail, billingtelephone or both -->
<input type="hidden" name="strequiredfields" value="billingemail">
<input type="hidden" name="strequiredfields" value="billingtelephone">
<input type="hidden" name="version" value="2">
<input type="submit" value="Pay">
</form>
</body>
</html>Vervang
<DOMAIN>
met een ondersteund domein. Klik hier voor een volledige lijst.
Info over velden en blokken Info over de Bestandsbeheer Info over het specificeren van verplichte velden Laten we iets anders proberen
Breng wijzigingen aan op je test site referentie en controleer of ze werken voordat je je live site referentie bijwerkt!
Voer na elke wijziging een paar testtransacties uit om er zeker van te zijn dat u de transactie niet kunt voltooien tenzij de vereiste velden zijn ingevoerd tijdens de Payment Pages sessie. Als dit lukt, zijn er geen verdere stappen nodig. Zorg ervoor dat deze wijzigingen nu worden doorgevoerd in uw live site referentie.
Je moet ervoor zorgen dat de payload de volgende velden bevat die verplicht zijn volgens Visa (zie de voorbeelden hieronder):
Veld | Formaat | Beschrijving | |
billingemail | E-mail (255) |
Het E-mailadres facturatie adres van de klant. Maximale lengte van 255 (maximaal 64 tekens vóór het "@"-teken). Vereist als billingtelephone NIET is ingediend, anders optioneel. |
|
billingfirstname |
Alfanumeriek, inclusief symbolen (127) |
De klant Voornaam facturatie. |
|
billinglastname |
Alfanumeriek, inclusief symbolen (127) |
De klant Achternaam facturatie. |
|
billingtelephone |
Alfanumeriek, inclusief symbolen (20) |
Telefoonnummer van de klant. Geldige tekens:
Vereist als billingemail NIET is ingediend, anders optioneel. |
(Payload)
{
"payload":{
"accounttypedescription":"ECOM",
"baseamount":"1050",
"billingfirstname":"Jay",
"billinglastname":"Doe",
"billingemail":"customer@email.com",
"billingtelephone":"01234567890",
"currencyiso3a":"GBP",
"requesttypedescriptions":["THREEDQUERY","AUTH"],
"sitereference":"test_site12345"
},
"iat":1559033849,
"iss":"jwt.user"
}
Je moet ervoor zorgen dat de payload de volgende velden bevat die verplicht zijn volgens Visa (zie de voorbeelden hieronder):
Veld | Formaat | Beschrijving | |
billingemail | E-mail (255) |
Het E-mailadres facturatie adres van de klant. Maximale lengte van 255 (maximaal 64 tekens vóór het "@"-teken). Vereist als billingtelephone NIET is ingediend, anders optioneel. |
|
billingfirstname |
Alfanumeriek, inclusief symbolen (127) |
De klant Voornaam facturatie. |
|
billinglastname |
Alfanumeriek, inclusief symbolen (127) |
De klant Achternaam facturatie. |
|
billingtelephone |
Alfanumeriek, inclusief symbolen (20) |
Telefoonnummer van de klant. Geldige tekens:
Vereist als billingemail NIET is ingediend, anders optioneel. |
Android SDK-veldspecificatie iOS SDK-veldspecificatie
(Payload)
{
"payload":{
"accounttypedescription":"ECOM",
"baseamount":"1050",
"billingfirstname":"Jay",
"billinglastname":"Doe",
"billingemail":"customer@email.com",
"billingtelephone":"01234567890",
"currencyiso3a":"GBP",
"requesttypedescriptions":["THREEDQUERY","AUTH"],
"sitereference":"test_site12345",
"termurl":"https://payments.securetrading.net/process/payments/mobilesdklistener"
},
"iat":1559033849,
"iss":"jwt.user"
}
Je moet ervoor zorgen dat het THREEDQUERY verzoek de volgende velden bevat:
- billingfirstname
- billinglastname
- OFWEL billingemail OF billingtelephone
- browserscreenheight
- browserscreenwidth
- customerip
We raden je aan de volledige veldspecificatie voor het THREEDQUERY verzoek te bekijken en te controleren of alle verplichte velden worden ingediend.
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"accept": "text/html,*/*",
"accounttypedescription": "ECOM",
"acquirerbin": "408912",
"baseamount": "1050",
"billingemail": "customer@email.com",
"billingfirstname": "Jay",
"billinglastname": "Doe",
"billingtelephone": "01234567890",
"browsercolordepth": "24",
"browserjavaenabled": "false",
"browserjavascriptenabled": "true",
"browserlanguage": "en",
"browserscreenheight": "864",
"browserscreenwidth": "1536",
"browsertz": "120",
"cachetoken": "eyJkYXRhY2VudGVydXJsIjogImh0dHBzOi8vd2Vic2VydmljZXMuc2VjdXJldHJhZGluZy5uZXQiLCAiY2FjaGV0b2tlbiI6ICI1Ny04Y2RmNmY5MmZkY2MwMmZjZTY4YTUxYjc2NGQ5NTQxZDgzNDY5ZTFjMDIxMDJjNmM0NThmYWY5M2Q2MGQ1NWYyIn0=",
"challengewindowsize": "02",
"currencyiso3a": "GBP",
"customerip": "1.2.3.4",
"expirydate": "01/2038",
"merchantnumber": "9990000001",
"pan": "4900490000000501",
"requesttypedescription": "THREEDQUERY",
"sitereference": "test_3dsapi12345",
"termurl": "https://webhook.site/8543eb65-e5c7-40fc-a475-a862a825a562",
"threedscompind": "U",
"threedstransactionid":"733ab129-1126-4b80-97a4-f3d8fee9c564",
"useragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36"
}]
}
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"accept": "text/html,*/*",
"accounttypedescription": "ECOM",
"acquirerbin": "408912",
"baseamount": "1050",
"billingemail": "customer@email.com",
"billingfirstname": "Jay",
"billinglastname": "Doe",
"billingtelephone": "01234567890",
"browsercolordepth": "24",
"browserjavaenabled": "false",
"browserjavascriptenabled": "true",
"browserlanguage": "en",
"browserscreenheight": "864",
"browserscreenwidth": "1536",
"browsertz": "120",
"cachetoken": "eyJkYXRhY2VudGVydXJsIjogImh0dHBzOi8vd2Vic2VydmljZXMuc2VjdXJldHJhZGluZy5uZXQiLCAiY2FjaGV0b2tlbiI6ICI1Ny01ODRlOWMwNDliZTczZTIxNGNkZTU1MTk0NDQ3OWY4MGNhMzg3OGVmZTI1N2EzN2MwMWRmOTc1ZWRlYjI3YTBjIn0=",
"challengewindowsize": "02",
"currencyiso3a": "GBP",
"customerip": "1.2.3.4",
"expirydate": "01/2038",
"pan": "4900490000000667",
"paymenttypedescription": "DELTA",
"requesttypedescription": "THREEDQUERY",
"sitereference": "test_3dsapi12345",
"termurl": "https://webhook.site/8543eb65-e5c7-40fc-a475-a862a825a562",
"threedscompind": "U",
"threedstransactionid": "cebcb773-3aa1-4bfa-a959-135aa50bb760",
"useragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36"
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="THREEDQUERY">
<acquirer>
<acquirerbin>111111</acquirerbin>
</acquirer>
<merchant>
<termurl>https://webhook.site/8543eb65-e5c7-40fc-a475-a862a825a562</termurl>
</merchant>
<billing>
<amount currencycode="GBP">1050</amount>
<email>customer@email.com</email>
<name>
<first>Jay</first>
<last>Doe</last>
</name>
<payment>
<expirydate>01/2038</expirydate>
<pan>4900490000000501</pan>
</payment>
<telephone>01234567890</telephone>
</billing>
<customer>
<accept>text/html,*/*</accept>
<browsercolordepth>24</browsercolordepth>
<browserjavaenabled>false</browserjavaenabled>
<browserjavascriptenabled>true</browserjavascriptenabled>
<browserlanguage>en</browserlanguage>
<browserscreenheight>864</browserscreenheight>
<browserscreenwidth>1536</browserscreenwidth>
<browsertz>120</browsertz>
<challengewindowsize>02</challengewindowsize>
<ip>1.2.3.4</ip>
<useragent>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36</useragent>
</customer>
<operation>
<accounttypedescription>ECOM</accounttypedescription>
<cachetoken>eyJkYXRhY2VudGVydXJsIjogImh0dHBzOi8vd2Vic2VydmljZXMuc2VjdXJldHJhZGluZy5uZXQiLCAiY2FjaGV0b2tlbiI6ICI1Ny03OTY4ZDM1Zjk1YzQyZGFlMGU5MGZiYTE4N2U4YTU4YWQyYjNiOGQzMGIxYjBlMGFhY2I3NzE2YjZlNDE4YTdkIn0=</cachetoken>
<sitereference>test_3dsapi12345</sitereference>
</operation>
<threedsecure>
<threedscompind>N</threedscompind>
<transactionid>d52c5270-40fa-456b-b7cd-8c2cbc8edb8c</transactionid>
</threedsecure>
</request>
</requestblock>
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="THREEDQUERY">
<acquirer>
<acquirerbin>111111</acquirerbin>
</acquirer>
<merchant>
<termurl>https://webhook.site/8543eb65-e5c7-40fc-a475-a862a825a562</termurl>
</merchant>
<billing>
<amount currencycode="GBP">1050</amount>
<email>customer@email.com</email>
<name>
<first>Jay</first>
<last>Doe</last>
</name>
<payment>
<expirydate>01/2038</expirydate>
<pan>4900490000000501</pan>
</payment>
<telephone>01234567890</telephone>
</billing>
<customer>
<accept>text/html,*/*</accept>
<browsercolordepth>24</browsercolordepth>
<browserjavaenabled>false</browserjavaenabled>
<browserjavascriptenabled>true</browserjavascriptenabled>
<browserlanguage>en</browserlanguage>
<browserscreenheight>864</browserscreenheight>
<browserscreenwidth>1536</browserscreenwidth>
<browsertz>120</browsertz>
<challengewindowsize>02</challengewindowsize>
<ip>1.2.3.4</ip>
<useragent>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36</useragent>
</customer>
<operation>
<accounttypedescription>ECOM</accounttypedescription>
<cachetoken>eyJkYXRhY2VudGVydXJsIjogImh0dHBzOi8vd2Vic2VydmljZXMuc2VjdXJldHJhZGluZy5uZXQiLCAiY2FjaGV0b2tlbiI6ICI1NS05M2Y4NTg2NTQyYzEzOWE2OWU0YjBhMWNiYmVjNDAxOTE2YTgxNmI3Mzk5NTc2MGUxZDNkZTRkOGZjNjZkMmYxIn0=</cachetoken>
<sitereference>test_3dsapi12345</sitereference>
</operation>
<threedsecure>
<threedscompind>N</threedscompind>
<transactionid>043ee10e-8d48-4e8c-9bd2-9f86676d9b85</transactionid>
</threedsecure>
</request>
</requestblock>
Visa heeft de volgende richtlijnen gegeven met betrekking tot dit mandaat:
Consistente gegevens van hoge kwaliteit helpen de bedrijfsresultaten voor winkeliers, kaarthouders en uitgevers te verbeteren
Als winkeliers gebruikmaken van authenticatie via Visa Secure, kunnen ze erop vertrouwen dat uitgevende instellingen frauduleuze transacties detecteren. Belangrijke gegevenselementen in elk AReq/THREEDQUERY bericht zijn van cruciaal belang om een uitgevende instelling te ondersteunen bij het maken van nauwkeurige risicobeoordelingen voor succesvolle verificaties.
Als winkeliers de onderstaande velden opnemen in hun AReq/THREEDQUERY berichten, kunnen de volgende voordelen worden bereikt in het gehele EMV 3DS ecosysteem wereldwijd:
- Handelaren zien een toename van het succespercentage bij authenticatie van +4% en een toename van het goedkeuringspercentage van +6%. (4,5)
- Uitgevende instellingen kunnen een verhoging van het fraudeopsporingspercentage (FDR) zien van +65%. (6)
Visa Secure is ontworpen om een probleemloze ervaring te bieden aan Visa kaarthouders. Verbeterde gegevenskwaliteit kan zorgen voor meer naadloze ervaringen, meer vertrouwen in de beveiliging en minder onterechte afwijzingen voor kaarthouders.
- Kaarthouders krijgen een betere ervaring door een wrijvingsloze tariefverhoging van +57%. (5)
(4) De dataset voor deze berekeningen bevat 95% van de wereldwijde Visa Secure-transacties die plaatsvonden in de maanden februari-maart 2022. De uplift-cijfers zijn gegenereerd door merchants op basis van de snelheid waarmee ze de prioritaire data-elementen invullen en het gemiddelde van hun productprestaties. Raadpleeg voor meer informatie de wereldwijde business cases in de Global-Better Data Best Practices Guide voor Visa Secure, beschikbaar in de Merchant Resources-sectie van de Visa Secure Services Library.
(5) Gebaseerd op merchants die meer dan 50% van de prioritaire data-elementen invullen.
(6) De dataset voor deze analyse bevat Visa wereldwijde transacties die in de maand augustus 2021 als fraude zijn gemeld. De FDR-prestatieverhoging werd berekend door de prestaties van een Visa -fraudedetectiemodel te vergelijken in het scenario waarin prioriteitsgegevenselementen aanwezig waren versus wanneer deze werden vervangen door null- of standaardwaarden die werden gebruikt in het risicogebaseerde authenticatiemodel (RBA).
Verplichte velden
Zorg ervoor dat je systeem is bijgewerkt om te voldoen aan de volgende veldspecificatie:
Merchants en partners die gebruik maken van externe betaalgateways en 3DS-providers moeten contact opnemen met de door hen gekozen betaalgateways en 3DS-providers om te bevestigen hoe ze ervoor kunnen zorgen dat deze gegevens worden verstrekt.
Trust Payments THREEDQUERY Naam veld |
Visa AReq Naam veld |
Vereiste Status | Beschrijving |
billingfirstname XPath: /billing/name/first |
Naam kaarthouder | Vereist (Browser / In-App) | De klant Voornaam facturatie. |
billinglastname XPath: /billing/name/last |
Naam kaarthouder | Vereist (Browser / In-App) | De klant Achternaam facturatie. |
billingemail XPath: /billing/email |
E-mailadres kaarthouder | Voorwaardelijk (Browser / In-App) |
Het E-mailadres facturatie adres van de klant. Maximale lengte van 255 (maximaal 64 tekens vóór het "@"-symbool). Vereist wanneer billingtelephone niet is ingediend. |
billingtelephone XPath: /billing/telephone |
Telefoonnummer kaarthouder | Voorwaardelijk (Browser / In-App) |
Telefoonnummer van de klant. Geldige tekens:
Vereist wanneer billingemail niet is ingediend. |
customerip XPath: /customer/ip |
IP-adres browser | Vereist (browser) |
Payment Pages & JS Library: Trust Payments verzamelt en verstrekt deze gegevens. 3DS API: Moet worden verzameld en verstrekt door verkoper of partner. |
N/A | IP-adres apparaat | Vereist (In-App) |
Gemeenschappelijke parameters voor apparaatidentificatie Mobiele SDK: Trust Payments verzamelt en levert deze gegevens |
browserscreenheight XPath: /customer/browserscreenheight |
Schermhoogte browser | Aanbevolen (browser) |
Payment Pages & JS Library: Trust Payments verzamelt en verstrekt deze gegevens. 3DS API: Moet worden verzameld en verstrekt door verkoper of partner. |
browserscreenwidth XPath: /customer/browserscreenwidth |
Schermbreedte browser | Aanbevolen (browser) |
Payment Pages & JS Library: Trust Payments verzamelt en verstrekt deze gegevens. 3DS API: Moet worden verzameld en verstrekt door verkoper of partner. |
billingpremise XPath: /billing/premise |
N/A | Aanbevolen | De eerste regel van het factuuradres van de klant. |
billingstreet XPath: /billing/street |
N/A | Aanbevolen | De tweede regel van het factuuradres van de klant. |
billingtown XPath: /billing/town |
N/A | Aanbevolen | De ingevoerde stad voor het factuuradres van de klant. |
billingcounty XPath: /billing/county |
N/A | Aanbevolen |
De county ingevoerd voor het factuuradres van de klant. Voor adressen in de VS zou de staat in dit veld worden ingevuld. Geldige formaten:
|
billingpostcode XPath: /billing/postcode |
N/A | Aanbevolen | De Postcode facturatie of postcode. Dit moet een geldige postcode zijn voor de billingcountryiso2a . |
billingcountryiso2a XPath: /billing/country |
N/A | Aanbevolen |
Het land voor het factuuradres van de klant. Dit moet in ISO2A-formaat zijn. |