EMV 3DS Additional Test Cases

The EMV® 3DS Additional Test Case guide explores alternative authentication options outside the typical testing scenarios which require a more tailored approach. These test cases can vary by card brand/scheme and it is important to note that you should work with your account representative at CardinalCommerce prior to proceeding.

 

Important test notes:

  • For the expiration year field CardExpYear, use the current year +3 (for example, when testing in 2023, you’d use 2026).

  • Test PANs will not necessarily match the production card range for their respective card networks. As such, test PANs should not be used to determine the range of (or to create validation rules for) production cards. If you do have validation rules in place, trustlists can be used to allow or identify test PANs on an individual basis.



Test Case 1: Trans Status Reason

NOTE: Visa cards will be used for all Trans Status Reason test cases, however, these values can (and will) be returned for all card networks.

1a. Card Authentication Failed

Scenario 

01 - Card Authentication Failed

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.1.0: 4000000000002040

Required Fields - Lookup Request (cmpi_lookup)

 

No specific callouts for fields; transStatusReason will be returned based on the PAN.

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

<Enrolled>Y</Enrolled>

PAResStatus = N

<PAResStatus>N</PAResStatus>

Cavv = (value will not be provided)

<Cavv></Cavv>

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 01

Additional Information

 

Test Case can apply to PA or NPA transactions.

 

When PAResStatus= N, the CardholderInfo field may be returned by the Issuer. When this is present, you must display this within your checkout experience.

Sample Messages

Sample Lookup Message

Sample Response Message


1b. Suspected Fraud

Scenario 

11 - Suspected Fraud

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.1.0: 4000000000002149

Required Fields - Lookup Request (cmpi_lookup)

 

No specific callouts for fields; transStatusReason will be returned based on the PAN.

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = U

Cavv = (value will not be provided)

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 11

Additional Information

 

Test Case can apply to PA or NPA transactions.

Sample Messages

Sample Lookup Message

Sample Response Message


1c. Cardholder Not Enrolled in Service

Scenario 

13 - Cardholder Not Enrolled in Service

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.1.0: 4000000000002164

Required Fields - Lookup Request (cmpi_lookup)

 

No specific callouts for fields; transStatusReason will be returned based on the PAN.

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = R

Cavv = (value will not be provided)

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 13

Additional Information

 

Test Case can apply to PA or NPA transactions.

Sample Messages

Sample Lookup Message

Sample Response Message


1d. Transaction timed out at the ACS

Scenario 

14 - Transaction timed out at the ACS

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.1.0: 4000000000002172

Required Fields - Lookup Request (cmpi_lookup)

 

No specific callouts for fields; transStatusReason will be returned based on the PAN.

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = U

Cavv = (value will not be provided)

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 14

Additional Information

 

Test Case can apply to PA or NPA transactions.

Sample Messages

Sample Lookup Message

Sample Response Message


1e. Non-Payment transaction not supported

Scenario 

20 - Non-Payment transaction not supported

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.1.0: 4000000000002230

Required Fields - Lookup Request (cmpi_lookup)

 

No specific callouts for fields; transStatusReason will be returned based on the PAN.

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = U

Cavv = (value will not be provided)

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 20

Additional Information

 

Test Case can apply to PA or NPA transactions.

Sample Messages

Sample Lookup Message

Sample Response Message


 


Test Case 2: TRA Exemption

2a. Transaction Risk Analysis (TRA) / Low Value - Mastercard

Scenario 

Merchant has performed a proprietary risk assessment and is requesting a Transaction Risk Analysis (Low Risk) or Low Value exemption based on fraud thresholds established with the network.

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Mastercard PAN
2.1.0: 5200000000001161
2.2.0: 5200000000002052

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 05 - No challenge requested (transactional risk analysis is already performed)

Expected Results - Lookup Response (cmpi_lookup)

EMV 3DS (2.1.0 Results)

 

Enrolled = Y

PAResStatus = N

Cavv = <Cavv Value>

EciFlag = 06

ErrorNo = 0

ErrorDesc = (value will not be provided)

StatusReason = 81

EMV 3DS (2.2.0 Results)



 

 

 

 

 

Enrolled = Y

PAResStatus = I

Cavv = <Cavv Value>

EciFlag = 06

ErrorNo = 0

ErrorDesc = (value will not be provided)

Card Network & Version Specifications

Mastercard Identity Check 2.1

Supported through https://cardinaldocs.atlassian.net/wiki/spaces/STAG/pages/1487667238

In this case, ChallengeIndicator on the Lookup should be passed as “05” and Centinel will remap this value to the Extension field.

Mastercard Identity Check 2.2

Cardinal support for Mastercard Identity Check 2.2 is coming soon.

Additional Information

Merchant Action

Proceed to Authorization

