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/api-only/api-only-card-on-file/index.md).
acsEci
authenticationToken
transactionStatus
protocolVersion
dsTransactionId
acsTransactionId
- application/json
- Schema
- Example (from schema)
- 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.
Possible values: [3DS2
]
Specifies the 3DS protocol version used during the authentication.
3ds2
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.
Possible values: <= 2 characters
Electronic Commerce Indicator (ECI) value returned by the ACS. Indicates the outcome of authentication.
Possible values: <= 64 characters
Authentication token to be submitted for subsequent MIT payments or storing card data.
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.
Possible values: <= 20 characters
Identifier for the directory server used in the 3DS process (e.g., Visa, Mastercard, etc.).
Unique transaction ID assigned by the Directory Server.
Indicates whether the 3DS method call has been completed.
Possible values: [SUPPORTED
, NOT_SUPPORTED
]
Indicates whether the 3DS method is supported by the cardholder's issuing bank.
Possible values: [2.1.0
, 2.2.0
]
Version of the 3DS protocol used during the authentication process.
Possible values: <= 64 characters
The identifier of the requesting party (e.g., the merchant or PSP).
Possible values: <= 255 characters
The name of the requesting party.
Possible values: [Y
, N
, U
, A
, R
]
Final status of the 3DS transaction:
device
object
Metadata about the device and browser used for the authentication.
Possible values: <= 512 characters
User-agent string of the customer's browser.
browserDetails
object
Technical attributes and capabilities of the customer's browser.
Possible values: <= 256 characters
The Accept HTTP headers sent by the browser.
Color depth of the browser's screen in bits.
Indicates whether Java is enabled in the browser.
Indicates whether JavaScript is enabled in the browser.
Possible values: <= 8 characters
Language setting of the browser (e.g., 'en', 'de').
Height of the user's screen in pixels.
Width of the user's screen in pixels.
Possible values: [250x400
, 390x400
, 500x600
, 600x400
, FULL_SCREEN
]
Preferred window size for the 3DS challenge iframe display.
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 (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"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 (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"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 (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"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 (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"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 (from schema)
- Example
Schema
- MOD1
- MOD2
Array [
]
errorDetails
object
message
object
oneOf
string
string
{
"error": "string",
"errorDetails": {
"context": {},
"gatewayDescription": "string",
"paymentProviderDescription": "string"
},
"message": "string"
}
{
"traceId": "00-1234567890abcdef0123456789abcdef-0123456789abcdef-00",
"errors": [
{
"message": "Internal server error."
}
]
}