# Reference
# Verification Creatable
Property | Type | Description | Optional |
---|---|---|---|
number | string | ||
items | number | Item | Item[] | ||
response | Response | Defined below | Yes |
version | "2.1.0" | "2.2.0" | Specified in verification required error | |
browser | Browser | Yes | |
currency | Currency | ||
card | Signed JWT or Card.Creatable | ||
recurring | Recurring | Yes | |
contact | Contact | Yes | |
target | string | iframe target url | |
category | "purchase" | "withdrawal" | Yes |
Response
can be defined in two ways:
{type: "method" | "challenge" | "pares"; data: string | Record<string, any>}
or{type: "method"; ThreeDSServerTransID: string; timeout: true }
# Verification
Verification can be defined in two ways:
For a pares:
Property | Type | Description |
---|---|---|
type | "pares" | |
data | Pares |
where Pares
is defined as
Property | Type | Description | Optional |
---|---|---|---|
cavv | string | ||
xid | string | ||
eci | string | "0" , "1" , "2" , "5" , "6" or "7" | |
status | string | "Y" , "U" , "A" , "N" | |
amount | number | Yes | |
cavv_algorithm | string | Yes | |
currency | Currency | Yes | |
last4 | string | Yes | |
merchant_id | string | Yes | |
category | "purchase" | "withdrawal" | Yes |
or
For method or challange
Property | Type | Description |
---|---|---|
type | "method" | "challenge" | |
data | { authentication: string; status: "A" | "N" | "U" | "Y" | "C" | "R"; reference: { server: string ; directory: string }}} | server is the threeDSServerTransID and the directory is the dsTransID |
# Verification required error
If you receive a verification required error, 3D secure needs to be performed.
# Method
HTTP 400 Bad Request
{
"status": 400,
"type": "malformed content",
"content": {
"property": "card",
"type": "Card.Creatable | Card.Token",
"description": "verification required",
"details": {
"visible": false,
"method": "POST",
"url": "https://acs.sandbox.3dsecure.io/3dsmethod",
"data": {
"type": "method",
"threeDSServerTransID": "29673dd1-d33e-40fe-be64-5c68b490904c",
"messageVersion": "2.2.0"
}
}
},
"error": "verification required"
}
Example of a verification required error with type method
# Challenge
HTTP 400 Bad Request
{
"status": 400,
"type": "malformed content",
"content": {
"property": "card",
"type": "Card.Creatable | Card.Token",
"description": "verification required",
"details": {
"visible": true,
"method": "POST",
"url": "https://acs.sandbox.3dsecure.io/browser/challenge/manual",
"data": {
"type": "challenge",
"threeDSServerTransID": "d461f105-1792-407f-95ff-9a496fd918a9",
"acsTransID": "13521d57-581c-44d0-b321-40c58a9cf74e",
"messageVersion": "2.2.0",
"messageType": "CReq",
"challengeWindowSize": "01"
}
}
},
"error": "verification required"
}
Example of a verification required error with type challenge