You may also request the TRA exemption directly in authorization depending on region and your agreements with your Acquirer and the networks.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message

 


2b. Transaction Risk Analysis (TRA) / Low Value - Visa

Scenario 

Merchant has performed a proprietary risk assessment and is requesting a Transaction Risk Analysis (Low Risk) or Low Value exemption based on fraud thresholds established with the network.

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Visa PAN: 
2.2.0: 4000000000002024

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 05 - No challenge requested (transactional risk analysis is already performed)

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = I

Cavv = <Cavv Value>

EciFlag = 07

ErrorNo = 0

ErrorDesc = (value will not be provided)

Card Network & Version Specifications

Visa Secure 2.1

Not Supported

Visa Secure 2.2

You will need to work with your Acquirer to ensure the TRA flag is added in Field 34 along with providing the CAVV in the Authorization message.

Additional Information

Merchant Action

Proceed to Authorization

You may also request the TRA exemption directly in authorization depending on region and your agreements with your Acquirer and the networks.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


2c. Transaction Risk Analysis (TRA) / Low Value - Discover

Scenario 

Merchant has performed a proprietary risk assessment and is requesting a Transaction Risk Analysis (Low Risk) or Low Value exemption based on fraud thresholds established with the network.

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Discover PAN: 
2.1.0: 6011000000001002

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 02 - No challenge requested

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = Y

Cavv = <Cavv Value>

EciFlag = 05

ErrorNo = 0

ErrorDesc = (value will not be provided)

Card Network & Version Specifications

Discover ProtectBuy 2.1

In this case, merchant must pass Challenge Indicator = 05 to indicate TRA exemption.

Additional Information

Merchant Action

Proceed to Authorization

You may also request the TRA exemption directly in authorization depending on region and your agreements with your Acquirer and the networks.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


2d. Acquirer TRA - Cartes Bancaires

Scenario 

Merchant has performed a proprietary risk assessment and is requesting the Acquirer TRA exemption.

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Cartes Bancaires (Visa) PAN:
2.1.0: 4000000000003006

Cartes Bancaires (MC) PAN: 
2.1.0: 5200000000003001

Lookup Request (cmpi_lookup) → CardType = CB

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 05 - No challenge requested

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = Y

Cavv = <Cavv Value>

NOTE: The CAVV value will not be returned during your testing. This may be returned in Production based on issuer rules surrounding co-branding with Visa or Mastercard BINs.

EciFlag =

ErrorNo = 0

ErrorDesc = (value will not be provided)

Card Network & Version Specifications

Cartes Bancaires (v1.7)

Passing ChallengeIndicator=05 on a CB EMV 3DS 2.1.0 will allow Cardinal to generate the CB-EXEMPTACQ extension field on the AReq.

Additional Information

Merchant Action

Proceed to Authorization

You may also request the TRA exemption directly in authorization depending on region and your agreements with your Acquirer and the networks.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


2e. Acquirer TRA - Cartes Bancaires (2.2.0)

Scenario 

Merchant has performed a proprietary risk assessment and is requesting the Acquirer TRA exemption.

Authentication Experience

Frictionless

Test Values

 

