Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
    "customerEmail": "yogesh@dahe.com",
    "customerPhone": "+919900000000", (Customer Phone in the format of coutrycode-phone . e.g +919900000000)

Request table

Parameter

Type

Required

Description

netvalveMidId

String

Yes

Netvalve Mid Id configured with merchant profile.

e.g. aa09538b-2148-4e0b-8418-28391caa6af2

amount

BigDecimal

Yes

Transaction Amount

e.g. 100.50

currency

String

Yes

Currency with matching ISO-4217 currency standard e.g. "USD"

cardExpireMonth

String

Yes

regexp = "^(0[1-9]|1[0-2])$"

e.g. "08"

cardExpireYear

String

Yes

@Size(max = 4, min = 4)

e.g. "2025"

cardHolderName

String

Yes

@Size(max = 128)

cardNumber

String

Yes

Valid card number

customerEmail

StringOptional

Conditional. Required for Visa 3DS.

Customer email

customerIp

String

Optional

Customer IP Address

customerName

String

Yes

Customer First Name

customerLastName

String

Yes

Customer Last Name

customerAddress

String

Optional

Customer Address

customerCity

String

Optional

Customer City

customerCountryCode

String

Yes

Customer Country Code

Format:- US , 2 digits code

customerPhone

StringOptional

Conditional. Required for Visa 3DS.

Customer Phone in the formate of coutrycode-phone . e.g +919900000000

customerState

String

Optional

Customer State

customerZipCode

String

Optional

Customer Zip/Postal Code

transID

String

Yes

transID Id :- Unique 3DS Transaction id from init call . refer ThreeDSProviderResponse table

...

Code Block
200

{
    "traceID": "eb603c99-cdd3-4cb4-801e-94e8c46e2059",
    "responseTimestamp": "2023-09-26T16:02:25.587+00:00",
    "responseCode": "3DS_1000",
    "responseMessage": "Three DS Transaction Successful.",
    "threeDSProviderResponse": {
        "transID": "e0cc7f76-2d85-4f2d-a284-96df7f59d5bb",
        "threeDs2TransactionId": "nDgrHKNMWMJbj3pSn710",
        "eci": "05",
        "cavv": "Y2FyZGluYWxjb21tZXJjZWF1dGg=",
        "challengeRequired": false,
        "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": "AUTHENTICATED_FAILED"
    }
}

...

  • ACS/Challenge Flow (Challenge Required)

    Code Block
    200
    
    {
        "traceID": "a6fbf18f-c7e4-4fa6-8392-3e95948bca39",
        "responseTimestamp": "2023-10-12T15:56:16.116+00:00",
        "responseCode": "3DS_1000",
        "responseMessage": "Three DS Transaction Successful.",
        "threeDSProviderResponse": {
            "transID": "9f202d2e-6a0e-4f70-b478-f8b0203b9e54",
            "threeDs2TransactionId": "19sOi7k4JQTjnBLcQRb1",
            "challengeRequired": true,
            "redirectUrl": "https://gateway.sandbox-netvalve.com/callback?transId=9f202d2e-6a0e-4f70-b478-f8b0203b9e54&t=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJmOTdhM2FlYi03M2IyLTRiM2YtODJkNi1iZTcxMGNjZjI4MDMiLCJpYXQiOjE2OTcxMjYxNzcsImV4cCI6MTY5NzEyNjc3NywiaXNzIjoiTkVUVkFMVkUifQ.qPi3Ss_n1YtZCfxvNY2gsliMEKoZ_tZjqjl5dO9ewyY",
            "status": "ACS_REQUIRED"
        },
        "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": "AUTHENTICATED_FAILED"
        }
    }
    

  • Frictionless Success Criteria:- {{paymentApiUrl}}/3ds/authentication response must have the below data and the client should add those checks

    • "responseCode" = "3DS_1000"

    • "transID" = (Non Null value)

    • threeDs2TransactionId = (Non Null value)

    • "eci" = (Non Null value)

    • "cavv" = (Non Null value)

    • threeDsVersion = (Non Null value)

  • ACS Success Criteria:- {{paymentApiUrl}}/3ds/authentication response must have the below data and the client should add those checks

    • "responseCode" = "3DS_1000"

    • "transID" = (Non Null value)

    • challengeRequired = true

    • "redirectUrl" = (Non Null value)

    • "status" = ACS_REQUIRED

...

Parameter

Type

Required

Description

traceID

String

Yes

Trace Id / Corellation ID :- Unique id for 3DS Transaction to trace back / enquiry.

e.g. dbea8561-4990-4582-b370-66ab2696f39a

responseTimestamp

Date

Yes

Date time of response.

e.g. "2023-10-17T08:52:17.845+00:00"

responseCode

String

Yes

Netvalve Response Code

e.g. 3DS_1000 SUCESS

3DS_2000 Failure

More Error Codes

responseMessage

String

Yes

e.g. "Three DS Transaction Successful."

threeDSProviderResponse

String

Optional (present in case of valid request)

TthreeDSProviderResponse JSON Object , refer ThreeDSProviderResponse table

midId

Long

Yes

MID ID

netvalveMidId

String

Yes

NetvalveMidId

ThreeDSProviderResponse table

...