• France
Back Office Marchand
assistance
FAQContacter le support
Rechercher
Catégories
Tags
Français
Français
Anglais
Accueil
Cas d'usage
Créer un paiement
Créer un paiement en plusieurs fois
Créer un paiement par alias (token)
Créer un lien de paiement
Créer un abonnement
Gérer vos abonnements
Gérer vos transactions (rembourser,...)
Analyser vos journaux
Docs API
Formulaire embarqué
API REST
Formulaire en redirection
Intégration mobile
Échange de fichiers
Exemples de code
Moyens de paiement
Modules de paiement
Guides
Back Office Marchand
Guides fonctionnels

3DS2 - Authentification Challenge, avec 3DS Method

Pour tester ce scénario, utilisez un des numéros de carte ci-dessous :

Carte Date de validité Marque
4970110000001003 Au choix VISA
5100010000000106 Au choix MASTERCARD
375900000010015 Au choix AMEX

Cinématique des échanges

  1. Appel initial au service PCI/Charge/Authenticate avec une carte enrôlée 3DS2.

    {
      "amount":"9990",
      "currency":"XPF",
      "transactionCategory":"PAYMENT",
      "productType":"GOODS_OR_SERVICE_PURCHASE",
      "merchant": {
        "mid":"9876357"
      },
      "paymentForm": {
        "expiryMonth":"09",
        "expiryYear":"22",
        "networkPreference":"VISA",
        "pan":"4970110000001003"
      },
      "device": {
        "acceptHeader":"text/html",
        "colorDepth":"32",
        "deviceType":"BROWSER",
        "ip":"69.89.31.226",
        "javaEnabled": true,
        "language":"FR",
        "screenHeight":"768",
        "screenWidth":"1258",
        "timeZoneOffset":"-120",
        "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101"
      },
      "protocolRequest": {
        "name":"THREEDS",
        "version":"2",
        "challengePreference":"NO_PREFERENCE"
      }
    }
  2. Retour avec une instruction FINGERPRINT (3DS Method).

    {
     "webService":"PCI/Charge/Authenticate",
     "version":"V4",
     "applicationVersion":"5.23.0",
     "serverDate":"2021-05-04T13:14:07+00:00",
     "ticket":"bbea766294a84618a2a4b0d167cff9b3",
     "applicationProvider":"",
     "metadata":null,
     "status":"SUCCESS",
     "mode":"TEST",
     "serverUrl":"https://api.secure.osb.pf",
     "_type":"V4/WebService/Response",
     "answer":{
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true,
       "_type":"V4/Charge/Authenticate/Protocol"
      },
      "value":{
       "instructionType":"FORM",
       "name":"FINGERPRINT",
       "timeout":10,
       "target":{
        "element":"IFRAME",
        "visible":false,
        "_type":"V4/Charge/Authenticate/InstructionTarget"
       },
       "http":{
        "method":"POST",
        "url":"<https://acs.sg.com/acs/v2/3dsMethod>",
        "body":{
         "threeDSMethodData":"eyJ0aHJlZURzTW..."
        },
        "_type":"V4/Charge/Authenticate/HttpRequest"
       },
       "_type":"V4/Charge/Authenticate/AuthenticationInstruction"
      },
      "_type":"V4/AuthenticationResponseData"
     }
    }
  3. Redirection vers l’ACS dans l’iFrame invisible, chargement et exécution du code JavaScript de fingerprint de l’ACS.

    Les caractéristiques de l'iFrame sont données dans l'objet answer.value.target.

    Le formulaire à afficher dans l'iFrame est décrit dans l'objet answer.value.http.


  4. Retour via le navigateur avec un résultat d’instruction.

    {
     "eventName":"LYRA_AUTH_INSTRUCTION_RESULT",
     "value":{
      "name":"FINGERPRINT",
      "value":"eyJjZXJ0aWZpY2F0Z...",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true
      }
     }
    }
  5. Nouvel appel au service PCI/Charge/Authenticate en transmettant ce résultat.

    {
      "amount": "9990",
      "currency": "XPF",
      "transactionCategory": "PAYMENT",
      "productType": "GOODS_OR_SERVICE_PURCHASE",
      "merchant": {
        "mid": "9876357"
      },
      "paymentForm": {
        "expiryMonth": "09",
        "expiryYear": "22",
        "networkPreference": "VISA",
        "pan": "4970110000001003"
      },
      "device": {
        "acceptHeader": "text/html",
        "colorDepth": "32",
        "deviceType": "BROWSER",
        "ip": "69.89.31.226",
        "javaEnabled": true,
        "language": "FR",
        "screenHeight": "768",
        "screenWidth": "1258",
        "timeZoneOffset": "-120",
        "userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101"
      },
      "protocolRequest": {
        "name": "THREEDS",
        "version": "2",
     "challengePreference": "NO_PREFERENCE"
      },
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "instructionResult": {
        "name" : "FINGERPRINT",
        "protocol" : {
      "name" : "THREEDS",
      "network": "VISA",
      "version" : "2.1.0",
      "challengePreference": "NO_PREFERENCE",
      "simulation": 1
        },
        "value":"eyJjZXJ0aWZpY2F0Z..."
      }
    }
  6. Retour avec une instruction CHALLENGE de redirection vers l’ACS avec un CReq (iFrame visible).

    {
     "webService":"PCI/Charge/Authenticate",
     "version":"V4",
     "applicationVersion":"5.23.0",
     "serverDate":"2021-05-04T13:14:09+00:00",
     "ticket":"bbea766294a84618a2a4b0d167cff9b3",
     "applicationProvider":"",
     "metadata":null,
     "status":"SUCCESS",
     "mode":"TEST",
     "serverUrl":"https://api.secure.osb.pf",
     "_type":"V4/WebService/Response",
     "answer":{
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true,
       "_type":"V4/Charge/Authenticate/Protocol"
      },
      "value":{
       "instructionType":"FORM",
       "name":"CHALLENGE",
       "timeout":600,
       "target":{
        "element":"IFRAME",
        "visible":true,
        "width":500,
        "height":600,
        "_type":"V4/Charge/Authenticate/InstructionTarget"
       },
       "http":{
        "method":"POST",
        "url":"<https://acs.sg.com/acs/v2/creq>",
        "body":{
         "creq":"eyJ0aHJlZURTU2V...",
         "threeDSSessionData":"H4sIAAAAAAAAAC2..."
        },
        "_type":"V4/Charge/Authenticate/HttpRequest"
       },
       "_type":"V4/Charge/Authenticate/AuthenticationInstruction"
      },
      "_type":"V4/AuthenticationResponseData"
     }
    }
  7. Redirection vers l’ACS dans l’iFrame pour l'authentification du porteur.

    Les caractéristiques de l'iFrame sont données dans l'objet answer.value.target.

    Le formulaire à afficher dans l'iFrame est décrit dans l'objet answer.value.http.


  8. Retour via le navigateur avec un résultat d’instruction.

    {
     "eventName":"LYRA_AUTH_INSTRUCTION_RESULT",
     "value":{
      "name":"CHALLENGE",
      "value":"eyJjZXJ0aWZpY2F0Z...",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true
      }
     }
    }
  9. Nouvel appel au service PCI/Charge/Authenticate en transmettant ce résultat.

    {
      "amount":"9990",
      "currency":"XPF",
      "transactionCategory":"PAYMENT",
      "productType":"GOODS_OR_SERVICE_PURCHASE",
      "merchant": {
        "mid":"9876357"
      },
      "paymentForm": {
        "expiryMonth":"09",
        "expiryYear":"22",
        "networkPreference":"VISA",
        "pan":"4970110000001003"
      },
      "device": {
        "acceptHeader":"text/html",
        "colorDepth":"32",
        "deviceType":"BROWSER",
        "ip":"69.89.31.226",
        "javaEnabled": true,
        "language":"FR",
        "screenHeight":"768",
        "screenWidth":"1258",
        "timeZoneOffset":"-120",
        "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101"
      },
      "protocolRequest": {
        "name":"THREEDS",
        "version":"2",
     "challengePreference":"NO_PREFERENCE"
      },
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "instructionResult": {
     "name" : "CHALLENGE",
     "protocol" : {
       "name" : "THREEDS",
       "network":"VISA",
       "version" : "2.1.0",
       "challengePreference":"NO_PREFERENCE",
       "simulation": 1
     },
     "value":"eyJjZXJ0aWZpY2F0Z..."
      }
    }
  10. Retour du serveur de la plateforme de paiement avec le résultat final d’authentification.
    Authentification réussie

    {
     "webService":"PCI/Charge/Authenticate",
     "version":"V4",
     "applicationVersion":"5.23.0",
     "serverDate":"2021-05-04T13:16:21+00:00",
     "ticket":"bbea766294a84618a2a4b0d167cff9b3",
     "applicationProvider":"",
     "metadata":null,
     "status":"SUCCESS",
     "mode":"TEST",
     "serverUrl":"https://api.secure.osb.pf",
     "_type":"V4/WebService/Response",
     "answer":{
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true,
       "_type":"V4/Charge/Authenticate/Protocol"
      },
      "value":{
       "authenticationType":"CHALLENGE",
       "authenticationId":{
        "authenticationIdType":"dsTransId",
        "value":"18e46ff7-b882-4102-9af4-aef9f40ee6a6",
        "_type":"V4/Charge/Authenticate/AuthenticationId"
       },
       "authenticationValue":{
        "authenticationValueType":"CAVV",
        "value":"PdY1V9f/aHxC2wbZt4/7Z6Q9f44=",
        "_type":"V4/Charge/Authenticate/AuthenticationValue"
       },
       "status":"SUCCESS",
       "commerceIndicator":"05",
       "extension":{
        "authenticationType":"THREEDS_V2",
        "threeDSServerTransID":"3b25e3ed-5d48-4f99-af61-0d5db9e3b18e",
        "dsTransID":"18e46ff7-b882-4102-9af4-aef9f40ee6a6",
        "acsTransID":"410d9fb4-8db1-483e-9a80-f94c3a79017e",
        "_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV2"
       },
       "reason":{
        "_type":"V4/Charge/Authenticate/AuthenticationResultReason"
       },
       "_type":"V4/Charge/Authenticate/AuthenticationResult"
      },
      "_type":"V4/AuthenticationResponseData"
     }
    }
    Authentification en échec

    {
     "webService":"PCI/Charge/Authenticate",
     "version":"V4",
     "applicationVersion":"5.23.0",
     "serverDate":"2021-05-04T13:16:21+00:00",
     "ticket":"bbea766294a84618a2a4b0d167cff9b3",
     "applicationProvider":"",
     "metadata":null,
     "status":"SUCCESS",
     "mode":"TEST",
     "serverUrl":"https://api.secure.osb.pf",
     "_type":"V4/WebService/Response",
     "answer":{
      "id":"4ceb0194-8900-41c6-8ef4-debdbe7421b1",
      "protocol":{
       "name":"THREEDS",
       "version":"2.1.0",
       "network":"VISA",
       "challengePreference":"NO_PREFERENCE",
       "simulation":true,
       "_type":"V4/Charge/Authenticate/Protocol"
      },
      "value":{
       "authenticationType":"CHALLENGE",
       "authenticationId":{
        "authenticationIdType":"dsTransId",
        "value":"e8286d62-006e-413e-ad3b-328503b14e71",
        "_type":"V4/Charge/Authenticate/AuthenticationId"
       },
       "status":"FAILED",
       "extension":{
        "authenticationType":"THREEDS_V2",
        "threeDSServerTransID":"fdce5a18-2f2f-46c7-bdd4-3bd40b7e816d",
        "dsTransID":"e8286d62-006e-413e-ad3b-328503b14e71",
        "acsTransID":"54feb2ac-9666-4ce3-86e5-d8f947cebd87",
        "transStatusReason":"01",
        "_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV2"
       },
       "reason":{
        "code":"CARD_AUTHENTICATION_FAILED",
        "_type":"V4/Charge/Authenticate/AuthenticationResultReason"
       },
       "_type":"V4/Charge/Authenticate/AuthenticationResult"
      },
      "_type":"V4/AuthenticationResponseData"
     }
    }
© 2025 Tous droits réservés à PayZen by OSB
25.22-1.11