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, and 3RI (merchant-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.
note
You must also enter all required parameters for a successful request and response. Each test card section also links to request samples relevant to that section. For field descriptions, see API reference.
Test credentials
To request authentication credentials that you would need to test the different integration options in the sandbox environment, fill in the information requested in this form.
open_in_new3D Secure 2 test credentials request formLink opens new window
important
Never expose your API key in the client-side code.
For more details on authentication mechanisms supported by Elavon for 3D Secure, see Authentication.
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.
important
Do not use live numbers for testing.
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 (3DS 2.1) | Test card numbers (3DS 2.2) |
---|---|---|
ACS Version is 2.1.0 /2.2.0 and threeDSMethodURL present in the /3ds2/lookup response |
|
|
ACS Version 2.1.0 /2.2.0 and threeDSMethodURL and threeDSMethodData NOT present in the /3ds2/lookup response |
|
|
Out of range card number | Any account/card number other than the card numbers mentioned on this page. For example, 7008013267046805. | NA |
To test the 3DS 2.2 protocol through the direct integration to the 3DS Server, you must set the following values in the /lookup
request:
clientStartProtocolVersion
=2.1.0
or2.2.0
clientEndProtocolVersion
=2.2.0
For sample lookup or 3D Secure version check scenarios, see /3ds2/lookup scenarios
3DS 2 - Test cards for /3ds2/authenticate scenarios
If you use the purchaseAmount
to trigger a scenario, you can use any valid card number in the acctNumber
field. Similarly, if you use the acctNumber
to trigger a scenario, you can use any purchaseAmount
.
To test the 3DS 2.2 protocol through the direct integration to the 3DS Server, you must set the following values in the /lookup
request:
clientStartProtocolVersion
=2.1.0
or2.2.0
clientEndProtocolVersion
=2.2.0
messageVersion = 2.2.0
To understand more about the 3DS Server fallback strategy, review the 3DS Server fallback strategy table in step 4 of the Direct integration to 3DS Server topic.
To test the 3DS 2.2 protocol through the Web SDK integration, set the clientEndProtocolVersion = 2.2.0
, which is also the default value. The Web SDK determines the messageVersion
based on the clientEndProtocolVersion
. In this case, the messageVersion
will be set to 2.2.0
.
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 = Y
Description: Frictionless flow: Transaction is successfully authenticated
Authentication values returned: eci
= 05 (Visa)/ 02 (Mastercard) and authenticationValue
= Yes
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 100
acctNumber = 4000000000000101
for VisaacctNumber = 5413330089604111
for Mastercard
Liability shift: Card issuer
Next step: Use the eci
and authenticationValue
for card authorization.
transStatus = A
Description: Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated (returns a digit eci value)
Authentication values returned: eci
= 06 (Visa) / 01(Mastercard) and authenticationValue
= Yes
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 101
acctNumber = 4000000000000119
for VisaacctNumber = 5353161802533432
for Mastercard
Liability shift: Card issuer
Next step: Use the eci
and authenticationValue
for card authorization.
transStatus = A
Description: Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated (returns a non-digit eci value)
Authentication values returned: eci
= A6 (Visa and Amex)/ A1 (Mastercard) and authenticationValue
= Yes
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 102
acctNumber = 4000000000000150
for Visa
Liability shift: Card issuer
Next step: Use the eci
and authenticationValue
for card authorization.
transStatus = N
Description: Frictionless flow: Transaction is not authenticated
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 103
acctNumber = 4000000000000127
for VisaacctNumber = 5413330089600036
for Mastercard
Liability shift: No liability shift
Next step: 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
transStatus = U
Description: Frictionless flow: Transaction is not authenticated because of technical or other problems
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 104
acctNumber = 4000000000000135
for Visa
Liability shift: No liability shift
Next step: 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
transStatus = R
Description: Frictionless flow: Transaction is not authenticated because the issuer is rejecting authentication
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount = 105
acctNumber = 4000000000000143
for Visa
Liability shift: No liability shift
Next step: 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
transStatus = C
Description: Challenge flow: Issuer needs additional verification from the cardholder to authenticate the transaction
Authentication values returned: Transaction authentication still in progress
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount
= any value not mentioned on this pageacctNumber
= any valid card number not mentioned on this pagethreeDSRequestorChallengeInd
= set the field value to04
, which means that a challenge is requested, if required.
Liability shift: Transaction authentication is in progress. Liability shift will be determined after the cardholder completes the challenge.
Next step: To simulate the challenge response in the test environment, Elavon’s ACS emulator displays a challenge window.
- Select
Y
to simulate a successful challenge. - Select
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
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.
transStatus = I
Description: Informational Only; 3DS Requestor challenge preference acknowledged.
Authentication values returned: authenticationValue
and eci
(depends on the DS rules)
Test values: Set the following values in the /3ds2/authenticate
request:
purchaseAmount
= any value not mentioned on this pageacctNumber
= any valid card number not mentioned on this pagethreeDSRequestorChallengeInd = 06
Liability shift: Not applicable as the data was shared only for an information update
Next step: Not required
Failure scenarios | Test value |
---|---|
Error: Directory Server Timed out | Set one of the following values in the /3ds2/authenticate request:
|
Error: Directory Server Unavailable | Set one of the following values in the /3ds2/authenticate request:
|
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
To test the 3DS 2.2 protocol through the direct integration to the 3DS Server, you must set the following values in the /lookup
request:
clientStartProtocolVersion
=2.1.0
or2.2.0
clientEndProtocolVersion
=2.2.0
messageVersion = 2.2.0
To know more about the 3DS Server fallback strategy, review the 3DS Server Fallback Strategy table in step 3 of the 3RI overview topic.
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. [/notice]
transStatus = Y
Description: Frictionless flow: Transaction is successfully authenticated
Authentication values returned: eci
and authenticationValue
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000101
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: Card issuer
Next step: Use the eci
and authenticationValue
for card authorization.
transStatus = A
Description: Frictionless flow: Transaction is not authenticated but a proof of authentication attempt is generated (returns a digit eci value)
Authentication values returned: eci
and authenticationValue
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000119
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: Card issuer
Next step: Use the eci
and authenticationValue
for card authorization.
transStatus = N
Description: Frictionless flow: Transaction is not authenticated
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000127
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: No liability shift
Next step: 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
transStatus = U
Description: Frictionless flow: Transaction is not authenticated because of technical or other problems
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000135
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: No liability shift
Next step: 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
transStatus = R
Description: Frictionless flow: Transaction is not authenticated because the issuer is rejecting authentication
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000143
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: No liability shift
Next step: 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
transStatus = U
Description: Frictionless flow: Transaction is not authenticated because of technical or other problems
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000135
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: No liability shift
Next step: 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
transStatus = R
Description: Frictionless flow: Transaction is not authenticated because the issuer is rejecting authentication
Authentication values returned: transStatusReason
Test values: Set the following values in the /3ds2/authenticate
request:
acctNumber = 4000000000000143
for Visa- To test for 3DS 2.2, set
messageVersion = 2.2.0
Liability shift: No liability shift
Next step: 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
transStatus = I
Description: Informational Only; 3DS Requestor challenge preference acknowledged.
Authentication values returned: NA
Test values: Not a supported scenario
Liability shift: NA
Next step: Not a supported scenario
For sample 3RI authentication scenarios, see /3ds2/authenticate scenarios
Sample scenarios: /3ds2/lookup
Lookup Scenario 1: Account number supports EMV 3DS 2 and is available in Elavon’s bin database, an internal repository
Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/lookupLink opens new window
{
"messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
"acctNumber" : "4485363933630",
"doBinLookup" : true,
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion" : "2.2.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": "2.1.0",
"serverEndProtocolVersion": "2.2.0"
}
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, but is not available in Elavon’s bin database, an internal repository
Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/lookupLink opens new window
{
"messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
"acctNumber" : "5377955933798158",
"doBinLookup" : true,
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion" : "2.2.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": "2.1.0",
"serverEndProtocolVersion": "2.2.0"
}
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, but is available in Elavon’s bin database, an internal repository
Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/lookupLink opens new window
{
"messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
"acctNumber" : "5893501234567891231",
"doBinLookup" : true,
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion" : "2.2.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. 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": "2.1.0",
"serverEndProtocolVersion": "2.2.0"
}
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 and is also not available in Elavon’s bin database, an internal repository
Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/lookupLink opens new window
{
"messageId" : "0b0deb70-3249-4c73-9cf5-92f6cac231af",
"acctNumber" : "4927261276919182790",
"doBinLookup" : true,
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion" : "2.2.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. Validate the account number: 49XXXXXXXXXXXXX2790"
},
"binInfo" : {
"bin" : "492726",
"scheme" : "Unknown",
"brand" : "Unknown",
"fundingSource" : "unknown",
"isDebit" : "unknown",
"isCorporate" : "unknown",
"isDccAllowed" : "unknown"
},
"serverStartProtocolVersion": "2.1.0",
"serverEndProtocolVersion": "2.2.0"
}
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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"deviceChannel" : "02",
"threeDSCompInd" : "Y",
"cardExpiryDate" : "1912",
"acctNumber" : "4017730000000005",
"cardholderName" : "Cardholder Name",
"email" : "test@elavon.com",
"messageCategory" : "01",
"purchaseAmount" : "5000",
"purchaseCurrency" : "978",
"purchaseExponent" : "2",
"purchaseDate" : "20170316141312",
"transType" : "01",
"notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
"homePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"mobilePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"workPhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"billAddrLine1" : "Bill Address Line 1",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrPostCode" : "30603",
"billAddrState" : "GA",
"billAddrCity" : "Athens",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Atlanta",
"shipAddrPostCode" : "30303",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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",
"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",
"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 2022"
}
},
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion": "2.2.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: Frictionless flow - cardholder authenticated i.e., transStatus = Y
Device channel = 02 Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"deviceChannel" : "02",
"threeDSCompInd" : "Y",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000101",
"cardholderName" : "Cardholder Name",
"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"
},
"billAddrLine1" : "Bill Address Line 1",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Atlanta",
"billAddrPostCode" : "30303",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Athens",
"shipAddrPostCode" : "30603",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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",
"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",
"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.2.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"
}
}
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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"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",
"cardExpiryDate" : "2212",
"cardholderName" : "Frictionless One",
"email" : "example@example.com",
"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"
},
"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.2.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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"threeDSCompInd" : "Y",
"deviceChannel" : "02",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000119",
"cardholderName" : "Cardholder Name",
"email" : "test@elavon.com",
"notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
"messageCategory" : "01",
"purchaseAmount" : "5000",
"purchaseCurrency" : "978",
"purchaseExponent" : "2",
"purchaseDate" : "20170316141312",
"transType" : "01",
"homePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"mobilePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"workPhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"billAddrLine1" : "Bill Address Line 1",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Athens",
"billAddrPostCode" : "30603",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Atlanta",
"shipAddrPostCode" : "30303",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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",
"threeDSServerTransID" : "c5e55968-3a22-4003-ba84-756734481f60",
"threeDSRequestorAuthenticationInd" : "01",
"threeDSRequestorAuthenticationInfo" : {
"threeDSReqAuthMethod" : "02",
"threeDSReqAuthTimestamp" : "201711071307",
"threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
},
"threeDSRequestorChallengeInd" : "03",
"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",
"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.2.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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"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",
"cardExpiryDate" : "2212",
"cardholderName" : "Frictionless One",
"email" : "example@example.com",
"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"
},
"homePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"workPhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"mobilePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"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.2.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 5: 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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"threeDSCompInd" : "Y",
"deviceChannel" : "02",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000127",
"cardholderName" : "Cardholder Name",
"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"
},
"billAddrLine1" : "Bill Address Line 1 ",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Athens",
"billAddrPostCode" : "30603",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Atlanta",
"shipAddrPostCode" : "30303",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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.2.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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"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.2.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 6: 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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"threeDSCompInd" : "Y",
"deviceChannel" : "02",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000135",
"cardholderName" : "Cardholder Name",
"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"
},
"billAddrLine1" : "Bill Address Line 1",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Atlanta",
"billAddrPostCode" : "30303",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Athens",
"shipAddrPostCode" : "30603",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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.2.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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"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.2.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 7: 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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"deviceChannel" : "02",
"threeDSCompInd" : "Y",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000143",
"cardholderName" : "Cardholder Name",
"email" : "test@elavon.com",
"notificationURL" : "https://uat.gw.fraud.eu.elavonaws.com",
"messageCategory" : "01",
"purchaseAmount" : "5000",
"purchaseCurrency" : "978",
"purchaseExponent" : "2",
"purchaseDate" : "20170316141312",
"transType" : "01",
"homePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"mobilePhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"workPhone" : {
"cc" : "123",
"subscriber" : "123456789"
},
"billAddrLine1" : "Bill Address Line 1",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Atlanta",
"billAddrPostCode" : "30303",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Athens",
"shipAddrPostCode" : "30603",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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",
"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.2.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
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"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.2.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"
}
}
Authentication Scenario 8: Merchant sent the request only for informational purposes and did not need a challenge i.e. transStatus = I
Device channel = 02 Sample request
POST
open_in_newhttps://uat.gw.fraud.eu.elavonaws.com/3ds2/authenticateLink opens new window
{
"messageId" : "Device_Channel_2",
"aReq" : {
"messageVersion" : "2.2.0", //Required if the merchant is sending the request for information purpose
"threeDSCompInd" : "Y",
"deviceChannel" : "02",
"cardExpiryDate" : "1912",
"acctNumber" : "4000000000000127",
"cardholderName" : "Cardholder Name",
"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"
},
"billAddrLine1" : "Bill Address Line 1 ",
"billAddrLine2" : "Bill Address Line 2",
"billAddrLine3" : "Bill Address Line 3",
"billAddrCity" : "Athens",
"billAddrPostCode" : "30603",
"billAddrState" : "GA",
"billAddrCountry" : "840",
"shipAddrLine1" : "Address Line 1",
"shipAddrLine2" : "Address Line 2",
"shipAddrLine3" : "Address Line 3",
"shipAddrCity" : "Atlanta",
"shipAddrPostCode" : "30303",
"shipAddrState" : "GA",
"shipAddrCountry" : "840",
"addrMatch" : "N",
"browserAcceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"browserIP" : "192.168.1.11",
"browserJavaEnabled" : true,
"browserJavascriptEnabled" : true, //Required only for 3DS 2.2
"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" : "05",
"threeDSRequestorAuthenticationInfo" : {
"threeDSReqAuthMethod" : "02",
"threeDSReqAuthTimestamp" : "201711071307",
"threeDSReqAuthData" : "cKTYtrvvKU7gUoiqbbO7Po"
},
"threeDSRequestorChallengeInd" : "06", //Required if the merchant is sending the request for information purpose. Set it to either 05, 06, or 07
"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 has been turned off starting summer 2019"
}
},
"clientStartProtocolVersion": "2.1.0",
"clientEndProtocolVersion": "2.2.0"
}
Sample response
{
"messageId" : "Device_Channel_2",
"aRes" : {
"messageType" : "ARes",
"messageVersion" : "2.2.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" : "I",
"authenticationValue": "IIVbTr028SCd-iJPDZRSaOZFiVg=" //Conditional based on the directory server
}
}