3DS Results

Results Response Model

23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
public class ThreeDSServerResultsResponse {
  /**
   * Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction. It has
   * the same value as the authentication request. This value has 36 characters in a format defined in IETF RFC 4122.
   */
  private final String threeDSServerTransID;
  /**
   * Indicates whether a transaction qualifies as an authenticated transaction.
   *
   * The accepted values are:
   *
   *  Y -> Authentication / Account verification successful
   *  N -> Not authenticated / Account not verified; Transaction denied
   *  U -> Authentication / Account verification could not be performed; technical or other problem
   *  C -> In order to complete the authentication, a challenge is required
   *  R -> Authentication / Account verification Rejected. Issuer is rejecting authentication/verification
   *       and request that authorization not be attempted
   *  A -> Attempts processing performed; Not authenticated / verified, but a proof of attempt
   *       authentication / verification is provided
   *
   *  The following values are also accepted if the 3DS Server has initiated authentication with EMV 3DS 2.2.0 version
   *  or greater:
   *
   *  D -> In order to complete the authentication, a challenge is required. Decoupled Authentication confirmed.
   *  I -> Informational Only; 3DS Requestor challenge preference acknowledged.
   *
   */
  private final TransactionStatusEnum transStatus;
  /**
   * Payment System-specific value provided as part of the ACS registration for each supported DS. Authentication Value
   * may be used to provide proof of authentication.
   */
  private final String authenticationValue;
  /**
   * Payment System-specific value provided by the ACS to indicate the results of the attempt to authenticate the
   * Cardholder.
   */
  private final String eci;
  /**
   * The received Results Request from the Directory Server.
   */
  private final ResultsRequest resultsRequest;
  /**
   * The sent Results Response to the Directory Server.
   */
  private final ResultsResponse resultsResponse;
  /**
   * Object containing error details if any errors occurred.
   */
  private ErrorDetails errorDetails;
}

Results Response JSON Samples

Results Response with Authentication Value
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "threeDSServerTransID": "8a880dc0-d2d2-4067-bcb1-b08d1690b26e",
  "transStatus": "Y",
  "authenticationValue": "MTIzNDU2Nzg5MDA5ODc2NTQzMjE=",
  "eci": "05",
  "resultsRequest": {
    "threeDSServerTransID":"8a880dc0-d2d2-4067-bcb1-b08d1690b26e",
    "acsTransID":"d7c1ee99-9478-44a6-b1f2-391e29c6b340",
    "acsRenderingType": {
      "acsInterface":"01",
      "acsUiTemplate":"01"
    },
    "authenticationMethod":"02",
    "authenticationType":"02",
    "authenticationValue":"MTIzNDU2Nzg5MDA5ODc2NTQzMjE=",
    "dsTransID":"f25084f0-5b16-4c0a-ae5d-b24808a95e4b",
    "eci":"05",
    "interactionCounter":"02",
    "messageCategory":"01",
    "messageType":"RReq",
    "messageVersion":"2.1.0",
    "transStatus":"Y"
  },
  "resultsResponse": {
    "threeDSServerTransID":"8a880dc0-d2d2-4067-bcb1-b08d1690b26e",
    "acsTransID":"d7c1ee99-9478-44a6-b1f2-391e29c6b340",
    "dsTransID":"f25084f0-5b16-4c0a-ae5d-b24808a95e4b",
    "messageType":"RRes",
    "messageVersion":"2.1.0",
    "resultsStatus":"01"
  },
  "errorDetails": null
}
Results Response with Error (error while validating RReq received from DirectoryServer)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{
  "threeDSServerTransID": "8a880dc0-d2d2-4067-bcb1",
  "transStatus": "Y",
  "authenticationValue": "MTIzNDU2Nzg5MDA5ODc2NTQzMjE=",
  "eci": "05",
  "resultsRequest": {
    "threeDSServerTransID":"8a880dc0-d2d2-4067-bcb1",
    "acsTransID":"d7c1ee99-9478-44a6-b1f2-391e29c6b340",
    "acsRenderingType": {
      "acsInterface":"01",
      "acsUiTemplate":"01"
    },
    "authenticationMethod":"02",
    "authenticationType":"02",
    "authenticationValue":"MTIzNDU2Nzg5MDA5ODc2NTQzMjE=",
    "dsTransID":"f25084f0-5b16-4c0a-ae5d-b24808a95e4b",
    "eci":"05",
    "interactionCounter":"02",
    "messageCategory":"01",
    "messageType":"RReq",
    "messageVersion":"2.1.0",
    "transStatus":"Y"
  },
  "resultsResponse": null,
  "errorDetails": {
    "threeDSServerTransID": "8a880dc0-d2d2-4067-bcb1",
    "acsTransID": "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
    "dsTransID": "f25084f0-5b16-4c0a-ae5d-b24808a95e4b",
    "sdkTransID": null,
    "errorCode": "201",
    "errorComponent": "S",
    "errorDescription": "Validation of 3DS Authentication Response failed. Data element not in the required format or value is invalid.",
    "errorDetail": "threeDSServerTransID"
  }
}