Test your integration

On this page

While you set up your integration environment, you must test the different authentication flows supported by 3D Secure 2: frictionless, challenge, 3DS 1 fallback, and 3RI (3DS requestor-initiated). Use the test card numbers on this page to test these scenarios in the UAT environment only, i.e., the test environment. For each test scenario, we have listed the key input data that can help to trigger the test scenario and the key fields you should receive in the response body.

error_outline

note

You must also enter all required parameters for a successful request and response. Each section also links to request samples relevant to that section. For field descriptions, see API reference.

Test credentials

To get authentication credentials that you would need to test the different integration options in the sandbox environment, fill in the information requested in this form.

3D Secure 2 test credentials request form open_in_new

3DS 2 Test cards

You can use the following card numbers when testing your integration. Use these test cards only in Elavon's UAT environment (test systems). These card numbers will return an error if used in a live environment.

error_outline

important

A. Do not use live numbers for testing.

B. You can use any future date for the expiration date. For the CVC/CVV code, enter any three-digit for Visa, Mastercard, and Discover cards and any four-digit for American Express cards.

3DS 2 - Test cards for /3ds2/lookup scenarios

Scenario Test card numbers
ACS Version is 2.1.0 and threeDSMethodURL present in the /3ds2/lookup response
  • Visa - 4000000000000077
  • Mastercard - 5123610000000007
  • American Express - 370000000000002
  • Discover - 6011000990139424
  • Diners - 36070500001012
ACS Version 2.1.0 and threeDSMethodURL and threeDSMethodData NOT present in the /3ds2/lookup response
  • Visa - 4601660000000014
  • Discover - 6011800000000007
ACS Version is 1.0.2
  • Visa - 4698460128979270
Out of range card number Any account/card number other than the card numbers mentioned on this page. For example, 7008013267046805.

For sample lookup or 3D Secure version check scenarios, see /3ds2/lookup scenarios

3DS 2 - Test cards for /3ds2/authenticate scenarios

error_outline

note

  • If you use the purchaseAmount to trigger a scenario, you can use any valid card number in the acctNumber field. If you use the acctNumber to trigger a scenario, you can use any purchaseAmount.

  • In a production environment, the liability shift is only for disputed transactions or chargebacks. Use the following information related to liability shift and next steps for merchants as a reference. These can differ for each card scheme and each issuer might have a different criteria for liability shift.

transStatus Description Authentication values returned Test values Liability shift Next step
Y Frictionless flow: Transaction is successfully authenticated eci = 05 (Visa)/ 02 (Mastercard)
authenticationValue - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 100
  • acctNumber = 4000000000000101 for Visa
  • acctNumber = 5413330089604111 for Mastercard
Card issuer Use the eci and authenticationValue for card authorization.
A Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated (returns a digit eci value) eci = 06 (Visa) / 01(Mastercard)
authenticationValue - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 101
  • acctNumber = 4000000000000119 for Visa
  • acctNumber = 5353161802533432 for Mastercard
Card issuer Use the eci and authenticationValue for card authorization.
A Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated (returns a non-digit eci value) eci = A6 (Visa and Amex)/ A1 (Mastercard)
authenticationValue - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 102
  • acctNumber = 4000000000000150 for Visa
Card issuer Use the eci and authenticationValue for card authorization.
N Frictionless flow: Transaction is not authenticated authenticationValue - No
transStatusReason - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 103
  • acctNumber = 4000000000000127 for Visa
  • acctNumber = 5413330089600036 for Mastercard
No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk
U Frictionless flow: Transaction is not authenticated because of technical or other problems authenticationValue - No
transStatusReason - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 104
  • acctNumber = 4000000000000135 for Visa
No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk
R Frictionless flow: Transaction is not authenticated because the issuer is rejecting authentication authenticationValue - No
transStatusReason - Yes
Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 105
  • acctNumber = 4000000000000143 for Visa
No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk
C Challenge flow: Issuer needs additional verification from the cardholder to authenticate the transaction authenticationValue - No
transStatusReason - No
In the /3ds2/authenticate request, set a purchaseAmount or use an acctNumber that is not mentioned on this page.
  • purchaseAmount = any value not mentioned on this page
  • acctNumber = any valid card number not mentioned on this page
  • threeDSRequestorChallengeInd = set the field value to 04, which means that a challenge is requested, if required.
Transaction authentication is in progress. Liability shift will be determined after the cardholder completes the challenge. To simulate the challenge response in the test environment, Elavon's ACS emulator displays a challenge window, where you can select Y to simulate a successful challenge or N to simulate a challenge failure. You can also change the passphrase from 'validtext' to any other text and select Proceed. The challenge window lets you have three tries before failing the challenge.
Note that in a production environment, you have to create an iframe to facilitate the challenge process between the issuer and the cardholder. After the challenge is complete, verify the challenge completion response. For detailed steps, see step 6 and 7 in the Direct integration with the 3DS Server topic.

Error scenarios

Failure scenarios Test value
Error: Directory Server Timed out Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 921
  • acctNumber = 4000000000000416 for Visa
Error: Directory Server Unavailable Set one of the following values in the /3ds2/authenticate request:
  • purchaseAmount = 922
  • acctNumber = 4000000000000424 for Visa
