Properties
| Name | Type | Description |
|---|---|---|
| acctInfo | object | Additional information about the Cardholders account provided by the 3DS Requestor. |
| acctType | string | Indicates the type of account. For example, for a multi-account card product. Length: 2 characters. Allowed values: * **01** Not applicable * **02** Credit * **03** Debit |
| acquirerBIN | string | Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The acquiring BIN enrolled for 3D Secure 2. This string should mat |
| acquirerMerchantID | string | Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchantId that is enrolled for 3D Secure 2 by the merchant's |
| addrMatch | string | Indicates whether the Cardholder Shipping Address and Cardholder Billing Address are the same. Allowed values: * **Y** Shipping Address matches Billing Address. * **N** Shipping Address does not match |
| authenticationOnly | boolean | If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. |
| challengeIndicator | string | Possibility to specify a preference for receiving a challenge from the issuer. Allowed values: * `noPreference` * `requestNoChallenge` * `requestChallenge` * `requestChallengeAsMandate` |
| deviceRenderOptions | object | Display options for the 3D Secure 2 SDK. Optional and only for `deviceChannel` **app**. |
| homePhone | object | The home phone number provided by the Cardholder. |
| mcc | string | Required for merchants that have been enrolled for 3D Secure 2 by another party than Adyen, mostly [authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/a |
| merchantName | string | Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchant name that the issuer presents to the shopper if they |
| messageVersion | string | The `messageVersion` value indicating the 3D Secure 2 protocol version. |
| mobilePhone | object | The mobile phone number provided by the Cardholder. |
| notificationURL | string | URL to where the issuer should send the `CRes`. Required if you are not using components for `channel` **Web** or if you are using classic integration `deviceChannel` **browser**. |
| payTokenInd | boolean | Value **true** indicates that the transaction was de-tokenised prior to being received by the ACS. |
| paymentAuthenticationUseCase | string | Indicates the type of payment for which an authentication is requested (message extension) |
| platform | string | The platform of the shopper. Allowed values: * `iOS` * `android` * `browser` |
| purchaseInstalData | string | Indicates the maximum number of authorisations permitted for instalment payments. Length: 13 characters. |
| recurringExpiry | string | Date after which no further authorisations shall be performed. Format: YYYYMMDD |
| recurringFrequency | string | Indicates the minimum number of days between authorisations. Maximum length: 4 characters. |
| sdkAppID | string | The `sdkAppID` value as received from the 3D Secure 2 SDK. |
| sdkEphemPubKey | object | The `sdkEphemPubKey` value as received from the 3D Secure 2 SDK. |
| sdkMaxTimeout | integer | The maximum amount of time in minutes for the 3D Secure 2 authentication process. Optional and only for `deviceChannel` set to **app**. Defaults to **60** minutes. |
| sdkReferenceNumber | string | The `sdkReferenceNumber` value as received from the 3D Secure 2 SDK. |
| sdkTransID | string | The `sdkTransID` value as received from the 3D Secure 2 SDK. |
| threeDSCompInd | string | Completion indicator for the device fingerprinting. |
| threeDSRequestorAuthenticationInd | string | Indicates the type of Authentication request. |
| threeDSRequestorAuthenticationInfo | object | Information about how the 3DS Requestor authenticated the cardholder before or during the transaction |
| threeDSRequestorChallengeInd | string | Indicates whether a challenge is requested for this transaction. Possible values: * **01** No preference * **02** No challenge requested * **03** Challenge requested (3DS Requestor preference) * **04* |
| threeDSRequestorID | string | Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor identifier assigned by the Dir |
| threeDSRequestorName | string | Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor name assigned by the Directory |
| threeDSRequestorPriorAuthenticationInfo | object | Information about how the 3DS Requestor authenticated the cardholder as part of a previous 3DS transaction. |
| threeDSRequestorURL | string | URL of the (customer service) website that will be shown to the shopper in case of technical errors during the 3D Secure 2 process. |
| transType | string | Identifies the type of transaction being authenticated. Length: 2 characters. Allowed values: * **01** Goods/Service Purchase * **03** Check Acceptance * **10** Account Funding * **11** Quasi-Cash Tra |
| transactionType | string | Identify the type of the transaction being authenticated. |
| whiteListStatus | string | The `whiteListStatus` value returned from a previous 3D Secure 2 transaction, only applicable for 3D Secure 2 protocol version 2.2.0. |
| workPhone | object | The work phone number provided by the Cardholder. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/ThreeDS2RequestFields",
"title": "ThreeDS2RequestFields",
"properties": {
"acctInfo": {
"x-addedInVersion": "68",
"description": "Additional information about the Cardholders account provided by the 3DS Requestor.",
"$ref": "#/components/schemas/AcctInfo"
},
"acctType": {
"x-addedInVersion": "68",
"description": "Indicates the type of account. For example, for a multi-account card product. Length: 2 characters. Allowed values:\n* **01** Not applicable\n* **02** Credit\n* **03** Debit",
"enum": [
"01",
"02",
"03"
],
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"acquirerBIN": {
"x-addedInVersion": "49",
"description": "Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The acquiring BIN enrolled for 3D Secure 2. This string should match the value that you will use in the authorisation. Use 123456 on the Test platform.",
"type": "string"
},
"acquirerMerchantID": {
"x-addedInVersion": "49",
"description": "Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchantId that is enrolled for 3D Secure 2 by the merchant's acquirer. This string should match the value that you will use in the authorisation. Use 123456 on the Test platform.",
"type": "string"
},
"addrMatch": {
"x-addedInVersion": "68",
"description": "Indicates whether the Cardholder Shipping Address and Cardholder Billing Address are the same. Allowed values:\n* **Y** Shipping Address matches Billing Address.\n* **N** Shipping Address does not match Billing Address.",
"enum": [
"Y",
"N"
],
"maxLength": 1,
"minLength": 1,
"type": "string"
},
"authenticationOnly": {
"deprecated": true,
"x-deprecatedInVersion": "50",
"x-deprecatedMessage": "Use `threeDSAuthenticationOnly` instead.",
"default": false,
"description": "If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.",
"type": "boolean"
},
"challengeIndicator": {
"deprecated": true,
"x-deprecatedInVersion": "68",
"x-deprecatedMessage": "Use `threeDSRequestorChallengeInd` instead.",
"description": "Possibility to specify a preference for receiving a challenge from the issuer.\nAllowed values:\n* `noPreference`\n* `requestNoChallenge`\n* `requestChallenge`\n* `requestChallengeAsMandate`\n",
"enum": [
"noPreference",
"requestNoChallenge",
"requestChallenge",
"requestChallengeAsMandate"
],
"type": "string"
},
"deviceRenderOptions": {
"description": "Display options for the 3D Secure 2 SDK.\nOptional and only for `deviceChannel` **app**.",
"$ref": "#/components/schemas/DeviceRenderOptions"
},
"homePhone": {
"x-addedInVersion": "68",
"description": "The home phone number provided by the Cardholder.",
"$ref": "#/components/schemas/Phone"
},
"mcc": {
"x-addedInVersion": "49",
"description": "Required for merchants that have been enrolled for 3D Secure 2 by another party than Adyen, mostly [authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The `mcc` is a four-digit code with which the previously given `acquirerMerchantID` is registered at the scheme.",
"type": "string"
},
"merchantName": {
"x-addedInVersion": "49",
"description": "Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchant name that the issuer presents to the shopper if they get a challenge. We recommend to use the same value that you will use in the authorization. Maximum length is 40 characters.\n> Optional for a [full 3D Secure 2 integration](https://docs.adyen.com/online-payments/3d-secure/native-3ds2/api-integration). Use this field if you are enrolled for 3D Secure 2 with us and want to override the merchant name already configured on your account.",
"type": "string"
},
"messageVersion": {
"description": "The `messageVersion` value indicating the 3D Secure 2 protocol version.",
"type": "string"
},
"mobilePhone": {
"x-addedInVersion": "68",
"description": "The mobile phone number provided by the Cardholder.",
"$ref": "#/components/schemas/Phone"
},
"notificationURL": {
"description": "URL to where the issuer should send the `CRes`. Required if you are not using components for `channel` **Web** or if you are using classic integration `deviceChannel` **browser**.",
"type": "string"
},
"payTokenInd": {
"x-addedInVersion": "68",
"description": "Value **true** indicates that the transaction was de-tokenised prior to being received by the ACS.",
"type": "boolean"
},
"paymentAuthenticationUseCase": {
"x-addedInVersion": "68",
"description": "Indicates the type of payment for which an authentication is requested (message extension)",
"type": "string"
},
"platform": {
"description": "The platform of the shopper.\nAllowed values:\n* `iOS`\n* `android`\n* `browser`",
"enum": [
"iOS",
"android",
"browser"
],
"type": "string"
},
"purchaseInstalData": {
"x-addedInVersion": "68",
"description": "Indicates the maximum number of authorisations permitted for instalment payments. Length: 13 characters.",
"maxLength": 3,
"minLength": 1,
"type": "string"
},
"recurringExpiry": {
"x-addedInVersion": "68",
"description": "Date after which no further authorisations shall be performed. Format: YYYYMMDD",
"type": "string"
},
"recurringFrequency": {
"x-addedInVersion": "68",
"description": "Indicates the minimum number of days between authorisations. Maximum length: 4 characters.",
"maxLength": 4,
"type": "string"
},
"sdkAppID": {
"description": "The `sdkAppID` value as received from the 3D Secure 2 SDK.",
"type": "string"
},
"sdkEphemPubKey": {
"description": "The `sdkEphemPubKey` value as received from the 3D Secure 2 SDK.",
"$ref": "#/components/schemas/SDKEphemPubKey"
},
"sdkMaxTimeout": {
"default": 60,
"description": "The maximum amount of time in minutes for the 3D Secure 2 authentication process.\nOptional and only for `deviceChannel` set to **app**. Defaults to **60** minutes.",
"format": "int32",
"type": "integer"
},
"sdkReferenceNumber": {
"description": "The `sdkReferenceNumber` value as received from the 3D Secure 2 SDK.",
"type": "string"
},
"sdkTransID": {
"description": "The `sdkTransID` value as received from the 3D Secure 2 SDK.",
"type": "string"
},
"threeDSCompInd": {
"description": "Completion indicator for the device fingerprinting.",
"type": "string"
},
"threeDSRequestorAuthenticationInd": {
"x-addedInVersion": "68",
"description": "Indicates the type of Authentication request.",
"type": "string"
},
"threeDSRequestorAuthenticationInfo": {
"x-addedInVersion": "68",
"description": "Information about how the 3DS Requestor authenticated the cardholder before or during the transaction",
"$ref": "#/components/schemas/ThreeDSRequestorAuthenticationInfo"
},
"threeDSRequestorChallengeInd": {
"x-addedInVersion": "68",
"description": "Indicates whether a challenge is requested for this transaction. Possible values:\n* **01** No preference\n* **02** No challenge requested\n* **03** Challenge requested (3DS Requestor preference)\n* **04** Challenge requested (Mandate)\n* **05** No challenge (transactional risk analysis is already performed)\n* **06** Data Only",
"enum": [
"01",
"02",
"03",
"04",
"05",
"06"
],
"type": "string"
},
"threeDSRequestorID": {
"description": "Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor identifier assigned by the Directory Server when you enrol for 3D Secure 2.",
"type": "string"
},
"threeDSRequestorName": {
"description": "Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor name assigned by the Directory Server when you enrol for 3D Secure 2.",
"type": "string"
},
"threeDSRequestorPriorAuthenticationInfo": {
"x-addedInVersion": "68",
"description": "Information about how the 3DS Requestor authenticated the cardholder as part of a previous 3DS transaction.",
"$ref": "#/components/schemas/ThreeDSRequestorPriorAuthenticationInfo"
},
"threeDSRequestorURL": {
"description": "URL of the (customer service) website that will be shown to the shopper in case of technical errors during the 3D Secure 2 process.",
"type": "string"
},
"transType": {
"x-addedInVersion": "68",
"description": "Identifies the type of transaction being authenticated. Length: 2 characters. Allowed values:\n* **01** Goods/Service Purchase\n* **03** Check Acceptance\n* **10** Account Funding\n* **11** Quasi-Cash Transaction\n* **28** Prepaid Activation and Load",
"enum": [
"01",
"03",
"10",
"11",
"28"
],
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"transactionType": {
"x-addedInVersion": "50",
"description": "Identify the type of the transaction being authenticated.",
"enum": [
"goodsOrServicePurchase",
"checkAcceptance",
"accountFunding",
"quasiCashTransaction",
"prepaidActivationAndLoad"
],
"type": "string"
},
"whiteListStatus": {
"x-addedInVersion": "49",
"description": "The `whiteListStatus` value returned from a previous 3D Secure 2 transaction, only applicable for 3D Secure 2 protocol version 2.2.0.",
"type": "string"
},
"workPhone": {
"x-addedInVersion": "68",
"description": "The work phone number provided by the Cardholder.",
"$ref": "#/components/schemas/Phone"
}
},
"type": "object"
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/adyen-threeds2requestfields"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.