Search Overlay

3DS

Introduction

3D Secure via l’API Paiements permet d’authentifier un titulaire de carte pour les requêtes de transactions en ligne (sans présentation de la carte). Grâce à l’API Paiements, vous pouvez traiter des transactions mobiles ou basées sur un navigateur qui sont entièrement conformes aux normes 3D Secure et SCA.

Étapes à suivre dans 3D Secure

Veuillez suivre les étapes suivantes : 

  1. Créer un gestionnaire de paiement Vous devez ajouter l’objet « threeDs » dans la requête.
{

"merchantRefNum": "58936a12-012d-49f4-ba56-a58ede19bff9",
transactionType:"transactionType": "PAYMENT",
"threeDs": {
"merchantUrl": "https://api.qa.paysafe.com/checkout/v2/index.html#/desktop",
"deviceChannel": "BROWSER",
"messageCategory": "PAYMENT",
"transactionIntent": "GOODS_OR_SERVICE_PURCHASE",
"authenticationPurpose": "PAYMENT_TRANSACTION"
}
"card": {
"cardNum": "4000000000001091",
"cardExpiry": {
"month": 10,
"year":2025
},
"cvv": "111",
"holderName": "Dilip"
},
"paymentType": "CARD",
"amount": 500,
"currencyCode": "USD",
"customerIp": "172.0.0.1",
"billingDetails": {
"nickName": "Home",
"street": "abcd",
"city": "defg",
"state": "AL",
"country": "US",
"zip": "32456"
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStoreeeeeeeee",
"phone": "1234567899"
},
"returnLinks": [{
"rel": "default",
"href": "https://usgaminggamblig.com/payment/return/",
"method": "GET"
}, {
"rel": "on_completed",
"href": "https://usgaminggamblig.com/payment/return/success",
"method": "GET"
}, {
"rel": "on_failed",
"href": "https://usgaminggamblig.com/payment/return/failed",
"method": "GET"
}
]

}

Paramètres d’objet 3DS

ÉlémentTypeDescription
merchantUrlstring, Mandatory length =2048Il s'agit de l'adresse URL complète du site Web commercial ou du service à la clientèle du marchand.
deviceChannelenum, Obligatoire, Valeurs éventuelles :
  • BROWSER
  • APP
  • THREERI
Il s'agit du type d'interface de canal utilisé pour initier la transaction.
messageCategoryenum, Obligatoire    

Il s'agit de la catégorie du message pour un cas d'utilisation spécifique. Les valeurs éventuelles sont :

  • PAYMENT
  • NON_PAYMENT
authenticationPurposeenum, Obligatoire 

C’est le type de requête d’authentification. Cet élément de données fournit des informations supplémentaires à ACS afin de déterminer la meilleure approche pour traiter une requête d'authentification. Les valeurs éventuelles sont :

  • PAYMENT_TRANSACTION
  • RECURRING_TRANSACTION
  • INSTALMENT_TRANSACTION
  • ADD_CARDMAINTAIN_CARD
  • EMV_TOKEN_VERIFICATION