ACS method call timeout In the /3ds2/lookup request, set acctNumber = 4000000000000010
ACS method call failure In the /3ds2/lookup request, set acctNumber = 4000000000000002
ACS method notify call failure In the /3ds2/lookup request, set acctNumber = 4000000000000028

For sample authentication scenarios, see /3ds2/authenticate scenarios

3DS 2: Test cards to test 3DS Requestor Initiated (3RI) Transactions

transStatus Description Other values returned Test values Liability shift Next steps
Y Frictionless flow: Transaction is successfully authenticated authenicationValue and eci In the /3ds2/authenticate request, set acctNumber = 4000000000000101 Card issuer Use the eci and authenticationValue for card authorization.
A Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated authenicationValue and eci In the /3ds2/authenticate request, set acctNumber = 4000000000000119 Card issuer Use the eci and authenticationValue for card authorization.
N Transaction is not authenticated transStatusReason In the /3ds2/authenticate request, set acctNumber = 4000000000000127 No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk
U Transaction was not authenticated because of technical or other problems transStatusReason In the /3ds2/authenticate request, set acctNumber = 4000000000000135 No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk
R To test a transaction that was not authenticated because the issuer is rejecting authentication transStatusReason In the /3ds2/authenticate request, set acctNumber = 4000000000000143 No liability shift If you get this value, verify the value in the transStatusReason field. Based on the value received, you can do either of the following:
  • Try to send the authentication request again
  • Request the customer for another form of payment
  • Decline the transaction
  • Move forward with authorization at your own risk

For sample 3RI authentication scenarios, see /3ds2/authenticate scenarios

3DS 1 - Test cards to test scenarios that support only 3DS 1 or 3DS 1 fallback

Scenario Test values
Card supports only 3DS 1 and also enrolled in 3DS 1 Mastercard - 5000620300000001
Visa - 4000000000000000022
American Express - 345177925488348
Card supports only 3DS 1 but not enrolled in 3DS 1 Mastercard - 2222400070000005
Visa - 4988438843884305
Card supports only 3DS 2. Returns an error when 3DS 1 fallback is attempted Visa - 4485575886748612

To simulate different challenge responses in the test environment, Elavon's ACS emulator displays a challenge window, where you can select a PaRes status. The response would vary depending on the PaRes status you select. Note that in a 3DS 1 transaction, the response returns the transStatus value as either of the following: Y, N, U, A.

  • If you get a transStatus value of Y or A:

    • The response returns the eci and authenticationValue fields.
    • The liability shifts from the merchant to the issuer. You can use the authentication values to proceed to card authorization.
  • If you get a transStatus value of N or U:

    • You can either retry authentication.
    • Request the customer for another form of payment.
    • Proceed with authorization without liability shift.

The final response returns the following values:

  • in case of a successful validation – valid: true, xid, cavvAlgorithm, authenticationValue, eci, transStatus

  • in case of a failed validation - valid: false

Sample scenarios: /3ds2/lookup

Sample scenarios: /3ds2/authenticate

Lookup scenarios (/3ds2/lookup)

Lookup Scenario 1: Account number supports EMV 3DS 2.1 and is available in Elavon's bin database, an internal repository

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/lookup

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "acctNumber" : "4485363933630",
   "doBinLookup" : true,
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}

Sample response

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "threeDSServerTransID" : "dc94433c-d001-47d1-aa3b-842ef658abe3",
   "directoryServerId" : "DirectoryServerID-DEMO-VISA",
   "dsStartProtocolVersion" : "2.1.0",
   "dsEndProtocolVersion" : "2.2.0",
   "acsStartProtocolVersion" : "2.1.0",
   "acsEndProtocolVersion" : "2.2.0",
   "threeDSMethodURL" : "https://uat.acs.fraud.eu.elavonaws.com/acs/method/VISA",
   "threeDSMethodData" : "ewogICJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIjogImh0dHBzOi8vZGV2Lmd3LmZyYXVkLmV1LmVsYXZvbmF3cy5jb20vbm90aWZ5L21ldGhvZF9ub3RpZnkiLAogICJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ICJkYzk0NDMzYy1kMDAxLTQ3ZDEtYWEzYi04NDJlZjY1OGFiZTMiCn0=",
   "binInfo" : {
         "bin" : "448536",
         "scheme" : "Visa",
         "brand" : "Visa Credit",
         "fundingSource" : "credit",
         "issuingBank" : "BANKERS' BANK OF KANSAS",
         "issuingCountry" : "USA",
         "issuingCurrency" : "USD",
         "isDebit" : "false",
         "isCorporate" : "true",
         "isDccAllowed" : "true"
   },
   "serverStartProtocolVersion" : "1.0.2", 
   "serverEndProtocolVersion" : "2.1.0"
}
error_outline

note

If the doBinLookup parameter is set to false, the binInfo object is not returned in the response.

Lookup Scenario 2: Account number supports EMV 3DS 2.1, but is not available in Elavon's bin database, an internal repository

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/lookup

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "acctNumber" : "5377955933798158",
   "doBinLookup" : true,
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}

Sample response

