Skip to content

Simulate

Simulate 3DS authentication
post/v1/three_ds_authentication/simulate

Simulates a 3DS authentication request from the payment network as if it came from an ACS. If you're configured for 3DS Customer Decisioning, simulating authentications requires your customer decisioning endpoint to be set up properly (respond with a valid JSON). If the authentication decision is to challenge, ensure that the account holder associated with the card transaction has a valid phone number configured to receive the OTP code via SMS.

Body Parameters
merchantobject

Merchant information for the simulated transaction

Hide ParametersShow Parameters
idstring

Unique identifier to identify the payment card acceptor. Corresponds to merchant_acceptor_id in authorization.

maxLength15
minLength1
countrystring

Country of the address provided by the cardholder in ISO 3166-1 alpha-3 format (e.g. USA)

mccstring

Merchant category code for the transaction to be simulated. A four-digit number listed in ISO 18245. Supported merchant category codes can be found here.

namestring

Merchant descriptor, corresponds to descriptor in authorization. If CHALLENGE keyword is included, Lithic will trigger a challenge.

maxLength25
minLength1
panstring

Sixteen digit card number.

maxLength16
minLength16
transactionobject

Transaction details for the simulation

Hide ParametersShow Parameters
amountnumber

Amount (in cents) to authenticate.

minimum0
currencystring

3-character alphabetic ISO 4217 currency code.

card_expiry_checkenum
optional
Accepts one of the following: "MATCH", "MISMATCH", "NOT_PRESENT"

When set will use the following values as part of the Simulated Authentication. When not set defaults to MATCH

Hide ParametersShow Parameters
"MATCH"
"MISMATCH"
"NOT_PRESENT"
Returns
tokenstring
optional

Globally unique identifier for the 3DS authentication.

formatuuid
Request example Request
curl https://api.lithic.com/v1/three_ds_authentication/simulate \
    -H 'Content-Type: application/json' \
    -H "Authorization: $LITHIC_API_KEY" \
    -d '{
      "merchant": {
        "id": "OODKZAPJVN4YS7O",
        "country": "USA",
        "mcc": "5812",
        "name": "COFFEE SHOP"
      },
      "pan": "4111111289144142",
      "transaction": {
        "amount": 0,
        "currency": "GBP"
      }
    }'
200 Example
{
  "token": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
}