Intégration 3D Secure 2
Ce qu’est 3D Secure
3D Secure 2 offre de nouveaux moyens d’authentifier les clients tout en comblant les lacunes de la version actuelle 3DS 1.0.2. Il prend en charge la validation biométrique et par jeton et rationalise l’expérience Paysafe.js grâce à une authentification « sans friction ».
Vous trouverez de plus amples renseignements sur 3D Secure 2 ici.
Activation de 3D Secure 2 dans Paysafe.js
En général, lorsque les marchands procèdent à l’intégration directe de l’API sécurisé 3D Secure, les étapes suivantes doivent être mises en œuvre :
- Étape 1 : Collecte de l’empreinte digitale de l’appareil
- Étape 2 : Authentification du client
- Étape 3 : Réponde au défi de l’émetteur (conditionnel)
Paysafe.js s’en charge en arrière-plan pour le compte des marchands, de sorte que l’intégration de 3D Secure 2 ne nécessite qu’un minimum de travail. L’intégration se fait par la transmission d’un paramètre supplémentaire (nommé useThreeDSecureVersion2) et d’un FMA compatible avec 3D Secure 2.
Une fois que 3D Secure 2 est intégré, toutes les communications avec l’API et la SDK 3D Secure 2 sont gérées en arrière-plan, et les marchands reçoivent un jeton prêt pour l’autorisation de la carte.
L’API 3D Secure 2 requiert un nom de titulaire de carte pour l’authentification; ce paramètre est donc obligatoire et doit être transmis à Paysafe.js. De plus amples renseignements sur le paramètre holderName sont présentés ici.
Pour utiliser les transactions « sans friction » avec 3D Secure 2, il est essentiel de transmettre des paramètres supplémentaires à l’API. Dans le cas de l’intégration de 3D Secure 2 via Paysafe.js, transmettez ces champs supplémentaires à la fonction de tokenise de Paysafe.js :
- threeDsthreeDS
- adresse de facturation
- adresse de livraison
De plus amples renseignements sur les transactions « sans friction » sont présentés ici.
Matrice de transfert de responsabilité
Paysafe.js interprète les réponses de l’API 3D Secure 2 et renvoie soit un jeton à usage unique contenant l’instrument de paiement + les informations d’authentification, soit une erreur au marchand.
Le jeton est délivré lorsqu’un défi (ou une authentification sans friction) est relevé avec succès par le client. Si l’authentification a échoué, une erreur est renvoyée.
Lorsque les marchands reçoivent le jeton de paiement à usage unique, ils peuvent consulter son contenu ainsi que la matrice de transfert de responsabilité pour déterminer s’il convient de donner suite à la requête d’autorisation.
Fonctionnement pour les clients
En interne, Paysafe.js utilise la SDK 3D Secure API js pour gérer l’empreinte digitale de l’appareil et l’identification du client, comme le font les marchands.
Du point de vue du client, le résultat sera le même dans les deux cas :
- Lorsque les marchands gèrent 3D Secure 2
- Lorsque Paysafe.js gère 3D Secure 2
Essayer dans CodePen
Vous pouvez voir une brève démonstration de Paysafe.js avec 3D Secure 2 dans CodePen.
Saisissez un numéro de carte test (p. ex. 4000 0000 0000 1000), une date d’expiration future valide et un CVV aléatoire à trois chiffres, puis cliquez sur Payer.
L’exemple cURL suivant montre comment effectuer une requête de recherche de jeton (essayez-le dans un terminal Unix/Cygwin pour voir la réponse de l’API). Si vous avez installé Python, nous vous recommandons d’ajouter ce qui suit à la fin de la requête cURL pour formater clairement la réponse JSON :
| python -mjson.tool
curl -X POST https://api.test.paysafe.com/customervault/v1/singleusetokens/search \
-u test_vniezsai:B-qa2-0-59564dfa-0-302c021426a55dde98dc2a052cccc1ddc8daa776a7a4fe2e0214080388fded986767abc445e58af123c01003cb8b \
-H 'Content-Type: application/json' \
-d ' {
"paymentToken" : "CARDS PAYMENT TOKEN RECEIVED FROM CLIENT BROWSER"
} '