{
   "threeDSServerTransID" : "bbd3a975-ba7c-4a14-8a94-3e08701da0b4",
   "directoryServerId" : "DirectoryServerID-DEMO-MC",
   "dsStartProtocolVersion" : "2.1.0",
   "dsEndProtocolVersion" : "2.2.0",
   "acsStartProtocolVersion" : "2.1.0",
   "acsEndProtocolVersion" : "2.2.0",
   "threeDSMethodURL" : "https://uat.acs.fraud.eu.elavonaws.com/acs/method/MC",
   "threeDSMethodData" : "ewogICJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIjogImh0dHBzOi8vZGV2Lmd3LmZyYXVkLmV1LmVsYXZvbmF3cy5jb20vbm90aWZ5L21ldGhvZF9ub3RpZnkiLAogICJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ICJiYmQzYTk3NS1iYTdjLTRhMTQtOGE5NC0zZTA4NzAxZGEwYjQiCn0=",
   "binInfo" : {
      "bin" : "537795",
      "scheme" : "Unknown",
      "brand" : "Unknown",
      "fundingSource" : "unknown",
      "isDebit" : "unknown",
      "isCorporate" : "unknown",
      "isDccAllowed" : "unknown"
   },
   "serverStartProtocolVersion" : "1.0.2", 
   "serverEndProtocolVersion" : "2.1.0"
}
error_outline

note

If the doBinLookup parameter is set to false, the binInfo object is not returned in the response.

Lookup Scenario 3: Account number does not support EMV 3DS 2.1, but is available in Elavon's bin database, an internal repository

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/lookup

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "acctNumber" : "5893501234567891231",
   "doBinLookup" : true,
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}

Sample response

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "error" : {
      "messageType" : "Erro",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "3f21d17d-0f6e-44b4-92c4-e5300e672743",
      "errorCode" : "305",
      "errorComponent" : "S",
      "errorDescription" : "Account number not supported",
      "errorDetail" : "Account number not supported by 3DS 2.1. Validate the account number: 58XXXXXXXXXXXXX1231"
   },
  "binInfo" : {
      "bin" : "589350",
      "scheme" : "MasterCard",
      "brand" : "Maestro",
      "fundingSource" : "debit",
      "issuingCountry" : "BES",
      "issuingCurrency" : "USD",
      "isDebit" : "true",
      "isCorporate" : "false",
      "isDccAllowed" : "true"
   },
   "serverStartProtocolVersion" : "1.0.2", 
   "serverEndProtocolVersion" : "2.1.0"
}    
error_outline

note

If the doBinLookup parameter is set to false, the binInfo object is not returned in the response.

Lookup Scenario 4: Account number does not support EMV 3DS 2.1 and is also not available in Elavon's bin database, an internal repository

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/lookup

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "acctNumber" : "4927261276919182790",
   "doBinLookup" : true,
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}

Sample response

{
   "messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
   "error" : {
      "messageType" : "Erro",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "57eaae4d-d05d-473b-b3be-28d45e37b8f8",
      "errorCode" : "305",
      "errorComponent" : "S",
      "errorDescription" : "Account number not supported",
      "errorDetail" : "Account number not supported by 3DS 2.1. Validate the account number: 49XXXXXXXXXXXXX2790"
      },
   "binInfo" : {
      "bin" : "492726",
      "scheme" : "Unknown",
      "brand" : "Unknown",
      "fundingSource" : "unknown",
      "isDebit" : "unknown",
      "isCorporate" : "unknown",
      "isDccAllowed" : "unknown"
    },
   "serverStartProtocolVersion" : "1.0.2", 
   "serverEndProtocolVersion" : "2.1.0"
}    
error_outline

note

If the doBinLookup parameter is set to false, the binInfo object is not returned in the response.

Authentication scenarios (/3ds2/authenticate)

Authentication Scenario 1: Challenge flow - Issuer requires a cardholder challenge to complete authentication i.e. transStatus = C

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4017730000000005",
     "billAddrCity" : "Athens",
     "billAddrCountry" : "840",
     "billAddrLine1" : "Bill Address Line 1",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrPostCode" : "30603",
     "billAddrState" : "GA",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
      "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name",
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Atlanta",
     "shipAddrPostCode" : "30303",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "d46a84fb-c856-48b4-9790-3a97a472535a",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
     {
       "name" : "msgextname",
       "id" : "501341592B_0001_4567",
       "criticalityIndicator" : false,
       "data" : {
         "valueOne" : "messageextensiondata",
         "valueTwo" : "moremessageextensiondata"
        }
      }
   ],
     "recurringExpiry" : "20180131",
     "recurringFrequency" : "06",
     "broadInfo" : {
        "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}

Sample response

{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "d46a84fb-c856-48b4-9790-3a97a472535a",
      "dsTransID" : "29cfed11-cbbc-4828-b7e4-9f2fc5ded313",
      "acsTransID" : "5088dad7-358b-43a9-816d-bdce3789ae36",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "C",
      "authenticationType" : "01",
      "acsChallengeMandated" : "Y",
      "acsURL" : "https://uat1.acs.fraud.eu.elavonaws.com/acs/challenge/VISA",
   },
   "creq" : "ewogICJtZXNzYWdlVHlwZSI6ICJDUmVxIiwKICAibWVzc2FnZVZlcnNpb24iOiAiMi4xLjAiLAogICJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ICJkNDZhODRmYi1jODU2LTQ4YjQtOTc5MC0zYTk3YTQ3MjUzNWEiLAogICJhY3NUcmFuc0lEIjogIjUwODhkYWQ3LTM1OGItNDNhOS04MTZkLWJkY2UzNzg5YWUzNiIsCiAgImNoYWxsZW5nZVdpbmRvd1NpemUiOiAiMDUiLAogICJzZGtUcmFuc0lEIjogIjhhODgwZGMwLWQyZDItNDA2Ny1iY2IxLWIwOGQxNjkwYjI2ZSIKfQ=="
}

