Skip to main content

3DS Result API (Flow B)

API Details

Mode: Stateless REST API
API URL: paymentApiUrl /3ds/result
HTTP Method: POST
Request Body: JSON

Request Body

Example Request
{
"netvalveMidId":{{netvalveMidId}},
"transID":"732b4368-d69a-4d74-885e-35b5d402824e"
}

Request Parameters

ParameterTypeRequiredDescription
netvalveMidIdStringYesNetvalve Mid Id configured with merchant profile.
e.g. aa09538b-2148-4e0b-8418-28391caa6af2
transIDStringYestransID Id - An unique 3DS Transaction ID from the init/auth call.
Refer to ThreeDSProviderResponse parameters.

HTTP Response Codes

CodeDescription
200OK
401Unauthorized
404Bad Request
500Service Unavailable

API Response in JSON

Frictionless Flow (Challenge Not Required)

200
{
"traceID": "07ae6fb6-4aa7-4464-a700-d8c0d529522e",
"responseTimestamp": "2023-09-26T16:42:24.551+00:00",
"responseCode": "3DS_1000",
"responseMessage": "Three DS Transaction Successful.",
"threeDSProviderResponse": {
"transID": "f88c9f24-ad5c-472c-a9cc-d61437ab7b80",
"threeDs2TransactionId": "bWK59U04KRGhxfhZSAn0",
"eci": "05",
"cavv": "MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=",
"threeDsVersion": "2.1.0"
},
"midId": 2,
"netvalveMidId": "289e253d-f955-4e29-a2c7-bb1805883ee0"
}
Error
{
"traceID": "8f2348b0-12f2-44c5-91f9-989124c74220",
"responseTimestamp": "2023-11-01T11:43:50.647+00:00",
"responseCode": "3DS_2003",
"responseMessage": "Invalid Merchant ID. Kindly contact Netvalve support."
}
{
"traceID": "d14726d6-8a00-4555-b2e0-f6fea3b944c5",
"responseTimestamp": "2023-11-01T14:19:54.461+00:00",
"responseCode": "3DS_2000",
"responseMessage": "Three DS Transaction Processing Error. ",
"threeDSProviderResponse": {
"referenceId": "0fb6d85d-0a4e-4e1f-b6d8-5d0a4ece1fe7",
"errorCode": "9400",
"errorMessage": "Field 'mid_q' validation error: 'must not be empty' rejected value ''; Field 'mid_q' validation error: 'must not be blank' rejected value ''; Field 'mid_q' validation error: 'size must be between 1 and 8' rejected value ''; ",
"challengeRequired": false,
"status": "RESULT_FAILED"
}
}

Success Criteria: paymentApiUrl/3ds/result response must contain the data below

  • "responseCode" = "3DS_1000"
  • "transID" = (Non Null value)
  • threeDs2TransactionId = (Non Null value)
  • "eci" = (Non Null value)
  • "cavv" = (Non Null value)
  • threeDsVersion = (Non Null value)

Response Parameters

ParameterTypeRequiredDescription
traceIDStringYesTrace Id / Corellation ID - an unique id for 3DS Transaction to trace back / inquiry.
e.g. dbea8561-4990-4582-b370-66ab2696f39a
responseTimestampDateYesResponse date and time.
e.g. "2023-10-17T08:52:17.845+00:00"
responseCodeStringYesNetValve Response Code
e.g. 3DS_1000 SUCESS; 3DS_2000 Failure
More Error Codes
responseMessageStringYese.g. "Three DS Transaction Successful."
threeDSProviderResponseStringOptional (present in case of valid request)TthreeDSProviderResponse JSON Object
midIdLongYesMid ID
netvalveMidIdStringYesNetvalveMidId

ThreeDSProviderResponse Parameters

ParameterTypeRequiredDescription
transIDStringYestransID Id - an unique 3DS Transaction id
e.g. dbea8561-4990-4582-b370-66ab2696f39a
referenceIdStringYesReference Id for 3DS from provider
e.g. "124cf1a9-b211-4f7f-8cf1-a9b2115f7fb0"
threeDs2TransactionIdStringYes3DS Server Transaction Id
e.g. 6bb67882-1562-42c0-ae06-26875c6a62e3
eciStringYesECI value from 3DS Provider
e.g. Visa. 05; Mastercard. 02.
More ECI Codes
cavvStringYesCAVV value from 3DS Provider
e.g.AJkBAZd0ByiAAAAAJnQHAAAAAAA=
statusStringYes"COMPLETED" / “RESULT_FAILED“
threeDsVersionStringYesThree DS Version
e.g. "threeDsVersion": "2.1.0"
errorCodeStringOptionale.g. 9400
errorMessageStringOptionale.g. “Field 'mid_q' validation error."

Error Codes

// 1000 series for Approval,
THREE_DS_SUCCESS("3DS_1000", "Three DS Transaction Successful."),
THREE_DS_REQUEST_SUCCESS("3DS_1001", "Request Successful."),

// 2000 series for error
THREE_DS_ERROR("3DS_2000", "Three DS Transaction Processing Error. "),
THREE_DS_REQUIRED_CALL_BACK_URL("3DS_2001", "Event Callback Url Is Missing. This Value Must Be Provided."),
THREE_DS_NOT_CONFIGURED("3DS_2002", "Mid Not configured for 3DS. Kindly contact Netvalve support."),
THREE_DS_INVALID_MERCHANT("3DS_2003", "Invalid Merchant ID. Kindly contact Netvalve support."),
THREE_DS_TRANSACTION_ID_REQUIRED("3DS_2004", "Three DS Transaction Id Is Missing. This Value Must Be Provided."),
THREE_DS_CHALLENGE_INDICATOR_REQUIRED("3DS_2005", "Challenge Indicator Is Missing. This Value Must Be Provided."),
THREE_DS_BROWSER_INFO_REQUIRED("3DS_2006", "Browser Info token Is Missing. This Value Must Be Provided."),
THREE_DS_DF_REF_ID_REQUIRED("3DS_2007", "DF Reference Id Is Missing. This Value Must Be Provided."),
THREE_DS_GATEWAY_ERROR("3DS_2008", "Three DS Transaction Processing Error from Gateway. Kindly contact Netvalve support."),
THREE_DS_IMPL_TYPE_REQUIRED("3DS_2009", "3DS implementation type Is Missing. This Value Must Be Provided.");