EXP Date: 01/****

Cartes Bancaires (Visa) PAN:
2.2.0: 4000000000002479

Cartes Bancaires (MC) PAN: 
2.2.0: 5200000000004710

Lookup Request (cmpi_lookup) → CardType = CB

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 05 - No challenge requested (transactional risk analysis is already performed)

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = I

Cavv = <Cavv Value>

EciFlag =

ErrorNo = 0

ErrorDesc = (value will not be provided)

Additional Information

Merchant Action

Proceed to Authorization

You may also request the TRA exemption directly in authorization depending on region and your agreements with your Acquirer and the networks.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


Test Case 3: Trusted Beneficiary (Trustlist Exemption)

Test Case 3a: Prompt For Trustlist

Scenario 

Successful traditional Step Up (Challenge) authentication transaction with a prompt for the trustlist and an accepted exemption result

Authentication Experience

Challenge

Test Values

Visa PAN: 
2.2.0: 4000000000002008

Mastercard PAN: 
2.2.0: 5200000000002003

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 09 - Challenge requested (trustlist prompt requested if challenge required)

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = C

CAVV = (value will not be provided)

Visa:
EciFlag = 07

Mastercard:
EciFlag = 00

Payload = <Payload Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Expected Results - Authentication (cmpi_authenticate response)

 

PAResStatus = Y

CAVV = <CAVV Value>

Visa:
EciFlag = 05

Mastercard:
EciFlag = 02

WhiteListStatus = <WhiteListStatus Value>

WhiteListStatusSource = <WhiteListStatusSource Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Integration Method Specific Expected Results

Cardinal Cruise API

On the Lookup Response, StepUpUrl will be returned

Additional Information

Merchant Action

Merchant should append the Cavv and EciFlag values to the authorization message.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message

Sample Authenticate Request Message

Sample Authenticate Response Message

 


Test Case 3b: Utilize Trusted Beneficiary Exemption

Scenario 

Successful frictionless authentication transaction with a pre-trustlisted indication and an accepted exemption result

Authentication Experience

Frictionless

Test Values

Visa PAN: 
2.2.0: 4000000000002016

Mastercard PAN: 
2.2.0: 5200000000002011

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 08 = No challenge requested (utilize trustlist exemption if no challenge required)

Optional Fields - Lookup Request (cmpi_lookup)

 

WhiteListStatus = <WhiteListStatus Value>

 

WhiteListStatusSource = <WhiteListStatusSource Value>

Expected Results - Lookup Response (cmpi_lookup)

 

PAResStatus = Y

CAVV = <CAVV Value>

Visa:
EciFlag = 05

Mastercard:
EciFlag = 02

WhiteListStatus = <WhiteListStatus Value>

WhiteListStatusSource = <WhiteListStatusSource Value>

ThreeDSVersion = <ThreeDSVersion Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Integration Method Specific Expected Results

 

ActionCode = SUCCESS

ErrorNumber = 0

ErrorDescription = Success

Additional Information

Merchant Action

Merchant should append the Cavv and EciFlag values to the authorization message.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message

 


Test Case 4: Data Only

Test Case 4a: Visa Data Only

Scenario 

Visa Data Only authentication request

Authentication Experience

Frictionless (Information Only)

Test Values

Visa PAN: 
2.2.0: 4000000000002024

Required Fields - Lookup Request (cmpi_lookup)

 

ChallengeIndicator = 06

Expected Results - Lookup Response (cmpi_lookup)

 

PAResStatus = I

EciFlag = 07

CAVV = <CAVV Value>

ThreeDSVersion = <ThreeDSVersion Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Integration Method Specific Expected Results

 

ActionCode = SUCCESS

ErrorNumber = 0

ErrorDescription = Success

Additional Information

Merchant Action

Merchant should append the ECI and Cavv values to the authorization message.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


Test Case 4b-1: Identity Check Insights (ScoreRequest = N)

Scenario 

Mastercard Data Only authentication request

Authentication Experience

Frictionless

Test Values

Mastercard PAN: 
2.1.0: 5200000000001005

Required Fields - Lookup Request (cmpi_lookup)

 

MessageCategory = 80

Optional Fields - Lookup Request (cmpi_lookup)

 

ScoreRequest = N

Expected Results - Lookup Response (cmpi_lookup)

 

PAResStatus = U

CAVV = <CAVV Value>

EciFlag = 04

StatusReason = 80

ThreeDSVersion = <ThreeDSVersion Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Integration Method Specific Expected Results

 

ActionCode = SUCCESS

ErrorNumber = 0

ErrorDescription = Success

Additional Information

Merchant Action

Merchant should append the ECI and DS Transaction ID value to the authorization message.

Sample Messages

Sample Lookup Request Message

Sample Lookup Response Message


Test Case 5: Visa Payment Passkey

Test Case 5: Successful Step-Up Authentication for VPP Enrollment

Scenario 

Successful traditional Step Up (Challenge) authentication transaction for enrolling a user/card in Visa Payment Passkey.

Authentication Experience

Challenge

Test Values

Visa PAN: 
2.1.0 : 4000000000001091

Required Fields - Lookup Request (cmpi_lookup)

 

DFReferenceId

CardNumber=

CurrencyCode

Amount= Transaction amount that was sent on the registration check

Email=Cardholder’s email that was sent on the registration check.

ChallengeIndicator= 04

AlternateAuthenticationMethod= 80

Expected Results - Lookup Response (cmpi_lookup)

 

Enrolled = Y

PAResStatus = C

XID = <XID Value>

CAVV = (value will not be provided)

EciFlag = 07

Payload = <Payload Value>

ErrorNo = 0

ErrorDesc = (value will not be provided)

Expected Results - Authentication (cmpi_authenticate response)

 

PAResStatus = Y

XID = <XID Value>

CAVV = <CAVV Value>

EciFlag = 05

FidoEligible

ErrorNo = 0

ErrorDesc = (value will not be provided)

Integration Method Specific Expected Results

Cardinal Cruise API

On the Lookup Response, StepUpUrl will be returned

Additional Information

Merchant Action

Merchant should append the Cavv and EciFlag values to the authorization message.

Sample Lookup Request

Sample Lookup Response

Sample Authenticate Request

Sample Authenticate Response

 

 

EMV® is a registered trademark in the U.S. and other countries and an unregistered trademark elsewhere. The EMV trademark is owned by EMVCo, LLC.