Authentication Scenario 2: Friction less flow - cardholder authenticated i.e. transStatus = Y

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4000000000000101",
     "billAddrLine1" : "Bill Address Line 1",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrCity" : "Atlanta",
     "billAddrPostCode" : "30303",
     "billAddrState" : "GA",
     "billAddrCountry" : "840",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
      "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name",    
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Athens",
     "shipAddrPostCode" : "30603",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "31d6241e-cda9-45c6-a632-4bc3a24dc759",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
      {
        "name" : "msgextname",
        "id" : "501341592B_0001_4567",
        "criticalityIndicator" : false,
        "data" : {
           "valueOne" : "messageextensiondata",
           "valueTwo" : "moremessageextensiondata"
         }
      }
   ],
     "recurringExpiry" : "20180131",
     "recurringFrequency" : "06",
     "broadInfo" : {
        "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" :"2.1.0",
   "clientEndProtocolVersion" :"2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "31d6241e-cda9-45c6-a632-4bc3a24dc759",
      "dsTransID" : "ad1562a1-0ed4-4c54-8f7d-e84ddf0fa81d",
      "acsTransID" : "55e45af1-5502-4f7c-ab2a-8602e6b0acab",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "Y",
      "authenticationValue" : "IIVbTr028SCd-iJPDZRSaOZFiVg=",
      "eci" : "05"
   }
}
error_outline

note

If the messageCategory = 01 in the authentication request, the authentication response will include the eci and authenticationValue. If the messageCategory = 02 in the authentication request, then depending on the card scheme, the authentication response may include the eci and authenticationValue.

Device channel = 03

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_3",
  "aReq" : {
      "messageVersion" : "2.1.0",
      "deviceChannel" : "03",
      "messageCategory" : "02",
      "threeDSRequestorID" : "773",
      "threeDSRequestorName" : "EMVCo 3DS Test Requestor",
      "threeDSRequestorURL" : "http://ul.com/6deed7d5-e87e-4885-9f24-708938eefa95",
      "threeRIInd" : "04",
      "threeDSServerOperatorID" : "threeDSServerOperatorUL",
      "acctNumber" : "4000000000000101",
      "acctID" : "EMVCo 3DS Test Account 000000001",
      "acctType" : "02",
      "acctInfo" : {
         "chAccAgeInd" : "05",
         "chAccDate" : "20170101",
         "chAccChangeInd" : "04",
         "chAccChange" : "20170101",
         "chAccP wChangeInd" : "05",
         "chAccPwChange" : "20170101",
         "shipAddressUsageInd" : "04",
         "shipAddressUsage" : "20170101",
         "txnActivityDay" : "1",
         "txnActivityYear" : "1",
         "provisionAttemptsDay" : "0",
         "nbPurchaseAccount" : "1",
         "suspiciousAccActivity" : "01",
         "shipNameIndicator" : "01",
         "paymentAccInd" : "05",
         "paymentAccAge" : "20170101"
      },
      "merchantRiskIndicator" : {
         "shipIndicator" : "01",
         "deliveryTimeframe" : "02",
         "deliveryEmailAddress" : "example@example.com",
         "reorderItemsInd" : "01",
         "preOrderPurchaseInd" : "02",
         "preOrderDate" : "20300101",
         "giftCardAmount" : "1",
         "giftCardCurr" : "840",
         "giftCardCount" : "01"
      },
      "cardExpiryDate" : "2212",
      "cardholderName" : "Frictionless One",
      "homePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "workPhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "email" : "example@example.com",
      "billAddrLine1" : "Address Line 1",
      "billAddrLine2" : "Address Line 2",
      "billAddrLine3" : "Address Line 3",
      "billAddrCity" : "Atlanta",
      "billAddrState" : "GA",
      "billAddrPostCode" : "30303",
      "billAddrCountry" : "840",
      "shipAddrLine1" : "Address Line 1",
      "shipAddrLine2" : "Address Line 2",
      "shipAddrLine3" : "Address Line 3",
      "shipAddrCity" : "Athens",
      "shipAddrState" : "GA",
      "shipAddrPostCode" : "30603",
      "shipAddrCountry" : "840"
   },
   "clientStartProtocolVersion" :"2.1.0",
   "clientEndProtocolVersion" :"2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_3",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "dd5260d7-b8f2-426f-b2ac-e2dec3076945",
      "dsTransID" : "74ddd6b2-9693-4aed-9d7f-7e953b72e592",
      "acsTransID" : "25764d84-fdb7-487c-a5c3-947a75446900",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "Y",
      "authenticationValue" : "xewz7kMJo0RSjE9Q2KpmGPEO5ic=",
      "eci" : "05"
   }
}

