3DS1 - Authentication completed ((SUCCESS or FAILED)
To test this scenario, use one of the card numbers below:
CARD | Expiry date | Label |
---|---|---|
4970100000000022 | To be chosen | VISA |
5970100300000026 | To be chosen | MASTERCARD |
378283000000002 | To be chosen | AMEX |
When entering the authentication code, type:
- The expected code, to obtain a successful authentication.
- A wrong code, to obtain a failed authentication.
Exchange flow
1. Initial call to the PCI/Charge/CreatePayment service with a card enrolled in 3DS1
{ "amount": "9990", "currency": "EUR", "paymentForms": [ { "paymentMethodType": "CARD", "pan": "4970100000000022", "expiryMonth": "11", "expiryYear": "27", "securityCode": "123" } ], "device": { "acceptHeader":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", "colorDepth":"24", "deviceType":"BROWSER", "ip":"69.89.31.226", "javaEnabled":false, "language":"fr-FR", "screenHeight":"720", "screenWidth":"1280", "timeZoneOffset":"-60", "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36" }, "customer": { "email": "<sample@example.com>" } }
2. A return with a CHALLENGE instruction of redirection to the ACS with a paReq (visible iFrame).
{ "webService":"PCI/Charge/CreatePayment", "version":"V4", "applicationVersion":"5.31.0", "serverDate":"2021-11-30T10:24:50+00:00", "ticket":"b0120fbd871d4a1b8eb4b281e2ab267d", "applicationProvider":"", "status":"SUCCESS", "mode":"TEST", "serverUrl":"https://api.scelliuspaiement.labanquepostale.fr", "_type":"V4/WebService/Response", "answer":{ "id":"5191fc3c-6993-4fb0-ba67-39336ff63e5e", "operationSessionId":"6c6c586ec15b41e68470730596386249", "protocol":{ "name":"THREEDS", "version":"1.0.2", "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":390, "height":467, "_type":"V4/Charge/Authenticate/InstructionTarget", "showUrl":true, "fullscreen":false }, "http":{ "method":"POST", "url":"<https://acs-test.com/acs/v1/interactive_authenticate>", "body":{ "MD":"H4sIAAAAAAAAAD1RyZaiMBT9IuswiMMSGSSRgEAIhI1HQCbDoHTJ8PVNdWkv7iL33SHJu02wikLIXYOoo4LORR7YAHY4-LyVxYE-p0cyhVwXEgX0oHGlRFnm9_e51vto-tFDjCpfAA33dZvgQENrdoSxuAZcaZdwGyqwCBffAs7GCW_NRQLKMQE1n4CqWyBzFgY8wsnawsmAVHmy9aE0F9wW2GwoaTAqKCCacyeWy-AJEzJ4egf8eu8RYTwFhMxn8uuJ3h5UyRPC2ohmOUdY3qDK2Vj48NvdHN7dd8n-cLX14cRPPxXIm4MfTf8_f7knYh_dMqva0fqnkX49LII-p7997J3jjzbWazpblYnp0o3-WMeoRApfUkxFEyMJzUiIaiogweej95sSfuls3CkNyB6UQ3ld_njpK31Nx_70swuy_tkNwnS2VSDYaiIhg_vKOEZOV8V3_T8Ti27nbdypWqcPhXoO7mAtbYmXp5MkPVkqZ0pwTC8rtioPulGL1Hg9YzmLn56nrvW2WTtnPhszh36fa0k2zNfTC9xQVsKs1VLlnEfHvZIPyckLOcPFWE0eySlfBTV2mwJ-c-LQw-h2E4eOn7Ds-2jixd3Q3rPRfETjYw9607jteLLaeQ_RcnfmvMp6SO8XwRr4EWxXmBspzw6bXSVL56PBXpenVWxM26W7I2bBQLSqU7DuXMQmaR_DSz4o3rp34pY38rSXSCp4g7Ju2aa6PhJ4pXn_gHebxgX7vuxT4EPbacgYcLIaUJw4cy-KwXUs9q0Wx4UMOfOU5eqxB0vcX_Gwn8w2AwAA", "PaReq":"eJxVUttu4jAQ/ZUo78F2rgRNXMFCBVXpsly02n2pjDMpkXKBOCzw97XDpd28ZM7M5MzknIGnc1lY/7BReV0lNutR28JK1mlefST2Zv3s9G1LtaJKRVFXmNgXVPYTh/WuQRyvUB4b5DBHpcQHWnma2O8Bi1kmPemEcew5fralzlaEkePFnhdmWehhgDaHxXCJBw630VxP7rlA7lBTNnInqpaDkIfR7I37cRREfSA3CCU2szGnfuAGLOoHEaXU1eVrGipRIn+9NMJazVdAOgiyPlZtc+FuQIHcARybgu/adj8g5HQ69Qr9kaNK1ZN1CcQUgXwtsziaSGmyc55yUYwYjkeT+fPyZb7ZT/9Ol/Xyd/HyZ6MSIKYDUtEid6nLGPOoxejA9QdmfJcHUZoteBzHOnUDsDczht8r3zOgJW+0RRceGzkeCPC81w7pDi3jI4YUldR/cHt9rf9japSVrRZLBNk2kNocGqa+CNI+FXFIt33tU6d312Toc6Odx1jHbwAQQzM5t1gZ1zr/V7P55nW4nv18e9cWT37ZlmzyNpeiSOxMFMp4r13Gw0JUxlTK6P1xrwdwLQF58JrFr9dCbpemo/8u8BNbcuWy", "TermUrl":"<https://pass-inte01.lyra-labs.fr/public/v1/3dsv1/notify/pares/5191fc3c-6993-4fb0-ba67-39336ff63e5e/VISA>" }, "_type":"V4/Charge/Authenticate/HttpRequest" }, "_type":"V4/Charge/Authenticate/AuthenticationInstruction" }, "_type":"V4/AuthenticationResponseData" } }
3. Redirection to the ACS in the iFrame, cardholder authentication
The iFrame characteristics are provided in the answer.value.target object.
The form to be displayed in the iFrame is described in the answer.value.http object.
4. Return via the browser with an instruction result
{ "eventName":"LYRA_AUTH_INSTRUCTION_RESULT", "value":{ "name":"CHALLENGE", "value":"eyJjZXJ0aWZpY2F0ZSI6IlBBU1NfbWFzdGVyX0pXVCIsInR5cCI6IkpXVCIsImFsZyI6IlJTMjU2In0.eyJwYXNzQ2xhaW0iOiJ7XCJwcm90b2NvbFwiOntcIm5hbWVcIjpcIlRIUkVFRFNcIixcInZlcnNpb25cIjpcIjEuMC4yXCIsXCJuZXR3b3JrXCI6XCJWSVNBXCIsXCJjaGFsbGVuZ2VQcmVmZXJlbmNlXCI6XCJOT19QUkVGRVJFTkNFXCIsXCJzaW11bGF0aW9uXCI6dHJ1ZX0sXCJhdXRoZW50aWNhdGlvblJlc3VsdFwiOntcInJlc3BvbnNlVHlwZVwiOlwiUkVTVUxUXCIsXCJ0eXBlXCI6XCJDSEFMTEVOR0VcIixcImF1dGhlbnRpY2F0aW9uSWRcIjp7XCJ0eXBlXCI6XCJ4aWRcIixcInZhbHVlXCI6XCJhbEIxZURCRU1GUkpNVXBIWkhSb1JXbEpZVXM9XCJ9LFwiYXV0aGVudGljYXRpb25WYWx1ZVwiOntcInR5cGVcIjpcIkNBVlZcIixcInZhbHVlXCI6XCJRMkYyZGtOaGRuWkRZWFoyUTJGMmRrTmhkblk9XCJ9LFwic3RhdHVzXCI6XCJTVUNDRVNTXCIsXCJjb21tZXJjZUluZGljYXRvclwiOlwiMDVcIixcImV4dGVuc2lvblwiOntcInR5cGVcIjpcIlRIUkVFRFNfVjFcIixcImVucm9sbGVkXCI6XCJZXCIsXCJhbGdvcml0aG1OYW1lXCI6XCJDVlZfQVROXCIsXCJhbGdvcml0aG1cIjpcIjJcIixcInNpZ25hdHVyZVZhbGlkXCI6dHJ1ZX19LFwiZXZlbnRzXCI6W10sXCJpZFwiOlwiNTE5MWZjM2MtNjk5My00ZmIwLWJhNjctMzkzMzZmZjYzZTVlXCJ9IiwiaXNzIjoiUEFTUyIsImV4cCI6MTYzODI2OTAyNn0.L_zmOJ-Go2ZhsYgF6eRu2iUeXJAc29R8xqgG1WrigEcPyGI14bgTWC0Q_d9iwoDLTJMsl2CEZf0AXzw6PScNrhb86o7ytgPgH2dogsa_XNX9ZzUyFJi0rW9cR2Q0vjGv1DvRiQVbhrRJoYEbpS4BBiVYkYQMkA2eB67rklupp7Ue4oUZjQqQPc-L-TRNKtDsdprExgmSqABkdhygUkCSWEzmSmspaiuz38FsPf4gF_URGsu8JnN5V9dY2P2c6mCy_LQzEMIB8FnJSPAAhzPpgH0J0jpdI1dwhudcgyf3U1VP2qz3O_YOQ-p-_3lCOe08jyaVxI9qMQY0dv8eXD6vEw", "protocol":{ "name":"THREEDS", "version":"1.0.2", "network":"VISA", "challengePreference":"NO_PREFERENCE", "simulation":true } } }
5. New call to the PCI/Charge/CreatePayment service passing the instruction result and the session ID (operationSessionId)
{ "operationSessionId": "6c6c586ec15b41e68470730596386249", "instructionResult": { "name" : "CHALLENGE", "protocol" : { "name" : "THREEDS", "network": "VISA", "version" : "1.0.2", "challengePreference": "NO_PREFERENCE", "simulation": 1 }, "value": "eyJjZXJ0aWZpY2F0ZSI6IlBBU1NfbWFzdGVyX0pXVCIsInR5cCI6IkpXVCIsImFsZyI6IlJTMjU2In0.eyJwYXNzQ2xhaW0iOiJ7XCJwcm90b2NvbFwiOntcIm5hbWVcIjpcIlRIUkVFRFNcIixcInZlcnNpb25cIjpcIjEuMC4yXCIsXCJuZXR3b3JrXCI6XCJWSVNBXCIsXCJjaGFsbGVuZ2VQcmVmZXJlbmNlXCI6XCJOT19QUkVGRVJFTkNFXCIsXCJzaW11bGF0aW9uXCI6dHJ1ZX0sXCJhdXRoZW50aWNhdGlvblJlc3VsdFwiOntcInJlc3BvbnNlVHlwZVwiOlwiUkVTVUxUXCIsXCJ0eXBlXCI6XCJDSEFMTEVOR0VcIixcImF1dGhlbnRpY2F0aW9uSWRcIjp7XCJ0eXBlXCI6XCJ4aWRcIixcInZhbHVlXCI6XCJhbEIxZURCRU1GUkpNVXBIWkhSb1JXbEpZVXM9XCJ9LFwiYXV0aGVudGljYXRpb25WYWx1ZVwiOntcInR5cGVcIjpcIkNBVlZcIixcInZhbHVlXCI6XCJRMkYyZGtOaGRuWkRZWFoyUTJGMmRrTmhkblk9XCJ9LFwic3RhdHVzXCI6XCJTVUNDRVNTXCIsXCJjb21tZXJjZUluZGljYXRvclwiOlwiMDVcIixcImV4dGVuc2lvblwiOntcInR5cGVcIjpcIlRIUkVFRFNfVjFcIixcImVucm9sbGVkXCI6XCJZXCIsXCJhbGdvcml0aG1OYW1lXCI6XCJDVlZfQVROXCIsXCJhbGdvcml0aG1cIjpcIjJcIixcInNpZ25hdHVyZVZhbGlkXCI6dHJ1ZX19LFwiZXZlbnRzXCI6W10sXCJpZFwiOlwiNTE5MWZjM2MtNjk5My00ZmIwLWJhNjctMzkzMzZmZjYzZTVlXCJ9IiwiaXNzIjoiUEFTUyIsImV4cCI6MTYzODI2OTAyNn0.L_zmOJ-Go2ZhsYgF6eRu2iUeXJAc29R8xqgG1WrigEcPyGI14bgTWC0Q_d9iwoDLTJMsl2CEZf0AXzw6PScNrhb86o7ytgPgH2dogsa_XNX9ZzUyFJi0rW9cR2Q0vjGv1DvRiQVbhrRJoYEbpS4BBiVYkYQMkA2eB67rklupp7Ue4oUZjQqQPc-L-TRNKtDsdprExgmSqABkdhygUkCSWEzmSmspaiuz38FsPf4gF_URGsu8JnN5V9dY2P2c6mCy_LQzEMIB8FnJSPAAhzPpgH0J0jpdI1dwhudcgyf3U1VP2qz3O_YOQ-p-_3lCOe08jyaVxI9qMQY0dv8eXD6vEw" } }
6. Return from the payment gateway server with the final payment result
Successful authentication.
{ "webService":"PCI/Charge/CreatePayment", "version":"V4", "applicationVersion":"5.31.0", "status":"SUCCESS", "answer":{ "shopId":"12345678", "orderCycle":"CLOSED", "orderStatus":"PAID", "serverDate":"2021-11-30T10:28:49+00:00", "orderDetails":{ "orderTotalAmount":9990, "orderEffectiveAmount":9990, "orderCurrency":"EUR", "mode":"TEST", "_type":"V4/OrderDetails" }, "customer":{ "email":"<sample@example.com>", "extraDetails":{ "ipAddress":"10.33.117.42", "browserUserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36", "_type":"V4/Customer/ExtraDetails" }, "_type":"V4/Customer/Customer" }, "transactions":[ { "shopId":"12345678", "uuid":"d83aad913c2943249f71847576031cea", "amount":9990, "currency":"EUR", "paymentMethodType":"CARD", "status":"PAID", "detailedStatus":"AUTHORISED", "operationType":"DEBIT", "effectiveStrongAuthentication":"ENABLED", "creationDate":"2021-11-30T10:28:47+00:00", "transactionDetails":{ "liabilityShift":"YES", "effectiveAmount":9990, "effectiveCurrency":"EUR", "creationContext":"CHARGE", "cardDetails":{ "paymentSource":"EC", "manualValidation":"NO", "expectedCaptureDate":"2021-11-30T10:24:49+00:00", "effectiveBrand":"CB", "pan":"497010XXXXXX0022", "expiryMonth":11, "expiryYear":2027, "country":"FR", "issuerName":"Banque de démo et de l'innovation", "effectiveProductCode":"G1", "legacyTransId":"902107", "legacyTransDate":"2021-11-30T10:28:47+00:00", "paymentMethodSource":"NEW", "authorizationResponse":{ "amount":9990, "currency":"EUR", "authorizationDate":"2021-11-30T10:28:47+00:00", "authorizationNumber":"3fdb6e", "authorizationResult":"0", "authorizationMode":"FULL", "_type":"V4/PaymentMethod/Details/Cards/CardAuthorizationResponse" }, "authenticationResponse":{ "id":"5191fc3c-6993-4fb0-ba67-39336ff63e5e", "operationSessionId":"6c6c586ec15b41e68470730596386249", "protocol":{ "name":"THREEDS", "version":"1.0.2", "network":"VISA", "challengePreference":"NO_PREFERENCE", "simulation":true, "_type":"V4/Charge/Authenticate/Protocol" }, "value":{ "authenticationType":"CHALLENGE", "authenticationId":{ "authenticationIdType":"xid", "value":"alB1eDBEMFRJMUpHZHRoRWlJYUs=", "_type":"V4/Charge/Authenticate/AuthenticationId" }, "authenticationValue":{ "authenticationValueType":"CAVV", "value":"2**************************=", "_type":"V4/Charge/Authenticate/AuthenticationValue" }, "status":"SUCCESS", "commerceIndicator":"05", "extension":{ "authenticationType":"THREEDS_V1", "enrolled":"Y", "algorithmName":"CVV_ATN", "algorithm":"2", "signatureValid":true, "_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV1" }, "_type":"V4/Charge/Authenticate/AuthenticationResult" }, "_type":"V4/AuthenticationResponseData" }, "_type":"V4/PaymentMethod/Details/CardDetails" }, "mid":"9999999", "sequenceNumber":1, "tid":"012", "acquirerNetwork":"CB", "occurrenceType":"UNITAIRE", "_type":"V4/TransactionDetails" }, "_type":"V4/PaymentTransaction" } ], "_type":"V4/Payment" }, "ticket":"a3c5aa370d454dae9015f36d494b944c", "serverDate":"2021-11-30T10:28:49+00:00", "applicationProvider":"", "mode":"TEST", "serverUrl":"https://api.scelliuspaiement.labanquepostale.fr", "_type":"V4/WebService/Response" }
Failed authentication
{ "webService":"PCI/Charge/CreatePayment", "version":"V4", "applicationVersion":"5.31.0", "status":"SUCCESS", "answer":{ "shopId":"12345678", "orderCycle":"CLOSED", "orderStatus":"UNPAID", "serverDate":"2021-11-30T10:48:24+00:00", "orderDetails":{ "orderTotalAmount":9990, "orderEffectiveAmount":9990, "orderCurrency":"EUR", "mode":"TEST", "_type":"V4/OrderDetails" }, "customer":{ "email":"<sample@example.com>", "extraDetails":{ "ipAddress":"10.33.117.42", "browserUserAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36", "_type":"V4/Customer/ExtraDetails" }, "_type":"V4/Customer/Customer" }, "transactions":[ { "shopId":"12345678", "uuid":"de6b21b132dd4fd18d0f930f20abeede", "amount":9990, "currency":"EUR", "paymentMethodType":"CARD", "status":"UNPAID", "detailedStatus":"REFUSED", "operationType":"DEBIT", "effectiveStrongAuthentication":"DISABLED", "creationDate":"2021-11-30T10:48:23+00:00", "errorCode":"PSP_539", "errorMessage":"3D Secure refusal for the transaction", "detailedErrorCode":"39", "detailedErrorMessage":"3D Secure refusal for the transaction.", "transactionDetails":{ "effectiveAmount":9990, "effectiveCurrency":"EUR", "creationContext":"CHARGE", "cardDetails":{ "paymentSource":"EC", "manualValidation":"NO", "expectedCaptureDate":"2021-11-30T10:48:12+00:00", "effectiveBrand":"CB", "pan":"497010XXXXXX0022", "expiryMonth":11, "expiryYear":2027, "country":"FR", "issuerName":"Banque de démo et de l'innovation", "effectiveProductCode":"G1", "legacyTransId":"937933", "legacyTransDate":"2021-11-30T10:48:23+00:00", "paymentMethodSource":"NEW", "authenticationResponse":{ "id":"c53a0b05-c423-4ada-be2d-7ccd8bee4cab", "operationSessionId":"da07b3a51eeb4058898be86fad26267b", "protocol":{ "name":"THREEDS", "version":"1.0.2", "network":"VISA", "challengePreference":"NO_PREFERENCE", "simulation":true,"_type":"V4/Charge/Authenticate/Protocol" }, "value":{ "authenticationType":"CHALLENGE", "authenticationId":{ "authenticationIdType":"xid", "value":"SXNGa0REQ0cwdUVwWUp3eEN5WHQ=", "_type":"V4/Charge/Authenticate/AuthenticationId" }, "status":"FAILED", "commerceIndicator":"06", "extension":{ "authenticationType":"THREEDS_V1", "enrolled":"Y", "signatureValid":true,"_type":"V4/Charge/Authenticate/AuthenticationResultExtensionThreedsV1" }, "reason":{ "code":"REJECTED", "_type":"V4/Charge/Authenticate/AuthenticationResultReason" }, "_type":"V4/Charge/Authenticate/AuthenticationResult" }, "_type":"V4/AuthenticationResponseData" }, "_type":"V4/PaymentMethod/Details/CardDetails" }, "mid":"9999999", "sequenceNumber":1, "tid":"012", "acquirerNetwork":"CB", "occurrenceType":"UNITAIRE", "_type":"V4/TransactionDetails" }, "_type":"V4/PaymentTransaction" } ], "_type":"V4/Payment" }, "ticket":"629e68b351a3414eb209dc126429e16d", "serverDate":"2021-11-30T10:48:24+00:00", "applicationProvider":"", "mode":"TEST", "serverUrl":"https://api.scelliuspaiement.labanquepostale.fr", "_type":"V4/WebService/Response" }