Migratie van st.js van versie 2 naar versie 3

Wat is er veranderd in versie 3 en waarom?

Versie 3 is een update van onze JavaScript Library waarvan de uitvoering minimaal ontwikkelingswerk vergt. Het belangrijkste doel van de update is het verbeteren van de afhandeling van gegevens in verzoeken aan Trust Payments, door ervoor te zorgen dat de betalingsveldgegevens die aan de gateway worden verstrekt, worden gedefinieerd binnen de JWT payload.

 

Wat gebeurt er met versie 2?

  Versie 2 van onze JavaScript Library is nu verouderd en wordt niet langer onderhouden. In het belang van de veiligheid is het noodzakelijk dat je migreert naar versie 3 voordat versie 2 volledig buiten gebruik wordt gesteld in Q1 2024.

 

Configuratie

Eindpunt-URL wijzigen

Het script waarnaar wordt verwezen in uw betalingsformulier moet worden gewijzigd in:

<CDN_DOMAIN>

Vervang DOMAIN placeholder door een ondersteund domein. Klik hier voor een volledige lijst.

  Wanneer u overgaat op het gebruik van de Content Delivery Network (CDN) in plaats van webservices om te verwijzen naar de st.js library, wees u er dan van bewust dat de CDN verzoeken van uw localhost/127.0.0.1 omgeving zal blokkeren. Om uw applicatie lokaal te testen met CDN, moet u uw testapplicatie draaien met uw IPv4 adres in plaats van localhost. Na het uitvoeren van een lookup van uw IPv4-adres, moet u localhost in uw browser vervangen door het opgehaalde IP-adres.

 

Verzoektypes specificeren in het JWT payload

Bij gebruik van versie 3 is het verplicht om in elk verzoek aan Trust Payments de te verwerken soorten verzoeken te specificeren. Dit gebeurt nu in het JWT payload, in plaats van binnen st.Components methode.

 

3-D Secure geauthenticeerde betalingen

Onder versie 2 zou de JS Library altijd automatisch de verzoeken THREEDQUERY en AUTH verwerken (voor respectievelijk 3-D Secure authenticatie en vervolgens autorisatie zoeken voor betaling). Om dit gedrag te repliceren onder versie 3 moet de lijst requesttypedescriptions moet worden opgenomen in de JWT payload, met waarde [“THREEDQUERY”,”AUTH”].

 

Formulier voorbeeld:

st.js v2 st.js v3
<html>
<head>
</head>
<body>
<div id="st-notification-frame"></div>
<form id="st-form" action="https://www.example.com" method="POST">
<div id="st-card-number"></div>
<div id="st-expiration-date"></div>
<div id="st-security-code"></div>
<button type="submit">Pay securely</button>
</form>
<script src="<WEBSERVCIES_DOMAIN>/js/v2/st.js"></script>
<script>
(function() {
var st = SecureTrading({
jwt: 'INSERT YOUR JWT HERE'
});
st.Components();
})();
</script>
</body>
</html>

Vervang DOMAIN placeholder door een ondersteund domein. Klik hier voor een volledige lijst.

 

Payload voorbeeld:

st.js v2 st.js v3
{"payload":{"accounttypedescription":"ECOM","baseamount":"1050","currencyiso3a":"GBP","sitereference":"test_site12345"},"iat":1559033849,"iss":"jwt.user"}

 

Andere Verzoektype combinaties

Als u al aangepaste Verzoektype combinaties opgeeft, moet dit worden verwijderd uit de st.Components methode en in plaats daarvan opgenomen in de lijst requesttypedescriptions moet worden opgenomen in de JWT payload. Het volgende voorbeeld toont hoe een aanvraagreeks ACCOUNTCHECK, THREEDQUERY, AUTH te migreren:

 

Formulier voorbeeld:

st.js v2 st.js v3
<html>
<head>
</head>
<body>
<div id="st-notification-frame"></div>
<form id="st-form" action="https://www.example.com" method="POST">
<div id="st-card-number"></div>
<div id="st-expiration-date"></div>
<div id="st-security-code"></div>
<button type="submit">Pay securely</button>
</form>
<script src="<WEBSERVCIES_DOMAIN>/js/v2/st.js"></script>
<script>
(function() {
var st = SecureTrading({
jwt: 'INSERT YOUR JWT HERE'
});
st.Components({"requestTypes":["ACCOUNTCHECK","THREEDQUERY","AUTH"]});
})();
</script>
</body>
</html>

Vervang DOMAIN placeholder door een ondersteund domein. Klik hier voor een volledige lijst.

 

Payload voorbeeld:

st.js v2 st.js v3
{"payload":{"accounttypedescription":"ECOM","baseamount":"1050","currencyiso3a":"GBP","sitereference":"test_site12345"},"iat":1559033849,"iss":"jwt.user"}

 

Het omzeilen van 3-D Secure voor bepaalde betalingswijzen

Als u aangeeft dat betaalmethoden niet onderworpen zijn aan 3-D Secure authenticatie, moet u het volgende verwijderen bypassCards van de ST-configuratie. In plaats daarvan wordt het veld threedbypasspaymenttypes moet worden verwezen in de JWT payload.

Om ervoor te zorgen dat uw oplossing voldoet aan de Payment Services Directive (PSD2), moet u ervoor zorgen dat alle transacties worden uitgevoerd met behulp van 3-D Secure.

 

Formulier voorbeeld:

st.js v2 st.js v3
<html>
<head>
</head>
<body>
<div id="st-notification-frame"></div>
<form id="st-form" action="https://www.example.com" method="POST">
<div id="st-card-number"></div>
<div id="st-expiration-date"></div>
<div id="st-security-code"></div>
<button type="submit">Pay securely</button>
</form>
<script src="<WEBSERVCIES_DOMAIN>/js/v2/st.js"></script>
<script>
(function() {
var st = SecureTrading({
jwt: 'INSERT YOUR JWT HERE',
bypassCards: ['DISCOVER']
});
st.Components();
})();
</script>
</body>
</html>

Vervang DOMAIN placeholder door een ondersteund domein. Klik hier voor een volledige lijst.

 

Payload voorbeeld:

st.js v2 st.js v3
{"payload":{"accounttypedescription":"ECOM","baseamount":"1050","currencyiso3a":"GBP","sitereference":"test_site12345"},"iat":1559033849,"iss":"jwt.user"}
Was dit artikel nuttig?
0 van de 0 vonden dit nuttig
Hebt u meer vragen? Dien een verzoek in