Authentication Scenario 3: Cardholder doesn't get authenticated, but a proof of authentication attempt (an authenticationValue) was generated i.e. transStatus = A

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4000000000000119",   
     "billAddrLine1" : "Bill Address Line 1",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrCity" : "Athens",
     "billAddrPostCode" : "30603",
     "billAddrState" : "GA",
     "billAddrCountry" : "840",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
      "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name", 
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Atlanta",
     "shipAddrPostCode" : "30303",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "c5e55968-3a22-4003-ba84-756734481f60",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
     {
        "name" : "msgextname",
        "id" : "501341592B_0001_4567",
        "criticalityIndicator" : false,
        "data" : {
           "valueOne" : "messageextensiondata",
           "valueTwo" : "moremessageextensiondata"
         }
      }
   ],
     "recurringExpiry" : "20180131",
     "recurringFrequency" : "06",
     "broadInfo" : {
        "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "c5e55968-3a22-4003-ba84-756734481f60",
      "dsTransID" : "d781469d-4b71-4eb8-af7d-3f514e25de8d",
      "acsTransID" : "078383c4-4a67-49d1-b752-5ebaf2e2610d",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "A",
      "authenticationValue" : "2wrr6cD6ZR0_p9lEYkdgl-TbTf4=",
      "eci" : "06"
   }
}

Device channel = 03

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_3",
  "aReq" : {
      "messageVersion" : "2.1.0",
      "deviceChannel" : "03",
      "messageCategory" : "02",
      "threeDSRequestorID" : "773",
      "threeDSRequestorName" : "EMVCo 3DS Test Requestor",
      "threeDSRequestorURL" : "http://ul.com/6deed7d5-e87e-4885-9f24-708938eefa95",
      "threeDSServerOperatorID" : "threeDSServerOperatorUL",
      "threeRIInd" : "04",
      "acctNumber" : "4000000000000119",
      "acctType" : "02",
      "acctID" : "EMVCo 3DS Test Account 000000001",
      "acctInfo" : {
         "chAccAgeInd" : "05",
         "chAccDate" : "20170101",
         "chAccChangeInd" : "04",
         "chAccChange" : "20170101",
         "chAccP wChangeInd" : "05",
         "chAccPwChange" : "20170101",
         "shipAddressUsageInd" : "04",
         "shipAddressUsage" : "20170101",
         "txnActivityDay" : "1",
         "txnActivityYear" : "1",
         "provisionAttemptsDay" : "0",
         "nbPurchaseAccount" : "1",
         "suspiciousAccActivity" : "01",
         "shipNameIndicator" : "01",
         "paymentAccInd" : "05",
         "paymentAccAge" : "20170101"
      },
      "merchantRiskIndicator" : {
         "shipIndicator" : "01",
         "deliveryTimeframe" : "02",
         "deliveryEmailAddress" : "example@example.com",
         "reorderItemsInd" : "01",
         "preOrderPurchaseInd" : "02",
         "preOrderDate" : "20300101",
         "giftCardAmount" : "1",
         "giftCardCurr" : "840",
         "giftCardCount" : "01"
      },
      "cardExpiryDate" : "2212",
      "cardholderName" : "Frictionless One",
      "homePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "workPhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "email" : "example@example.com",
      "billAddrLine1" : "Address Line 1",
      "billAddrLine2" : "Address Line 2",
      "billAddrLine3" : "Address Line 3",
      "billAddrCity" : "Athens",
      "billAddrState" : "GA",
      "billAddrPostCode" : "30603",
      "billAddrCountry" : "840",
      "shipAddrLine1" : "Address Line 1",
      "shipAddrLine2" : "Address Line 2",
      "shipAddrLine3" : "Address Line 3",
      "shipAddrCity" : "Atlanta",
      "shipAddrState" : "GA",
      "shipAddrPostCode" : "30303",
      "shipAddrCountry" : "840"
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_3",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "103f294a-0d6b-434c-8d38-0423158cd652",
      "dsTransID" : "fe3082cc-705d-456d-9b1e-f4f27c34dfe9",
      "acsTransID" : "640bc8ad-09a0-4a9b-a1ea-aefbabdf1653",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "A",
      "authenticationValue" : "C9miMJ9_cIwWezXODswzSlUCNZ8=",
      "eci" : "06"
   }
}

Authentication Scenario 4: Cardholder doesn't get authenticated i.e. transStatus = N

eci and authenticationValue will not be generated, but the response will include the transStatusReason to indicate the reason for authentication denial

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4000000000000127",   
     "billAddrLine1" : "Bill Address Line 1 ",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrCity" : "Athens",
     "billAddrPostCode" : "30603",
     "billAddrState" : "GA",
     "billAddrCountry" : "840",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
      "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name",
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Atlanta",
     "shipAddrPostCode" : "30303",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "508de82f-ac7b-475f-b8ad-0c70e9bba775",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
     {
        "name" : "msgextname",
        "id" : "501341592B_0001_4567",
        "criticalityIndicator" : false,
        "data" : {
           "valueOne" : "messageextensiondata",
           "valueTwo" : "moremessageextensiondata"
         }
      }
   ],
      "recurringExpiry" : "20180131",
      "recurringFrequency" : "06",
      "broadInfo" : {
         "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "508de82f-ac7b-475f-b8ad-0c70e9bba775",
      "dsTransID" : "0f07e894-23ec-475e-8993-2cdd4b292c79",
      "acsTransID" : "215793d0-2dc7-4f84-8c79-ad47539f035f",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "N",
      "transStatusReason" : "11",
      "cardholderInfo" : "The purchase cannot be completed at this time. For additional information, please contact your card issuer at XXX-XXX-XXXX."
   }
}

