Get 3DS Session Details
GET/3DS-sessions/:id
Returns the details of a 3DS session and indicates the outcome of the 3DS authentication.
This endpoint uses the SmartPay BaseURL and Authorization.
Request
Path Parameters
Id to be obtained from the Create 3DS Session endpoint.
Header Parameters
Must be application/json
Must be be en-US
The origin of the request
The client making the request
Basic M2lwN2Yx...OGU3Mg==
Responses
- 200
- 400
- 401
- 403
- 404
- 500
3DS authentication status successfully returned
From the received response, please extract the mandatory 6 parameters below and be prepared to provide those parameters for the endpoints Create 3DS Payment or Card on File(/docs/smartpay-openapi/create-card-on-file).
- acsEci
- authenticationToken
- transactionStatus
- protocolVersion
- dsTransactionId
- acsTransactionId
- application/json
- Schema
- Example (auto)
- Example
Schema
- Y: Authentication/Account verification successful
- N: Not authenticated / Account not verified / Transaction denied
- U: Authentication could not be performed
- A: Attempts processing performed
- R: Authentication/Account verification rejected
3ds object
Contains the 3D Secure authentication result details.
Specifies the 3DS protocol version used during the authentication.
Possible values: [3DS2]
3DS23ds2 object
Contains 3DS2-specific fields and nested authentication data.
3dsMethod object
Contains metadata related to the 3DS Method which allows for frictionless authentication.
HTML content used to embed an iframe that automatically performs the 3DS method call.
Encoded data to be posted to the Access Control Server (ACS) for the 3DS method.
Endpoint of the Access Control Server to which the 3dsMethodPostData is submitted.
challengeData object
Contains data related to the challenge flow if the issuer requires step-up authentication.
The URL of the Access Control Server (ACS) for executing the challenge flow.
The encoded CReq (Challenge Request) payload sent to the ACS for initiating the challenge.
HTML used to render and submit the CReq form inside an iframe for challenge completion.
Electronic Commerce Indicator (ECI) value returned by the ACS. Indicates the outcome of authentication.
Possible values: <= 2 characters
02Authentication token to be submitted for subsequent MIT payments or storing card data.
Possible values: <= 64 characters
Unique transaction identifier generated by the 3DS provider for tracking this session.
Identifier generated by the 3DS Server for this authentication session.
Unique transaction ID assigned by the ACS to this session.
Identifier for the directory server used in the 3DS process (e.g., Visa, Mastercard, etc.).
Possible values: <= 20 characters
Unique transaction ID assigned by the Directory Server.
Indicates whether the 3DS method call has been completed.
Indicates whether the 3DS method is supported by the cardholder's issuing bank.
Possible values: [SUPPORTED, NOT_SUPPORTED]
Version of the 3DS protocol used during the authentication process.
Possible values: [2.1.0, 2.2.0]
The identifier of the requesting party (e.g., the merchant or PSP).
Possible values: <= 64 characters
The name of the requesting party.
Possible values: <= 255 characters
Final status of the 3DS transaction:
Possible values: [Y, N, U, A, R]
device object
Metadata about the device and browser used for the authentication.
User-agent string of the customer's browser.
Possible values: <= 512 characters
browserDetails object
Technical attributes and capabilities of the customer's browser.
The Accept HTTP headers sent by the browser.
Possible values: <= 256 characters
Color depth of the browser's screen in bits.
24Indicates whether Java is enabled in the browser.
Indicates whether JavaScript is enabled in the browser.
Language setting of the browser (e.g., 'en', 'de').
Possible values: <= 8 characters
Height of the user's screen in pixels.
Width of the user's screen in pixels.
Preferred window size for the 3DS challenge iframe display.
Possible values: [250x400, 390x400, 500x600, 600x400, FULL_SCREEN]
IP address of the customer's device.
{
"3ds": {
"version": "3DS2",
"3ds2": {
"3dsMethod": {
"redirectHtml": "string",
"3dsMethodPostData": "string",
"3dsMethodUrl": "string"
},
"challengeData": {
"acsUrl": "string",
"cReq": "string",
"redirectHtml": "string"
},
"acsEci": "02",
"authenticationToken": "string",
"transactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"3dsServerTransactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"acsTransactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"directoryServerId": "string",
"dsTransactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"methodCompleted": true,
"methodSupported": "SUPPORTED",
"protocolVersion": "2.1.0",
"requestorId": "string",
"requestorName": "string",
"transactionStatus": "Y"
}
},
"device": {
"browser": "string",
"browserDetails": {
"acceptHeaders": "string",
"colorDepth": 24,
"javaEnabled": true,
"javaScriptEnabled": true,
"language": "string",
"screenHeight": 0,
"screenWidth": 0,
"3DSecureChallengeWindowSize": "250x400"
},
"ipAddress": "198.51.100.42"
}
}
{
"3DS": {
"version": "3DS2",
"3DS2": {
"3DSMethod": {
"redirectHtml": "<div id=\"initiate3DSSimpleRedirect\" xmlns=\"http://www.w3.org/1999/html\"> <iframe id=\"methodFrame\" name=\"methodFrame\" height=\"100\" width=\"200\" > </iframe> <form id =\"initiate3DSSimpleRedirectForm\" method=\"POST\" action=\"https://na.gateway.mastercard.com/acs/mastercard/v2/method\" target=\"methodFrame\"> <input type=\"hidden\" name=\"threeDSMethodData\" value=\"eyJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIjoiaHR0cHM6Ly9uYS5nYXRld2F5Lm1hc3RlcmNhcmQuY29tL2NhbGxiYWNrSW50ZXJmYWNlL2dhdGV3YXkvMWU3NzJhODhiMDJjODA1ZjEzNjM3ZWU2NjM2YjI3MzM5YzEyMzQxZmNjNjM4ZjZmOTk5NGMyY2I2ZGVjNmQxMyIsInRocmVlRFNTZXJ2ZXJUcmFuc0lEIjoiN2VmZjRhN2EtMWQ0NC00MzczLWJlYTgtNGU4ZWM0YWI5N2M3In0=\" /> </form> <script id=\"initiate-authentication-script\"> var e=document.getElementById(\"initiate3DSSimpleRedirectForm\"); if (e) { e.submit(); if (e.parentNode !== null) { e.parentNode.removeChild(e); } } </script> </div>",
"3DSMethodPostData": "eyJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIjoiaHR0cHM6Ly9uYS5nYXRld2F5Lm1hc3RlcmNhcmQuY29tL2NhbGxiYWNrSW50ZXJmYWNlL2dhdGV3YXkvMWU3NzJhODhiMDJjODA1ZjEzNjM3ZWU2NjM2YjI3MzM5YzEyMzQxZmNjNjM4ZjZmOTk5NGMyY2I2ZGVjNmQxMyIsInRocmVlRFNTZXJ2ZXJUcmFuc0lEIjoiN2VmZjRhN2EtMWQ0NC00MzczLWJlYTgtNGU4ZWM0YWI5N2M3In0=",
"3DSMethodUrl": "https://na.gateway.mastercard.com/acs/mastercard/v2/method"
},
"challengeData": {
"acsUrl": "https://na.gateway.mastercard.com/acs/mastercard/v2/prompt",
"cReq": "eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjdlZmY0YTdhLTFkNDQtNDM3My1iZWE4LTRlOGVjNGFiOTdjNyJ9",
"redirectHtml": "<div id=\"threedsChallengeRedirect\" xmlns=\"http://www.w3.org/1999/html\" style=\" height: 100vh\"> <form id =\"threedsChallengeRedirectForm\" method=\"POST\" action=\"https://na.gateway.mastercard.com/acs/mastercard/v2/prompt\" target=\"challengeFrame\"> <input type=\"hidden\" name=\"creq\" value=\"eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjdlZmY0YTdhLTFkNDQtNDM3My1iZWE4LTRlOGVjNGFiOTdjNyJ9\" /> </form> <iframe id=\"challengeFrame\" name=\"challengeFrame\" width=\"100%\" height=\"100%\" ></iframe> <script id=\"authenticate-payer-script\"> var e=document.getElementById(\"threedsChallengeRedirectForm\"); if (e) { e.submit(); if (e.parentNode !== null) { e.parentNode.removeChild(e); } } </script> </div>"
},
"acsEci": "02",
"authenticationToken": "kHyn+7YFi1EUAREAAAAvNUe6Hv8=",
"transactionId": "68f92ff6-c417-40df-bfaf-6518c43f40fb",
"3DSServerTransactionId": "7eff4a7a-1d44-4373-bea8-4e8ec4ab97c7",
"acsTransactionId": "0571d1c1-df05-4a6b-83c9-b6d1617a64f6",
"directoryServerId": "A999999999",
"dsTransactionId": "68f92ff6-c417-40df-bfaf-6518c43f40fb",
"methodCompleted": true,
"methodSupported": "SUPPORTED",
"protocolVersion": "2.1.0",
"requestorId": "MAS00001_INT_MPGS_NATEA7C2FAQ89PE83",
"requestorName": "Client",
"transactionStatus": "Y"
}
},
"device": {
"browser": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0",
"browserDetails": {
"acceptHeaders": "application/json",
"colorDepth": 24,
"javaEnabled": false,
"javaScriptEnabled": false,
"language": "en",
"screenHeight": 1284,
"screenWidth": 1674,
"3DSecureChallengeWindowSize": "FULL_SCREEN"
},
"ipAddress": "192.224.73.15"
}
}
Bad Request
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Value out of bounds. Value must be between 1 and 100",
"code": "value_out_of_bounds",
"property": "someField",
"context": {
"minimum": 1,
"maximum": 100
}
}
]
}
Unauthenticated
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "You are not authenticated to perform this request.",
"code": "unauthorized"
}
]
}
Forbidden
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "You do not have permissions to perform this request.",
"code": "forbidden"
}
]
}
Not Found
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Resource not found.",
"code": "not_found"
}
]
}
Internal Server Error
For error handling, please refer to this section.
- application/json
- Schema
- Example (auto)
- Example
Schema
- string
- string[]
errorDetails object
message object
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Internal server error."
}
]
}