2. Paysafe renvoie la réponse suivante :

  • Le paramètre action est défini sur REDIRECT (puisque 3D Secure est activé)
    • "action": "REDIRECT",
  • Un lien payment_redirect pointe vers l’URL d’authentification 3D Secure
{

"id": "81f04f91-7894-4a24-8720-7cb073a360c0",
"paymentType": "CARD",
"paymentHandleToken": "SCGtj9C3K6vNxWMm",
"merchantRefNum": "58936a12-012d-49f4-ba56-a58ede19bff9",
"currencyCode": "USD",
"txnTime": "2021-11-15T11:55:57Z",
"billingDetails": {
"nickName": "Home",
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "172.0.0.1",
"status": "INITIATED",
"links": [
{
"method": "GET",
"rel": "redirect_payment",
"href": "https://api.qa.paysafe.com/cardadapter/v1/authentication/app/index.html?id=81f04f91-7894-4a24-8720-7cb073a360c0"
}
],
"amount": 500,
"action": "REDIRECT",
"usage": "SINGLE_USE",
"timeToLiveSeconds": 299,
transactionType:"transactionType": "PAYMENT",
"executionMode": "SYNCHRONOUS",
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "400000",
"lastDigits": "1091",
"cardCategory": "CREDIT"
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStoreeeeeeeee",
"phone": "1234567899"
},
"returnLinks": [
{
"rel": "default",
"href": "https://usgaminggamblig.com/payment/return/",
"method": "GET"
},
{
"rel": "on_completed",
"href": "https://usgaminggamblig.com/payment/return/success",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://usgaminggamblig.com/payment/return/failed",
"method": "GET"
}
],
"skip3ds": false,
"threeDs": {
"merchantUrl": "https://api.qa.paysafe.com/checkout/v2/index.html#/desktop",
"deviceChannel": "BROWSER",
"messageCategory": "PAYMENT",
"transactionIntent": "GOODS_OR_SERVICE_PURCHASE",
"authenticationPurpose": "PAYMENT_TRANSACTION"
}

}
  1. Dans tous les cas de 3DS2.0 (y compris l’authentification sans friction), vous recevrez toujours une URL de redirection dans la réponse du Payment Handle.
  2. L’URL de redirection et le jeton du Payment Handle restent valides pendant 299 secondes.
  1. Redirigez le client vers l’URL d’authentification 3D Secure.
    • S’il s’agit d’un cas d’authentification sans friction, l’utilisateur sera redirigé vers l’URL on_completed.
    • Dans les autres cas, l’utilisateur verra apparaître la page d’authentification 3DS.
  2. Lorsque l’authentification est réussie, le marchand reçoit une notification à l’adresse URL spécifiée dans le paramètre on_completed inclus dans la requête de gestion de paiement.
  3. Lorsque l’authentification échoue, le marchand reçoit une notification à l’adresse URL spécifiée dans le paramètre on_failed inclus dans la requête de gestion de paiement.
  4. Vous trouverez ci-dessous les états du gestionnaire de paiement.
    • INTIATED lors de la création.
    • PAYABLE lorsque l’authentification est réussie. Vous ne pouvez effectuer une requête de paiement que si le gestionnaire de paiement est Payable.
    • FAILED si l’authentification échoue
    • EXPIRED après 299 secondes à partir de INITIATED

    Comment savoir si un gestionnaire de paiement est Payable?

    • Vous recevrez un webhook lorsque le gestionnaire de paiement deviendra Payable.
    • Si l’utilisateur est redirigé vers l’URL « on_completed », le gestionnaire de paiement sera Payable. Vous envoyez l’URL « on_completed » dans le cadre de la requête de gestion de paiement.
    • Vous pouvez effectuer un appel GET sur l’identifiant du gestionnaire de paiement reçu dans la réponse du gestionnaire de paiement.
  5. Utilisez le jeton paymentHandleToken renvoyé dans la réponse pour traiter la requête de paiement.
  6. Utilisez le jeton paymentHandleToken pour faire un appel de paiements.

État de gestion du paiement

Mastercard

ThreeDResultECICAVVExpérience en matière d’authentificationResponsabilité (en cas de transaction contestée ou de rétrofacturation)Action recommandéeGestion du paiement
A - Tentative d’authentification1Avec carteSans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable
N - Échec de l’authentification0Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
R - Authentification rejetée0Absence de carteSans contactMarchandNe pas poursuivre la transactionÉchec
U - Authentification non disponible0Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
Y - Authentification réussie2Avec carteDéfi/Sans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable

Visa

ThreeDResultECICAVVExpérience en matière d’authentificationResponsabilité (en cas de transaction contestée ou de rétrofacturation)Action recommandéeGestion du paiement
Y - Authentification réussie5Avec carteDéfi/Sans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable
A - Tentative d’authentification6Avec carteSans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable
N - Échec de l’authentification7Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
U - Authentification non disponible7Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
R - Authentification rejetée7Absence de carteSans contactMarchandNe pas poursuivre la transactionÉchec

Amex

ThreeDResultECICAVVExpérience en matière d’authentificationResponsabilité (en cas de transaction contestée ou de rétrofacturation)Action recommandéeGestion du paiement
Y - Authentification réussie5Avec carteDéfi/Sans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable
A - Tentative d’authentification6Avec carteSans contactÉmetteur de la cartePasser à l’autorisation de la cartePayable
N - Échec de l’authentification7Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
U - Authentification non disponible7Absence de carteDéfi/Sans contactMarchandNe pas poursuivre la transactionÉchec
R - Authentification rejetée7Absence de carteSans contactMarchandNe pas poursuivre la transactionÉchec