Device channel = 03

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_3",
  "aReq" : {
      "messageVersion" : "2.1.0",
      "deviceChannel" : "03",
      "messageCategory" : "02",
      "threeDSRequestorID" : "773",
      "threeDSRequestorName" : "EMVCo 3DS Test Requestor",
      "threeDSRequestorURL" : "http://ul.com/6deed7d5-e87e-4885-9f24-708938eefa95",
      "threeDSServerOperatorID" : "threeDSServerOperatorUL",
      "threeRIInd" : "04",
      "acctNumber" : "4000000000000127",
      "acctType" : "02",
      "acctID" : "EMVCo 3DS Test Account 000000001",
      "acctInfo" : {
         "chAccAgeInd" : "05",
         "chAccDate" : "20170101",
         "chAccChangeInd" : "04",
         "chAccChange" : "20170101",
         "chAccP wChangeInd" : "05",
         "chAccPwChange" : "20170101",
         "shipAddressUsageInd" : "04",
         "shipAddressUsage" : "20170101",
         "txnActivityDay" : "1",
         "txnActivityYear" : "1",
         "provisionAttemptsDay" : "0",
         "nbPurchaseAccount" : "1",
         "suspiciousAccActivity" : "01",
         "shipNameIndicator" : "01",
         "paymentAccInd" : "05",
         "paymentAccAge" : "20170101"
      },
      "merchantRiskIndicator" : {
         "shipIndicator" : "01",
         "deliveryTimeframe" : "02",
         "deliveryEmailAddress" : "example@example.com",
         "reorderItemsInd" : "01",
         "preOrderPurchaseInd" : "02",
         "preOrderDate" : "20300101",
         "giftCardAmount" : "1",
         "giftCardCurr" : "840",
         "giftCardCount" : "01"
      },
      "cardExpiryDate" : "2212",
      "cardholderName" : "Frictionless One",
      "homePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "workPhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "email" : "example@example.com",
      "billAddrLine1" : "Address Line 1",
      "billAddrLine2" : "Address Line 2",
      "billAddrLine3" : "Address Line 3",
      "billAddrCity" : "Atlanta",
      "billAddrState" : "GA",
      "billAddrPostCode" : "30303",
      "billAddrCountry" : "840",
      "shipAddrLine1" : "Address Line 1",
      "shipAddrLine2" : "Address Line 2",
      "shipAddrLine3" : "Address Line 3",
      "shipAddrCity" : "Athens",
      "shipAddrState" : "GA",
      "shipAddrPostCode" : "30603",
      "shipAddrCountry" : "840"
    },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_3",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "bef87244-eb00-41c8-b5e7-86433a49c22a",
      "dsTransID" : "0b518136-1bca-417c-8f1f-c3061f9e4f8a",
      "acsTransID" : "93559a73-b3fe-46ba-825b-ae5dba1cea1b",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "N",
      "transStatusReason" : "01"
   }
}

Authentication Scenario 5: Cardholder doesn't get authenticated, as authentication could not be performed due to technical or other issue i.e. transStatus = U

eci and authenticationValue will not be generated, but the response will include the transStatusReason to indicate the reason for authentication denial

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4000000000000135",     
     "billAddrLine1" : "Bill Address Line 1",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrCity" : "Atlanta",
     "billAddrPostCode" : "30303",
     "billAddrState" : "GA",
     "billAddrCountry" : "840",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
      "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name",
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Athens",
     "shipAddrPostCode" : "30603",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "2df8522f-fa1d-46a8-8207-0f60b0734c70",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
      {
        "name" : "msgextname",
        "id" : "501341592B_0001_4567",
        "criticalityIndicator" : false,
        "data" : {
           "valueOne" : "messageextensiondata",
           "valueTwo" : "moremessageextensiondata"
         }
      }
   ],
     "recurringExpiry" : "20180131",
     "recurringFrequency" : "06",
     "broadInfo" : {
        "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "2df8522f-fa1d-46a8-8207-0f60b0734c70",
      "dsTransID" : "1c7389a6-d1e9-4447-ab3b-903ce85e7d20",
      "acsTransID" : "0c909d9c-2002-4038-8a74-9bb28bb3caf1",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "U",
      "transStatusReason" : "08"
   }
}

