Three DS MPI Result
Three DS MPI Result data is result of 3DS MPI Authentication which was provided by an external 3DS MPI provider. Use this object to send the results of 3DS authentication in Direct API.
✓ - required value
? - optional, value or null
✕ - always appears as null
Variable | Type | Description | |
---|---|---|---|
three_ds_server_trans_id | varchar(36) | ? | Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction. |
acs_trans_id | varchar(36) | ? | Universally Unique transaction identifier assigned by the ACS to identify a single transaction. |
authentication_type | varchar(2) | ? | Indicates the type of Authentication request. This data element provides additional information to the ACS to determine the best approach for handling an authentication request. This value is used for App-based and Browser flows. Allowed values are: - 01 = Payment transaction - 02 = Recurring transaction- 03 = Installment transaction- 04 = Add card- 05 = Maintain card- 06 = Cardholder verification as part of EMV token ID&V- 07 = Billing agreement- 80-99 can be used for PS-specific values, regardless of protocol version. |
trans_status | varchar(1) | ✓ | Indicates whether a transaction qualifies as an authenticated transaction. Allowed values are: - Y = Authentication Verification Successful- N = Not Authenticated/Account Not Verified; Transaction denied- U = Authentication/Account Verification Could Not Be Performed; Technical or other problem, as indicated in ARes or RReq.- A = Attempts Processing Performed; Not Authenticated/Verified, but a proof of attempted authentication/verification is provided.- R = Authentication/Account Verification |
acs_challenge_mandated | varchar(1) | ? | Indication of whether a challenge is required for the transaction to be authorized due to local/regional mandates or other variable. Can be used when the transaction was authenticated via an external MPI. |
challenge_indicator | varchar(2) | ? | Indicates whether a challenge is requested for this transaction. Can be sent when 3D Secure version 2.2 or higher is used. |
ds_trans_id | varchar(36) | ✓ | Universally unique transaction identifier assigned by the DS to identify a single transaction. |
eci | varchar(2) | ✓ | The ECI value received from the MPI. (An Electronic Commerce Indicator (ECI) value is the result of a 3DS authentication request, returned by a Directory Server ("issuer ACS") (namely Visa, Mastercard, JCB, and American Express). Regular expression: 0[1-8]{1} . |
transaction_status_reason | int(2) | ? | Provides information on why the Transaction Status field has the specified value. Can be used when the transaction was authenticated via an external MPI. Allowed values are: - 01 = Card authentication failed- 02 = Unknown device- 03 = Unsupported device- 04 = Exceeds authentication frequency limit- 05 = Expired card- 06 = Invalid card number- 07 = Invalid transaction- 08 = No card record- 09 = Security failure- 10 = Stolen card- 11 = Suspected fraud- 12 = Transaction not permitted to Cardholder- 13 = Cardholder not enrolled in service- 14 = Transaction timed out at the ACS- 15 = Low confidence- 16 = Medium confidence- 17 = High confidence- 18 = Very high confidence- 19 = Exceeds ACS maximum challenges- 20 = Non-Payment transaction not supported- 21 = 3RI transaction not supported- 22 = ACS technical issue- 23 = Decoupled Authentication required by ACS but not requested by 3DS Requestor- 24 = 3DS Requestor Decoupled Max Expiry Time exceeded- 25 = Decoupled Authentication was provided insufficient time to authenticate Cardholder. ACS will not make attempt- 26 = Authentication attempted but not performed by the Cardholder- 27 = Preferred Authentication Method not supported- 28 = Validation of content security policy failed- 29 = Authentication attempted but not completed by the Cardholder. Fall back to Decoupled Authentication- 30 = Authentication completed successfully but additional authentication of the Cardholder required. Reinitiate as Decoupled Authentication- 31–79 = Reserved for EMVCo future use (values invalid until defined by EMVCo)- 80–99 = Reserved for DS use |
authentication_value | varchar(512) | ✓ | Payment System-specific value provided as part of the ACS registration for each supported DS. Authentication Value may be used to provide proof of authentication. A 20-byte value that has been Base64 encoded, giving a 28-byte result.[\s\S]{28} |
message_version | varchar(8) | ? | Protocol version identifier. This shall be the Protocol Version Number of the specification utilised by the system creating this message. |
exemption_flag | varchar(2) | ? | Flags the transaction as exemption during authorization. Can be sent when 3D Secure version 2.2 or higher is used. Allowed values are: - 05 = Transaction Risk Analysis exemption- 08 = Trust List exemption- 10 = Low Value exemption- 11 = Secure Corporate Payments exemption- 79 = No exemption applied- 01–04, 06, 07, 09 and 12–78 = Reserved for EMVCo future use (values invalid until defined by EMVCo)- 80–99 = Reserved for DS use |
channel | varchar(2) | ? | The authentication channel indicator. Only provide to indicate 3RI request(Merchant initiated authentication), which is available as a feature in 3DS 2.2 for MasterCard only. Can be used when the transaction was authenticated via an external MPI. Allowed values are:: - 01 = App-based (APP)- 02 = Browser (BRW)- 03 = 3DS Requestor Initiated (3RI)- 04–79 = Reserved for EMVCo future use(values invalid until defined by EMVCo)- 80–99 = Reserved for DS use |
enrollment_status | varchar(1) | ? | The enrollment status for the 3D Secure request. Required when using a third-party MPI. Allowed values are: - Y |
{
"three_ds_server_trans_id": "1w111036-4abf-4b50-9cd6-e593b0218ed5",
"acs_trans_id": "2d551036-4abf-4b50-9cd6-e593b0218ed5",
"authentication_type": "01",
"trans_status": "Y",
"acs_challenge_mandated": "N",
"challenge_indicator": "05",
"ds_trans_id": "62453bce-2714-40e4-9c00-0aa98541682a",
"eci": "05",
"transaction_status_reason": "17",
"authentication_value": "MTIRWG9SWWRpU2I1M21DelozSTA=",
"message_version": "2.2.0",
"exemption_flag": "01",
"channel": "02"
}