curl --request GET \
--url https://api.staging.payrails.io/payment/threeds/{threeDSId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.staging.payrails.io/payment/threeds/{threeDSId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.staging.payrails.io/payment/threeds/{threeDSId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.staging.payrails.io/payment/threeds/{threeDSId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.staging.payrails.io/payment/threeds/{threeDSId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.staging.payrails.io/payment/threeds/{threeDSId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.payrails.io/payment/threeds/{threeDSId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"status": "Created",
"providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerConfigId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspaceId": "<string>",
"threeDSFlowType": "Challenged",
"merchantReference": "order_15415",
"holderReference": "<string>",
"holderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflowExecutionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflowExecutionActionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerName": "<string>",
"providerDisplayName": "<string>",
"providerReference": "<string>",
"providerAccountDisplayName": "<string>",
"instrument": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"holderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"paymentMethod": "alexBankMa7fazty",
"status": "created",
"displayName": "<string>",
"description": "<string>",
"default": true,
"merchantReference": "<string>",
"fingerprint": "<string>",
"futureUsage": "Subscription",
"networkTransactionReference": "<string>",
"transactionLinkId": "<string>",
"data": {
"network": "unspecified",
"bin": "416598",
"suffix": "<string>",
"preferredScheme": "unspecified",
"binLookup": {
"bin": "416598",
"network": "unspecified",
"localNetwork": "bancontact",
"issuer": "<string>",
"issuerCountry": {
"code": "<string>",
"iso3": "<string>",
"name": "<string>"
},
"segment": "<string>",
"type": "<string>",
"typeDetails": "<string>",
"isNetworkToken": true,
"isFlexCard": true
},
"billingAddress": {
"street": "<string>",
"doorNumber": "<string>",
"complement": "<string>",
"area": "<string>",
"city": "<string>",
"postalCode": "<string>",
"state": "<string>",
"country": {
"code": "<string>",
"iso3": "<string>",
"name": "<string>"
},
"latitude": 123,
"longitude": 123,
"phone": {
"number": "<string>",
"countryCode": "<string>"
},
"alias": "<string>",
"name": "<string>",
"lastName": "<string>",
"email": "<string>"
},
"expiryMonth": "<string>",
"expiryYear": "<string>",
"holderName": "<string>",
"taxId": "<string>"
}
},
"instrumentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"instrumentTokenId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"threeDSServerTransID": "<string>",
"authenticationValue": "<string>",
"eci": "<string>",
"transStatus": "<string>",
"acquirerMerchantId": "<string>",
"acquirerBin": "<string>",
"amount": {
"value": "12.50",
"currency": "EUR"
},
"meta": {},
"additionalFields": {
"network": "<string>",
"liabilityShifted": true,
"acsTransId": "<string>",
"dsTransId": "<string>",
"sdkTransId": "<string>",
"acsReferenceNumber": "<string>",
"dsReferenceNumber": "<string>",
"sdkReferenceNumber": "<string>",
"threeDSMethodUrl": "<string>",
"versionRecommendation": "<string>",
"threeDSRequestorChallengeInd": "<string>",
"sdkAppId": "<string>",
"acsChallengeMandated": "<string>",
"acsUrl": "<string>",
"acsDecConInd": "<string>",
"challengeWindowSize": "<string>",
"interactionCounter": "<string>",
"challengeCancel": "<string>",
"whiteListStatus": "<string>",
"whiteListStatusSource": "<string>",
"exemptionRequested": "<string>",
"exemptionApplied": "<string>"
}
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.malformed",
"detail": "The request has malformed syntax",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestmalformed"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.unauthorized",
"detail": "The request lacks necessary credentials to perform the specified action",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestunauthorized"
}
]
}{
"errors": [
{
"id": "e7db22b3-914e-4975-928e-9edfb0885bea",
"code": "request.forbidden",
"detail": "The request credentials lack the required permissions to perform the specified action",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestforbidden"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.not-found",
"detail": "The requested resource was not found",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestnot-found"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.rate-limit",
"detail": "Too many requests",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestrate-limit"
}
]
}Get ThreeDS authentication by ID
Find a ThreeDS authentication from a given ID.
curl --request GET \
--url https://api.staging.payrails.io/payment/threeds/{threeDSId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.staging.payrails.io/payment/threeds/{threeDSId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.staging.payrails.io/payment/threeds/{threeDSId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.staging.payrails.io/payment/threeds/{threeDSId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.staging.payrails.io/payment/threeds/{threeDSId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.staging.payrails.io/payment/threeds/{threeDSId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.staging.payrails.io/payment/threeds/{threeDSId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"status": "Created",
"providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerConfigId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workspaceId": "<string>",
"threeDSFlowType": "Challenged",
"merchantReference": "order_15415",
"holderReference": "<string>",
"holderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflowExecutionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflowExecutionActionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"providerName": "<string>",
"providerDisplayName": "<string>",
"providerReference": "<string>",
"providerAccountDisplayName": "<string>",
"instrument": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"holderId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"paymentMethod": "alexBankMa7fazty",
"status": "created",
"displayName": "<string>",
"description": "<string>",
"default": true,
"merchantReference": "<string>",
"fingerprint": "<string>",
"futureUsage": "Subscription",
"networkTransactionReference": "<string>",
"transactionLinkId": "<string>",
"data": {
"network": "unspecified",
"bin": "416598",
"suffix": "<string>",
"preferredScheme": "unspecified",
"binLookup": {
"bin": "416598",
"network": "unspecified",
"localNetwork": "bancontact",
"issuer": "<string>",
"issuerCountry": {
"code": "<string>",
"iso3": "<string>",
"name": "<string>"
},
"segment": "<string>",
"type": "<string>",
"typeDetails": "<string>",
"isNetworkToken": true,
"isFlexCard": true
},
"billingAddress": {
"street": "<string>",
"doorNumber": "<string>",
"complement": "<string>",
"area": "<string>",
"city": "<string>",
"postalCode": "<string>",
"state": "<string>",
"country": {
"code": "<string>",
"iso3": "<string>",
"name": "<string>"
},
"latitude": 123,
"longitude": 123,
"phone": {
"number": "<string>",
"countryCode": "<string>"
},
"alias": "<string>",
"name": "<string>",
"lastName": "<string>",
"email": "<string>"
},
"expiryMonth": "<string>",
"expiryYear": "<string>",
"holderName": "<string>",
"taxId": "<string>"
}
},
"instrumentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"instrumentTokenId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"threeDSServerTransID": "<string>",
"authenticationValue": "<string>",
"eci": "<string>",
"transStatus": "<string>",
"acquirerMerchantId": "<string>",
"acquirerBin": "<string>",
"amount": {
"value": "12.50",
"currency": "EUR"
},
"meta": {},
"additionalFields": {
"network": "<string>",
"liabilityShifted": true,
"acsTransId": "<string>",
"dsTransId": "<string>",
"sdkTransId": "<string>",
"acsReferenceNumber": "<string>",
"dsReferenceNumber": "<string>",
"sdkReferenceNumber": "<string>",
"threeDSMethodUrl": "<string>",
"versionRecommendation": "<string>",
"threeDSRequestorChallengeInd": "<string>",
"sdkAppId": "<string>",
"acsChallengeMandated": "<string>",
"acsUrl": "<string>",
"acsDecConInd": "<string>",
"challengeWindowSize": "<string>",
"interactionCounter": "<string>",
"challengeCancel": "<string>",
"whiteListStatus": "<string>",
"whiteListStatusSource": "<string>",
"exemptionRequested": "<string>",
"exemptionApplied": "<string>"
}
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.malformed",
"detail": "The request has malformed syntax",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestmalformed"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.unauthorized",
"detail": "The request lacks necessary credentials to perform the specified action",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestunauthorized"
}
]
}{
"errors": [
{
"id": "e7db22b3-914e-4975-928e-9edfb0885bea",
"code": "request.forbidden",
"detail": "The request credentials lack the required permissions to perform the specified action",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestforbidden"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.not-found",
"detail": "The requested resource was not found",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestnot-found"
}
]
}{
"errors": [
{
"id": "a24bc325-3929-4d9d-9c08-b3aa532685b7",
"code": "request.rate-limit",
"detail": "Too many requests",
"docUrl": "https://docs.payrails.com/docs/resources/error-codes#requestrate-limit"
}
]
}Authorizations
You can use an OAuth2 JWT bearer token in the Authorization header of your API requests for supported endpoints: Authorization: Bearer <YOUR_JWT_HERE>.
These tokens are valid for 10 minutes and can be requested via the access token endpoint endpoint.
Path Parameters
Identifier of the resource in Payrails.
Query Parameters
Boolean indicating if associated additional fields should be included in the response.
Boolean indicating if the payment instrument should be included in the response.
Response
ThreeDS authentication found, and all details are included.
Unique identifier of the ThreeDS authentication in Payrails.
Exact date and time when the ThreeDS authentication was created in Payrails. Possibly differs slightly from the date in the threeDS provider.
Exact date and time when the ThreeDS authentication was last updated in Payrails. Possibly differs slightly from the date in the ThreeDS provider.
Current status of the ThreeDS authentication in Payrails.
Created, Versioned, Failed, AuthenticationStarted, Challenged, Authenticated Unique identifier of the Provider that was used to process the ThreeDS authentication.
Unique identifier of the merchant-specific Provider Configuration that was used to process the ThreeDS authentication. This can include the set of credentials used, the merchant account, etc.
Workspace ID that the ThreeDS authentication belongs to.
The type of 3DS flow that was used for this authentication.
Challenged, Frictionless, Unknown Merchant-provided reference for the Execution. Commonly, the identifier of the order on the Merchant's system.
"order_15415"
Merchant-provided reference for the transaction counterparty, i.e. the paying consumer.
Unique identifier of the Holder in Payrails.
Merchant-specific identifier of the execution. This can be used for searching for the ThreeDS authentication later.
Identifier of the action in the Workflow that led to this ThreeDS authentication.
Name of the Provider that was used to process the ThreeDS authentication.
Display name of the Provider that was used to process the ThreeDS authentication.
Unique identifier of the ThreeDS authentication in an external system, e.g. ThreeDS provider.
Display name of the Provider Account/Configuration that was used to process the ThreeDS authentication.
Hide child attributes
Hide child attributes
Id of the instrument.
Date and time when the Instrument was created in Payrails.
When the Instrument was last updated.
Unique identifier of the Holder in Payrails.
Represents the payment method type.
alexBankMa7fazty, applePay, audi2pay, bankAccount, card, 2c2p, vietQR, cibSmartWallet, easypaisa, etisalatCash, fawryMobileWallet, fawryPay, googlePay, jazzCash, nbePhoneCash, orangeCash, payPal, qnbEWallet, weCash, genericRedirect, alfa, konnect, eftPro, netBanking, upi, cashFreeWallet, paytmWallet, phonePe, iDeal, bancontact, klarnaPayLater, klarnaPayNow, klarnaPayOverTime, scalapay Status of the instrument.
created, deleted, enabled, disabled, transient Instrument name suitable for display.
Description of the instrument.
True if this instrument is set as default for the holder.
Merchant-provided reference for the instrument.
System-wide unique identifier of the Instrument. If two Holders have the same instrument stored, this value will be the same for both, but the instrument and token IDs will be different. Cannot be used for payments, should only be used for analytics and fraud prevention.
Represents the future usage to define the payment flows that the stored instrument will be used for.
Subscription, CardOnFile, UnscheduledCardOnFile Identifier of the initial payment made with this instrument on the Networks, e.g. Mastercard Trace ID or Visa Transaction ID.
Mastercard Transaction Link Identifier (TLID) of the transaction series this instrument belongs to. Returned by the card network on the initial cardholder-initiated transaction and required on economically related merchant-initiated transactions, such as recurring payments and installments, when the series spans payment providers.
Type-specific information about the instrument.
- Card
- BankAccount
- PayPal
- GooglePay
- ApplePay
- DCB
- MBWay
Hide child attributes
Hide child attributes
Network of the instrument.
unspecified, visa, visadankort, mastercard, amex, diners, discover, unionpay, unionpayuzcard, maestro, maestrobancontact, hipercard, jcb, jcblankapay, argencard, aura, belkart, bpfuelcard, cabal, carnet, cirrus, chjonesfuelcard, uzcard, codensa, dankort, dinacard, duet, ebt, eftpos, elo, euroshellfuelcard, gecapital, bc, hrgstore, humo, lankapay, lukoilfuelcard, bancontact, meeza, newday, mir, ourocard, pagobancomat, paypak, paypal, phhfuelcard, prostir, rupay, sbercard, sodexo, starrewards, cencosud, naranja, troy, uatp, ukfuelcard, verve, voyager, vpay, wex, cmi, atm, bankcard, localbrand, loyalty, privatelabel, fuelcard, redfuelcard, redliquidfuelcard First 6-8 digits of the Card number. Also known as IIN (Issuer Identification Number).
6 - 8"416598"
Last digits of the Card number.
4Network of the instrument.
unspecified, visa, visadankort, mastercard, amex, diners, discover, unionpay, unionpayuzcard, maestro, maestrobancontact, hipercard, jcb, jcblankapay, argencard, aura, belkart, bpfuelcard, cabal, carnet, cirrus, chjonesfuelcard, uzcard, codensa, dankort, dinacard, duet, ebt, eftpos, elo, euroshellfuelcard, gecapital, bc, hrgstore, humo, lankapay, lukoilfuelcard, bancontact, meeza, newday, mir, ourocard, pagobancomat, paypak, paypal, phhfuelcard, prostir, rupay, sbercard, sodexo, starrewards, cencosud, naranja, troy, uatp, ukfuelcard, verve, voyager, vpay, wex, cmi, atm, bankcard, localbrand, loyalty, privatelabel, fuelcard, redfuelcard, redliquidfuelcard Information about an issuer by the given BIN (or IIN).
Hide child attributes
Hide child attributes
First 6-8 digits of the Card number. Also known as IIN (Issuer Identification Number).
6 - 8"416598"
Network of the instrument.
unspecified, visa, visadankort, mastercard, amex, diners, discover, unionpay, unionpayuzcard, maestro, maestrobancontact, hipercard, jcb, jcblankapay, argencard, aura, belkart, bpfuelcard, cabal, carnet, cirrus, chjonesfuelcard, uzcard, codensa, dankort, dinacard, duet, ebt, eftpos, elo, euroshellfuelcard, gecapital, bc, hrgstore, humo, lankapay, lukoilfuelcard, bancontact, meeza, newday, mir, ourocard, pagobancomat, paypak, paypal, phhfuelcard, prostir, rupay, sbercard, sodexo, starrewards, cencosud, naranja, troy, uatp, ukfuelcard, verve, voyager, vpay, wex, cmi, atm, bankcard, localbrand, loyalty, privatelabel, fuelcard, redfuelcard, redliquidfuelcard Card local network that supports the card, e.g. CartesBancaires, Dankort, Mada, Bancontact.
bancontact, cartesbancaires, dankort, mada Name of the bank or institution that issued the card.
Country of the bank or institution that issued the card.
Hide child attributes
Hide child attributes
ISO 3166-1 alpha-2 country code.
^[A-Z]{2}$ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
^[A-Z]{3}$The English name of the country. Returned by Payrails, but not interpreted in requests.
Segment of the card, e.g. gold, black, business.
Type of the card, e.g. credit, debit, prepaid, gift.
More information about the card type, e.g. personal, commercial.
Indicates whether the card credential represents a network token rather than a primary account number (PAN).
Indicates whether the card is enrolled in a Flexible Credential or Flex Card program supported by the network - e.g. Visa Flexible Credential, Mastercard FlexCard.
Billing Address of the instrument.
Hide child attributes
Hide child attributes
The name of the street of a postal address.
The number on the door, building, or room.
Additional addressing information, 2nd line of postal address.
The name of the suburb or area within a city.
The name of the city of a postal address.
The postal code.
The name of the state a postal address is in.
The country where the address is in.
Hide child attributes
Hide child attributes
ISO 3166-1 alpha-2 country code.
^[A-Z]{2}$ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
^[A-Z]{3}$The English name of the country. Returned by Payrails, but not interpreted in requests.
Latitude of the address in the GPS coordinate system.
Longitude of the address in the GPS coordinate system.
The phone to contact in the address (can be different that the customer's).
Hide child attributes
Hide child attributes
Name of the address, e.g. home, work.
Name of the person to whom the address belongs to.
Last name of the person to whom the address belongs to.
Email of the person to whom the address belongs to.
Expiry month of the Card.
2Expiry year of the Card.
4Name of the owner of the Card.
Payer-provided tax identification number (e.g. CPF in Brazil) collected on the instrument.
Unique identifier of the Instrument that was used for the Payment in Payrails.
Unique identifier of the specific Token inside the Instrument used for the Payment in Payrails.
Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction.
Payment System-specific value provided as part of the ACS registration for each supported DS.
Payment System-specific value provided by the ACS to indicate the results of the attempt to authenticate the Cardholder.
Indicates whether a transaction qualifies as an authenticated transaction.
Acquirer-assigned merchant identifier.
Acquiring institution identification code as assigned by the DS receiving the AReq message.
Metadata for the context of an execution. Includes Payrails-defined structures for most common fields used in workflows, but can also be extended by merchant or provider-specific fields. For more information, visit our Meta Fields guide. See Meta for every field.
Hide child attributes
Hide child attributes
The card network which the card uses. Should be the same as instrument, but can differ if it is co-branded.
Whether liability for this transaction was shifted to the issuer.
ACS Transaction ID, the unique identifier (UUID) used by the ACS for tracking the transaction throughout the 3DS process.
DS Transaction ID, the unique identifier (UUID) used by the directory server for tracking the transaction throughout the 3DS process.
SDK Transaction ID, universally unique transaction identifier assigned by the 3DS SDK to identify a single transaction.
A unique identifier assigned to the ACS by EMVCo.
A unique identifier assigned to the directory server by EMVCo.
Identifies the vendor and version of the 3DS SDK that is integrated in a 3DS Requester App.
The Method URL for sending the Method Request.
Provider version recommendation. If not present, the highest available should be used 2.2.0.
ThreeDS Requester Challenge Indicator,indicates whether a challenge is requested for this transaction.
Universally unique ID created upon all installations of the 3DS Requestor App on a consumer device.
Indicates whether regional mandates (e.g. PSD2) require a challenge to be performed. If using the 3RI device channel, a decoupled challenge must be used.
The URL of the ACS to be used for the challenge.
ACS Decoupled Confirmation Indicator, indicates whether the ACS will use decoupled authentication.
Dimensions of the challenge window that will been displayed to the cardholder.
The number of authentication attempts by the cardholder, for example, they may attempt a second time if they enter their password incorrectly.
Indicates that the authentication was cancelled.
Indicates whether the cardholder has added the merchant to their list of trusted merchants.
Identifies the system which set the whiteListStatus value.
Exemption that the merchant or Payrails requested.
Exemption that was actually applied on the process. Can be different than the one requested if it was not accepted.