Device channel = 03

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_3",
  "aReq" : {
      "messageVersion" : "2.1.0",
      "deviceChannel" : "03",
      "messageCategory" : "02",
      "threeDSRequestorID" : "773",
      "threeDSRequestorName" : "EMVCo 3DS Test Requestor",
      "threeDSRequestorURL" : "http://ul.com/6deed7d5-e87e-4885-9f24-708938eefa95",
      "threeDSServerOperatorID" : "threeDSServerOperatorUL",
      "threeRIInd" : "04",
      "acctNumber" : "4000000000000135",
      "acctID" : "EMVCo 3DS Test Account 000000001",
      "acctType" : "02",
      "acctInfo" : {
         "chAccAgeInd" : "05",
         "chAccDate" : "20170101",
         "chAccChangeInd" : "04",
         "chAccChange" : "20170101",
         "chAccP wChangeInd" : "05",
         "chAccPwChange" : "20170101",
         "shipAddressUsageInd" : "04",
         "shipAddressUsage" : "20170101",
         "txnActivityDay" : "1",
         "txnActivityYear" : "1",
         "provisionAttemptsDay" : "0",
         "nbPurchaseAccount" : "1",
         "suspiciousAccActivity" : "01",
         "shipNameIndicator" : "01",
         "paymentAccInd" : "05",
         "paymentAccAge" : "20170101"
      },
      "merchantRiskIndicator" : {
         "shipIndicator" : "01",
         "deliveryTimeframe" : "02",
         "deliveryEmailAddress" : "example@example.com",
         "reorderItemsInd" : "01",
         "preOrderPurchaseInd" : "02",
         "preOrderDate" : "20300101",
         "giftCardAmount" : "1",
         "giftCardCurr" : "840",
         "giftCardCount" : "01"
      },
      "cardExpiryDate" : "2212",
      "cardholderName" : "Frictionless One",
      "homePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "workPhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "email" : "example@example.com",
      "billAddrLine1" : "Address Line 1",
      "billAddrLine2" : "Address Line 2",
      "billAddrLine3" : "Address Line 3",
      "billAddrCity" : "Atlanta",
      "billAddrState" : "GA",
      "billAddrPostCode" : "30303",
      "billAddrCountry" : "840",
      "shipAddrLine1" : "Address Line 1",
      "shipAddrLine2" : "Address Line 2",
      "shipAddrLine3" : "Address Line 3",
      "shipAddrCity" : "Athens",
      "shipAddrState" : "GA",
      "shipAddrPostCode" : "30603",
      "shipAddrCountry" : "840"
   },
   "clientStartProtocolVersion" :"2.1.0",
   "clientEndProtocolVersion" :"2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_3",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "5fcc0f67-eb85-41e0-8f81-c8864f6cd5dd",
      "dsTransID" : "5166fc51-4f18-4972-8ff6-d206098ee6af",
      "acsTransID" : "30fae289-3ba2-4f26-b841-76c6ff81722b",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "U",
      "transStatusReason" : "08"
   }
}

Authentication Scenario 6: Cardholder doesn't get authenticated because the issuer is rejecting authentication and requesting that authorization not be attempted i.e. transStatus = R

eci and authenticationValue will not be generated, but the response will include the transStatusReason to indicate the reason for authentication denial

Device channel = 02

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_2",
  "aReq" : {
     "threeDSCompInd" : "Y",
     "addrMatch" : "N",
     "cardExpiryDate" : "1912",
     "acctNumber" : "4000000000000143",
     "billAddrLine1" : "Bill Address Line 1",
     "billAddrLine2" : "Bill Address Line 2",
     "billAddrLine3" : "Bill Address Line 3",
     "billAddrCity" : "Atlanta",
     "billAddrPostCode" : "30303",
     "billAddrState" : "GA",
     "billAddrCountry" : "840",
     "email" : "test@elavon.com",
     "notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
     "homePhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
     "workPhone" : {
        "cc" : "123",
        "subscriber" : "123456789"
      },
     "cardholderName" : "Cardholder Name",
     "shipAddrLine1" : "Address Line 1",
     "shipAddrLine2" : "Address Line 2",
     "shipAddrLine3" : "Address Line 3",
     "shipAddrCity" : "Athens",
     "shipAddrPostCode" : "30603",
     "shipAddrState" : "GA",
     "shipAddrCountry" : "840",
     "deviceChannel" : "02",
     "browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
     "browserIP" : "192.168.1.11",
     "browserJavaEnabled" : true,
     "browserLanguage" : "en",
     "browserColorDepth" : "48",
     "browserScreenHeight" : "400",
     "browserScreenWidth" : "600",
     "browserTZ" : "-240",
     "browserUserAgent" : "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
     "messageCategory" : "01",
     "purchaseAmount" : "5000",
     "purchaseCurrency" : "978",
     "purchaseExponent" : "2",
     "purchaseDate" : "20170316141312",
     "transType" : "01",
     "threeDSServerTransID" : "f7820db8-85ec-4c33-b010-b3e14dc4daec",
     "threeDSRequestorAuthenticationInd" : "01",
     "threeDSRequestorAuthenticationInfo" : {
        "threeDSReqAuthMethod" : "02",
        "threeDSReqAuthTimestamp" : "201711071307",
        "threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "threeDSRequestorChallengeInd" : "02",
     "threeDSRequestorPriorAuthenticationInfo" : {
        "threeDSReqPriorRef" : "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
        "threeDSReqPriorAuthMethod" : "02",
        "threeDSReqPriorAuthTimestamp" : "201710282113",
        "threeDSReqPriorAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
      },
     "acctType" : "03",
     "acctInfo" : {
        "chAccAgeInd" : "03",
        "chAccDate" : "20140328",
        "chAccChangeInd" : "04",
        "chAccChange" : "20160712",
        "chAccPwChangeInd" : "02",
        "chAccPwChange" : "20170328",
        "shipAddressUsageInd" : "04",
        "shipAddressUsage" : "20160714",
        "txnActivityDay" : "01",
        "txnActivityYear" : "21",
        "provisionAttemptsDay" : "0",
        "nbPurchaseAccount" : "11",
        "suspiciousAccActivity" : "01",
        "shipNameIndicator" : "02",
        "paymentAccInd" : "04",
        "paymentAccAge" : "20160917"
      },
     "acctID" : "personal account",
     "payTokenInd" : true,
     "purchaseInstalData" : "24",
     "merchantRiskIndicator" : {
        "shipIndicator" : "02",
        "deliveryTimeframe" : "01",
        "deliveryEmailAddress" : "deliver@email.com",
        "reorderItemsInd" : "01",
        "preOrderPurchaseInd" : "02",
        "preOrderDate" : "20170519",
        "giftCardAmount" : "337",
        "giftCardCurr" : "840",
        "giftCardCount" : "02"
      },
     "messageExtension" : [
     {
        "name" : "msgextname",
        "id" : "501341592B_0001_4567",
        "criticalityIndicator" : false,
        "data" : {
           "valueOne" : "messageextensiondata",
           "valueTwo" : "moremessageextensiondata"
         }
      }
   ],
      "recurringExpiry" : "20180131",
      "recurringFrequency" : "06",
      "broadInfo" : {
         "message" : "TLS 1.x will be turned off starting summer 2019"
      }
   },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_2",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "f7820db8-85ec-4c33-b010-b3e14dc4daec",
      "dsTransID" : "468ba730-0ac2-4972-acaa-d76a3ec76bd1",
      "acsTransID" : "8c70bce5-a1bf-4575-840c-ab1e85f8ad1a",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "R",
      "transStatusReason" : "15"
   }
}

Device channel = 03

Sample request

POST https://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticate

{
  "messageId" : "Device_Channel_3",
  "aReq" : {
      "messageVersion" : "2.1.0",
      "deviceChannel" : "03",
      "messageCategory" : "02",
      "threeDSRequestorID" : "773",
      "threeDSRequestorName" : "EMVCo 3DS Test Requestor",
      "threeDSServerOperatorID" : "threeDSServerOperatorUL",
      "threeDSRequestorURL" : "http://ul.com/6deed7d5-e87e-4885-9f24-708938eefa95",
      "threeRIInd" : "04",
      "acctNumber" : "4000000000000143",
      "acctID" : "EMVCo 3DS Test Account 000000001",
      "acctType" : "02",
      "cardExpiryDate" : "2212",
      "cardholderName" : "Frictionless One",
      "acctInfo" : {
         "chAccAgeInd" : "05",
         "chAccDate" : "20170101",
         "chAccChangeInd" : "04",
         "chAccChange" : "20170101",
         "chAccP wChangeInd" : "05",
         "chAccPwChange" : "20170101",
         "shipAddressUsageInd" : "04",
         "shipAddressUsage" : "20170101",
         "txnActivityDay" : "1",
         "txnActivityYear" : "1",
         "provisionAttemptsDay" : "0",
         "nbPurchaseAccount" : "1",
         "suspiciousAccActivity" : "01",
         "shipNameIndicator" : "01",
         "paymentAccInd" : "05",
         "paymentAccAge" : "20170101"
      },
      "merchantRiskIndicator" : {
         "shipIndicator" : "01",
         "deliveryTimeframe" : "02",
         "deliveryEmailAddress" : "example@example.com",
         "reorderItemsInd" : "01",
         "preOrderPurchaseInd" : "02",
         "preOrderDate" : "20300101",
         "giftCardAmount" : "1",
         "giftCardCurr" : "840",
         "giftCardCount" : "01"
      },
      "homePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "workPhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "mobilePhone" : {
         "cc" : "123",
         "subscriber" : "123456789"
      },
      "email" : "example@example.com",
      "billAddrLine1" : "Address Line 1",
      "billAddrLine2" : "Address Line 2",
      "billAddrLine3" : "Address Line 3",
      "billAddrCity" : "Atlanta",
      "billAddrState" : "GA",
      "billAddrPostCode" : "30303",
      "billAddrCountry" : "840",
      "shipAddrLine1" : "Address Line 1",
      "shipAddrLine2" : "Address Line 2",
      "shipAddrLine3" : "Address Line 3",
      "shipAddrCity" : "Athens",
      "shipAddrState" : "GA",
      "shipAddrPostCode" : "30603",
      "shipAddrCountry" : "840"
    },
   "clientStartProtocolVersion" : "2.1.0",
   "clientEndProtocolVersion" : "2.1.0"
}
Sample response
{
   "messageId" : "Device_Channel_3",
   "aRes" : {
      "messageType" : "ARes",
      "messageVersion" : "2.1.0",
      "threeDSServerTransID" : "e1212037-33a4-4ae9-a5e5-1278addaf65d",
      "dsTransID" : "473b8b40-bc8c-44be-8017-82a441148708",
      "acsTransID" : "54b4fa2d-6da9-44cc-b47a-6390275290d2",
      "acsReferenceNumber" : "ELAVON_ACS_EMULATOR_REF_NUMBER32",
      "acsOperatorID" : "ELAVON_ACS_EMULATOR_OPERATOR_ID1",
      "dsReferenceNumber" : "ELAVON_3DS_DS_EMULATOR_REF_NUM32",
      "transStatus" : "R",
      "transStatusReason" : "15"
   }
}

Related topics