diff --git a/json/AccountService-v3.json b/json/AccountService-v3.json index 628750a..9521741 100644 --- a/json/AccountService-v3.json +++ b/json/AccountService-v3.json @@ -9,7 +9,8 @@ "version" : "3", "x-publicVersion" : true, "title" : "Adyen for Platforms: Account API", - "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and KYC-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Account API, you must use basic authentication credentials of your web service user. If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v3/createAccountHolder\n```", + "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and verification-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v3/createAccountHolder\n```", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -39,8 +40,8 @@ "tags" : [ "Accounts" ], - "summary" : "Close an account.", - "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments will be directed to your liable account.", + "summary" : "Close an account", + "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments are sent to your liable account.", "operationId" : "post-closeAccount", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -157,8 +158,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** status,the payments will be directed to your liable account.", + "summary" : "Close an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), the payments are sent to your liable account.", "operationId" : "post-closeAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 7, @@ -275,7 +276,7 @@ "tags" : [ "Accounts" ], - "summary" : "Create a new account.", + "summary" : "Create an account", "description" : "Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts).", "operationId" : "post-createAccount", "x-groupName" : "Accounts", @@ -393,8 +394,8 @@ "tags" : [ "Account holders" ], - "summary" : "Create a new account holder.", - "description" : "Creates an account holder, which [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", + "summary" : "Create an account holder", + "description" : "Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", "operationId" : "post-createAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -530,8 +531,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete bank accounts.", - "description" : "Deletes one or more bank accounts of an account holder. ", + "summary" : "Delete bank accounts", + "description" : "Deletes bank accounts associated with an account holder. ", "operationId" : "post-deleteBankAccounts", "x-groupName" : "Verification", "x-sortIndex" : 4, @@ -648,8 +649,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete shareholders.", - "description" : "Deletes one or more shareholders from an account holder.", + "summary" : "Delete shareholders", + "description" : "Deletes shareholders associated with an account holder.", "operationId" : "post-deleteShareholders", "x-groupName" : "Verification", "x-sortIndex" : 6, @@ -766,8 +767,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete signatories.", - "description" : "Deletes one or more signatories from an account holder.", + "summary" : "Delete signatories", + "description" : "Deletes signatories associated with an account holder.", "operationId" : "post-deleteSignatories", "x-groupName" : "Verification", "x-sortIndex" : 7, @@ -879,8 +880,8 @@ "tags" : [ "Account holders" ], - "summary" : "Get an account holder.", - "description" : "Retrieves the details of an account holder.", + "summary" : "Get an account holder", + "description" : "Returns the details of an account holder.", "operationId" : "post-getAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -1000,7 +1001,7 @@ "tags" : [ "Account holders" ], - "summary" : "Get a tax form.", + "summary" : "Get a tax form", "description" : "Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms).", "operationId" : "post-getTaxForm", "x-groupName" : "Account holders", @@ -1108,8 +1109,8 @@ "tags" : [ "Verification" ], - "summary" : "Get documents.", - "description" : "Retrieves documents that were previously uploaded for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).\n", + "summary" : "Get documents", + "description" : "Returns documents that were previously uploaded for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).\n", "operationId" : "post-getUploadedDocuments", "x-groupName" : "Verification", "x-sortIndex" : 2, @@ -1216,7 +1217,7 @@ "tags" : [ "Account holders" ], - "summary" : "Suspend an account holder.", + "summary" : "Suspend an account holder", "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**.", "operationId" : "post-suspendAccountHolder", "x-groupName" : "Account holders", @@ -1334,8 +1335,8 @@ "tags" : [ "Account holders" ], - "summary" : "Unsuspend an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. Account holders can have a **Suspended** status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a KYC deadline expires.\n\nYou can only unsuspend account holders if they _do not_ have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", + "summary" : "Unsuspend an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status) if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a verification deadline expires.\n\nYou can only unsuspend account holders if they do not have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", "operationId" : "post-unSuspendAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 6, @@ -1452,7 +1453,7 @@ "tags" : [ "Accounts" ], - "summary" : "Update an account.", + "summary" : "Update an account", "description" : "Updates the description or payout schedule of an account.", "operationId" : "post-updateAccount", "x-groupName" : "Accounts", @@ -1570,8 +1571,8 @@ "tags" : [ "Account holders" ], - "summary" : "Update an account holder.", - "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the objects below.\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes along with other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", + "summary" : "Update an account holder", + "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the following object:\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes, as well as other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation:\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", "operationId" : "post-updateAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -1697,7 +1698,7 @@ "tags" : [ "Account holders" ], - "summary" : "Update payout or processing state.", + "summary" : "Update payout or processing state", "description" : "Disables or enables the processing or payout state of an account holder.", "operationId" : "post-updateAccountHolderState", "x-groupName" : "Account holders", @@ -1815,8 +1816,8 @@ "tags" : [ "Verification" ], - "summary" : "Upload a document.", - "description" : "Uploads a document for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).", + "summary" : "Upload a document", + "description" : "Uploads a document for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).", "operationId" : "post-uploadDocument", "x-groupName" : "Verification", "x-sortIndex" : 1, @@ -2206,7 +2207,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2437,7 +2439,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -2680,6 +2682,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2903,7 +2909,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3060,7 +3066,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -3166,11 +3172,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -3565,7 +3571,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ diff --git a/json/AccountService-v4.json b/json/AccountService-v4.json index 7bad469..72a4f32 100644 --- a/json/AccountService-v4.json +++ b/json/AccountService-v4.json @@ -9,7 +9,8 @@ "version" : "4", "x-publicVersion" : true, "title" : "Adyen for Platforms: Account API", - "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and KYC-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Account API, you must use basic authentication credentials of your web service user. If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v4/createAccountHolder\n```", + "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and verification-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v4/createAccountHolder\n```", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -39,8 +40,8 @@ "tags" : [ "Accounts" ], - "summary" : "Close an account.", - "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments will be directed to your liable account.", + "summary" : "Close an account", + "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments are sent to your liable account.", "operationId" : "post-closeAccount", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -157,8 +158,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** status,the payments will be directed to your liable account.", + "summary" : "Close an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), the payments are sent to your liable account.", "operationId" : "post-closeAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 7, @@ -275,7 +276,7 @@ "tags" : [ "Accounts" ], - "summary" : "Create a new account.", + "summary" : "Create an account", "description" : "Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts).", "operationId" : "post-createAccount", "x-groupName" : "Accounts", @@ -393,8 +394,8 @@ "tags" : [ "Account holders" ], - "summary" : "Create a new account holder.", - "description" : "Creates an account holder, which [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", + "summary" : "Create an account holder", + "description" : "Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", "operationId" : "post-createAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -504,8 +505,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete bank accounts.", - "description" : "Deletes one or more bank accounts of an account holder. ", + "summary" : "Delete bank accounts", + "description" : "Deletes bank accounts associated with an account holder. ", "operationId" : "post-deleteBankAccounts", "x-groupName" : "Verification", "x-sortIndex" : 4, @@ -622,8 +623,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete shareholders.", - "description" : "Deletes one or more shareholders from an account holder.", + "summary" : "Delete shareholders", + "description" : "Deletes shareholders associated with an account holder.", "operationId" : "post-deleteShareholders", "x-groupName" : "Verification", "x-sortIndex" : 6, @@ -740,8 +741,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete signatories.", - "description" : "Deletes one or more signatories from an account holder.", + "summary" : "Delete signatories", + "description" : "Deletes signatories associated with an account holder.", "operationId" : "post-deleteSignatories", "x-groupName" : "Verification", "x-sortIndex" : 7, @@ -853,8 +854,8 @@ "tags" : [ "Account holders" ], - "summary" : "Get an account holder.", - "description" : "Retrieves the details of an account holder.", + "summary" : "Get an account holder", + "description" : "Returns the details of an account holder.", "operationId" : "post-getAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -974,7 +975,7 @@ "tags" : [ "Account holders" ], - "summary" : "Get a tax form.", + "summary" : "Get a tax form", "description" : "Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms).", "operationId" : "post-getTaxForm", "x-groupName" : "Account holders", @@ -1082,8 +1083,8 @@ "tags" : [ "Verification" ], - "summary" : "Get documents.", - "description" : "Retrieves documents that were previously uploaded for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).\n", + "summary" : "Get documents", + "description" : "Returns documents that were previously uploaded for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).\n", "operationId" : "post-getUploadedDocuments", "x-groupName" : "Verification", "x-sortIndex" : 2, @@ -1190,7 +1191,7 @@ "tags" : [ "Account holders" ], - "summary" : "Suspend an account holder.", + "summary" : "Suspend an account holder", "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**.", "operationId" : "post-suspendAccountHolder", "x-groupName" : "Account holders", @@ -1308,8 +1309,8 @@ "tags" : [ "Account holders" ], - "summary" : "Unsuspend an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. Account holders can have a **Suspended** status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a KYC deadline expires.\n\nYou can only unsuspend account holders if they _do not_ have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", + "summary" : "Unsuspend an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status) if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a verification deadline expires.\n\nYou can only unsuspend account holders if they do not have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", "operationId" : "post-unSuspendAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 6, @@ -1426,7 +1427,7 @@ "tags" : [ "Accounts" ], - "summary" : "Update an account.", + "summary" : "Update an account", "description" : "Updates the description or payout schedule of an account.", "operationId" : "post-updateAccount", "x-groupName" : "Accounts", @@ -1544,8 +1545,8 @@ "tags" : [ "Account holders" ], - "summary" : "Update an account holder.", - "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the objects below.\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes along with other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", + "summary" : "Update an account holder", + "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the following object:\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes, as well as other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation:\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", "operationId" : "post-updateAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -1671,7 +1672,7 @@ "tags" : [ "Account holders" ], - "summary" : "Update payout or processing state.", + "summary" : "Update payout or processing state", "description" : "Disables or enables the processing or payout state of an account holder.", "operationId" : "post-updateAccountHolderState", "x-groupName" : "Account holders", @@ -1789,8 +1790,8 @@ "tags" : [ "Verification" ], - "summary" : "Upload a document.", - "description" : "Uploads a document for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).", + "summary" : "Upload a document", + "description" : "Uploads a document for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).", "operationId" : "post-uploadDocument", "x-groupName" : "Verification", "x-sortIndex" : 1, @@ -2190,7 +2191,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2451,7 +2453,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -2705,6 +2707,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2947,7 +2953,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3104,7 +3110,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -3210,11 +3216,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -3634,7 +3640,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ diff --git a/json/AccountService-v5.json b/json/AccountService-v5.json index 61e7753..64f31f1 100644 --- a/json/AccountService-v5.json +++ b/json/AccountService-v5.json @@ -9,7 +9,8 @@ "version" : "5", "x-publicVersion" : true, "title" : "Adyen for Platforms: Account API", - "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and KYC-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Account API, you must use basic authentication credentials of your web service user. If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v5/createAccountHolder\n```", + "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and verification-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v5/createAccountHolder\n```", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -39,8 +40,8 @@ "tags" : [ "Verification" ], - "summary" : "Trigger verification.", - "description" : "Triggers the KYC verification for an account holder even if the checks are not yet required for the volume that they currently process.", + "summary" : "Trigger verification", + "description" : "Triggers the verification of an account holder even if the checks are not yet required for the volume that they are currently processing.", "x-addedInVersion" : "5", "operationId" : "post-checkAccountHolder", "x-groupName" : "Verification", @@ -158,8 +159,8 @@ "tags" : [ "Accounts" ], - "summary" : "Close an account.", - "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments will be directed to your liable account.", + "summary" : "Close an account", + "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments are sent to your liable account.", "operationId" : "post-closeAccount", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -276,8 +277,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** status,the payments will be directed to your liable account.", + "summary" : "Close an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), the payments are sent to your liable account.", "operationId" : "post-closeAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 7, @@ -394,8 +395,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close stores.", - "description" : "Close one or more stores of the account holder.", + "summary" : "Close stores", + "description" : "Closes stores associated with an account holder.", "x-addedInVersion" : "5", "operationId" : "post-closeStores", "x-groupName" : "Account holders", @@ -498,7 +499,7 @@ "tags" : [ "Accounts" ], - "summary" : "Create a new account.", + "summary" : "Create an account", "description" : "Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts).", "operationId" : "post-createAccount", "x-groupName" : "Accounts", @@ -616,8 +617,8 @@ "tags" : [ "Account holders" ], - "summary" : "Create a new account holder.", - "description" : "Creates an account holder, which [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", + "summary" : "Create an account holder", + "description" : "Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", "operationId" : "post-createAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -727,8 +728,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete bank accounts.", - "description" : "Deletes one or more bank accounts of an account holder. ", + "summary" : "Delete bank accounts", + "description" : "Deletes bank accounts associated with an account holder. ", "operationId" : "post-deleteBankAccounts", "x-groupName" : "Verification", "x-sortIndex" : 4, @@ -845,8 +846,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete payout methods.", - "description" : "Deletes one or more payout methods of an account holder.", + "summary" : "Delete payout methods", + "description" : "Deletes payout methods associated with an account holder.", "x-addedInVersion" : "5", "operationId" : "post-deletePayoutMethods", "x-groupName" : "Verification", @@ -964,8 +965,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete shareholders.", - "description" : "Deletes one or more shareholders from an account holder.", + "summary" : "Delete shareholders", + "description" : "Deletes shareholders associated with an account holder.", "operationId" : "post-deleteShareholders", "x-groupName" : "Verification", "x-sortIndex" : 6, @@ -1082,8 +1083,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete signatories.", - "description" : "Deletes one or more signatories from an account holder.", + "summary" : "Delete signatories", + "description" : "Deletes signatories associated with an account holder.", "operationId" : "post-deleteSignatories", "x-groupName" : "Verification", "x-sortIndex" : 7, @@ -1195,8 +1196,8 @@ "tags" : [ "Account holders" ], - "summary" : "Get an account holder.", - "description" : "Retrieves the details of an account holder.", + "summary" : "Get an account holder", + "description" : "Returns the details of an account holder.", "operationId" : "post-getAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -1316,7 +1317,7 @@ "tags" : [ "Account holders" ], - "summary" : "Get a tax form.", + "summary" : "Get a tax form", "description" : "Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms).", "operationId" : "post-getTaxForm", "x-groupName" : "Account holders", @@ -1424,8 +1425,8 @@ "tags" : [ "Verification" ], - "summary" : "Get documents.", - "description" : "Retrieves documents that were previously uploaded for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).\n", + "summary" : "Get documents", + "description" : "Returns documents that were previously uploaded for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).\n", "operationId" : "post-getUploadedDocuments", "x-groupName" : "Verification", "x-sortIndex" : 2, @@ -1532,7 +1533,7 @@ "tags" : [ "Account holders" ], - "summary" : "Suspend an account holder.", + "summary" : "Suspend an account holder", "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**.", "operationId" : "post-suspendAccountHolder", "x-groupName" : "Account holders", @@ -1650,8 +1651,8 @@ "tags" : [ "Account holders" ], - "summary" : "Unsuspend an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. Account holders can have a **Suspended** status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a KYC deadline expires.\n\nYou can only unsuspend account holders if they _do not_ have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", + "summary" : "Unsuspend an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status) if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a verification deadline expires.\n\nYou can only unsuspend account holders if they do not have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", "operationId" : "post-unSuspendAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 6, @@ -1768,7 +1769,7 @@ "tags" : [ "Accounts" ], - "summary" : "Update an account.", + "summary" : "Update an account", "description" : "Updates the description or payout schedule of an account.", "operationId" : "post-updateAccount", "x-groupName" : "Accounts", @@ -1886,8 +1887,8 @@ "tags" : [ "Account holders" ], - "summary" : "Update an account holder.", - "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the objects below.\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes along with other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", + "summary" : "Update an account holder", + "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the following object:\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes, as well as other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation:\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", "operationId" : "post-updateAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -2013,7 +2014,7 @@ "tags" : [ "Account holders" ], - "summary" : "Update payout or processing state.", + "summary" : "Update payout or processing state", "description" : "Disables or enables the processing or payout state of an account holder.", "operationId" : "post-updateAccountHolderState", "x-groupName" : "Account holders", @@ -2131,8 +2132,8 @@ "tags" : [ "Verification" ], - "summary" : "Upload a document.", - "description" : "Uploads a document for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).", + "summary" : "Upload a document", + "description" : "Uploads a document for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).", "operationId" : "post-uploadDocument", "x-groupName" : "Verification", "x-sortIndex" : 1, @@ -2591,7 +2592,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2885,7 +2887,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3221,6 +3223,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -3477,7 +3483,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3661,7 +3667,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -3766,11 +3772,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -4351,7 +4357,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ diff --git a/json/AccountService-v6.json b/json/AccountService-v6.json index 691b7a1..3d71883 100644 --- a/json/AccountService-v6.json +++ b/json/AccountService-v6.json @@ -9,7 +9,8 @@ "version" : "6", "x-publicVersion" : true, "title" : "Adyen for Platforms: Account API", - "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and KYC-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Account API, you must use basic authentication credentials of your web service user. If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder\n```", + "description" : "The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and verification-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder\n```", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -39,8 +40,8 @@ "tags" : [ "Verification" ], - "summary" : "Trigger verification.", - "description" : "Triggers the KYC verification for an account holder even if the checks are not yet required for the volume that they currently process.", + "summary" : "Trigger verification", + "description" : "Triggers the verification of an account holder even if the checks are not yet required for the volume that they are currently processing.", "x-addedInVersion" : "5", "operationId" : "post-checkAccountHolder", "x-groupName" : "Verification", @@ -158,8 +159,8 @@ "tags" : [ "Accounts" ], - "summary" : "Close an account.", - "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments will be directed to your liable account.", + "summary" : "Close an account", + "description" : "Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed account, the payments are sent to your liable account.", "operationId" : "post-closeAccount", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -276,8 +277,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** status,the payments will be directed to your liable account.", + "summary" : "Close an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), the payments are sent to your liable account.", "operationId" : "post-closeAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 7, @@ -394,8 +395,8 @@ "tags" : [ "Account holders" ], - "summary" : "Close stores.", - "description" : "Close one or more stores of the account holder.", + "summary" : "Close stores", + "description" : "Closes stores associated with an account holder.", "x-addedInVersion" : "5", "operationId" : "post-closeStores", "x-groupName" : "Account holders", @@ -498,7 +499,7 @@ "tags" : [ "Accounts" ], - "summary" : "Create a new account.", + "summary" : "Create an account", "description" : "Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts).", "operationId" : "post-createAccount", "x-groupName" : "Accounts", @@ -616,8 +617,8 @@ "tags" : [ "Account holders" ], - "summary" : "Create a new account holder.", - "description" : "Creates an account holder, which [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", + "summary" : "Create an account holder", + "description" : "Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types).", "operationId" : "post-createAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -727,8 +728,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete bank accounts.", - "description" : "Deletes one or more bank accounts of an account holder. ", + "summary" : "Delete bank accounts", + "description" : "Deletes bank accounts associated with an account holder. ", "operationId" : "post-deleteBankAccounts", "x-groupName" : "Verification", "x-sortIndex" : 4, @@ -845,8 +846,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete payout methods.", - "description" : "Deletes one or more payout methods of an account holder.", + "summary" : "Delete payout methods", + "description" : "Deletes payout methods associated with an account holder.", "x-addedInVersion" : "5", "operationId" : "post-deletePayoutMethods", "x-groupName" : "Verification", @@ -964,8 +965,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete shareholders.", - "description" : "Deletes one or more shareholders from an account holder.", + "summary" : "Delete shareholders", + "description" : "Deletes shareholders associated with an account holder.", "operationId" : "post-deleteShareholders", "x-groupName" : "Verification", "x-sortIndex" : 6, @@ -1082,8 +1083,8 @@ "tags" : [ "Verification" ], - "summary" : "Delete signatories.", - "description" : "Deletes one or more signatories from an account holder.", + "summary" : "Delete signatories", + "description" : "Deletes signatories associated with an account holder.", "operationId" : "post-deleteSignatories", "x-groupName" : "Verification", "x-sortIndex" : 7, @@ -1195,8 +1196,8 @@ "tags" : [ "Account holders" ], - "summary" : "Get an account holder.", - "description" : "Retrieves the details of an account holder.", + "summary" : "Get an account holder", + "description" : "Returns the details of an account holder.", "operationId" : "post-getAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -1316,7 +1317,7 @@ "tags" : [ "Account holders" ], - "summary" : "Get a tax form.", + "summary" : "Get a tax form", "description" : "Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms).", "operationId" : "post-getTaxForm", "x-groupName" : "Account holders", @@ -1424,8 +1425,8 @@ "tags" : [ "Verification" ], - "summary" : "Get documents.", - "description" : "Retrieves documents that were previously uploaded for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).\n", + "summary" : "Get documents", + "description" : "Returns documents that were previously uploaded for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).\n", "operationId" : "post-getUploadedDocuments", "x-groupName" : "Verification", "x-sortIndex" : 2, @@ -1532,7 +1533,7 @@ "tags" : [ "Account holders" ], - "summary" : "Suspend an account holder.", + "summary" : "Suspend an account holder", "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**.", "operationId" : "post-suspendAccountHolder", "x-groupName" : "Account holders", @@ -1650,8 +1651,8 @@ "tags" : [ "Account holders" ], - "summary" : "Unsuspend an account holder.", - "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. Account holders can have a **Suspended** status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a KYC deadline expires.\n\nYou can only unsuspend account holders if they _do not_ have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", + "summary" : "Unsuspend an account holder", + "description" : "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status) if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) endpoint or if a verification deadline expires.\n\nYou can only unsuspend account holders if they do not have verification checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).", "operationId" : "post-unSuspendAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 6, @@ -1768,7 +1769,7 @@ "tags" : [ "Accounts" ], - "summary" : "Update an account.", + "summary" : "Update an account", "description" : "Updates the description or payout schedule of an account.", "operationId" : "post-updateAccount", "x-groupName" : "Accounts", @@ -1886,8 +1887,8 @@ "tags" : [ "Account holders" ], - "summary" : "Update an account holder.", - "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the objects below.\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes along with other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", + "summary" : "Update an account holder", + "description" : "Updates the `accountHolderDetails` and `processingTier` of an account holder, and adds bank accounts and shareholders.\n\nWhen updating `accountHolderDetails`, parameters that are not included in the request are left unchanged except for the following object:\n\n* `metadata`: Updating the metadata replaces the entire object. This means that to update an existing key-value pair, you must provide the changes, as well as other existing key-value pairs.\n\nWhen updating any field in the following objects, you must submit all the fields required for validation:\n\n * `address`\n\n* `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\n For example, to update the `address.postalCode`, you must also submit the `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` so that the address can be validated.\n\nTo add a bank account or shareholder, provide the bank account or shareholder details without a `bankAccountUUID` or a `shareholderCode`.\n\n", "operationId" : "post-updateAccountHolder", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -2013,7 +2014,7 @@ "tags" : [ "Account holders" ], - "summary" : "Update payout or processing state.", + "summary" : "Update payout or processing state", "description" : "Disables or enables the processing or payout state of an account holder.", "operationId" : "post-updateAccountHolderState", "x-groupName" : "Account holders", @@ -2131,8 +2132,8 @@ "tags" : [ "Verification" ], - "summary" : "Upload a document.", - "description" : "Uploads a document for an account holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks).", + "summary" : "Upload a document", + "description" : "Uploads a document for an account holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process).", "operationId" : "post-uploadDocument", "x-groupName" : "Verification", "x-sortIndex" : 1, @@ -2599,7 +2600,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2917,7 +2919,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" }, "verificationProfile" : { "x-addedInVersion" : "6", @@ -3269,6 +3271,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -3527,7 +3533,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" }, "verificationProfile" : { "x-addedInVersion" : "6", @@ -3686,7 +3692,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -3866,11 +3872,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "legalArrangements" : { "x-addedInVersion" : "6", @@ -4621,7 +4627,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" }, "verificationProfile" : { "x-addedInVersion" : "6", diff --git a/json/BalancePlatformNotificationService-v1.json b/json/BalancePlatformNotificationService-v1.json index d2fd8b9..354f073 100644 --- a/json/BalancePlatformNotificationService-v1.json +++ b/json/BalancePlatformNotificationService-v1.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Balance Platform Notification Webhooks", "description" : "Adyen sends notifications through webhooks to inform your system about events that occur in the balance platform. These events include, for example, a card user making a payment, or a merchant starting a refund. \nWhen an event occurs, Adyen makes an HTTP POST request to a URL on your server and includes the details of the event in the request body.\n\nYou can use the webhooks to build your implementation. For example, you can use this information to update balances in your own dashboards or to keep track of incoming funds.\n\nRefer to [Notification webhooks](https://docs.adyen.com/issuing/notification-webhooks) for more information.", + "x-timestamp" : "2022-04-20T09:24:21Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -30,7 +31,7 @@ ], "summary" : "Account holder created", "description" : "Adyen sends this webhook when you successfully [create an account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders).", - "operationId" : "post-alancePlatform.accountHolder.created", + "operationId" : "post-balancePlatform.accountHolder.created", "x-groupName" : "Account holder and balance account", "x-sortIndex" : 5, "security" : [ @@ -69,7 +70,7 @@ ], "summary" : "Account holder updated", "description" : "Adyen sends this webhook when you successfully [update an account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/accountHolders/{id}).", - "operationId" : "post-alancePlatform.accountHolder.updated", + "operationId" : "post-balancePlatform.accountHolder.updated", "x-groupName" : "Account holder and balance account", "x-sortIndex" : 5, "security" : [ @@ -108,7 +109,7 @@ ], "summary" : "Balance account created", "description" : "Adyen sends this webhook when you successfully [create a balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts).", - "operationId" : "post-alancePlatform.balanceAccount.created", + "operationId" : "post-balancePlatform.balanceAccount.created", "x-groupName" : "Account holder and balance account", "x-sortIndex" : 5, "security" : [ @@ -140,6 +141,123 @@ } } }, + "balancePlatform.balanceAccountSweep.created" : { + "post" : { + "tags" : [ + "Account holder and balance account" + ], + "summary" : "Balance account sweep created", + "description" : "Adyen sends this webhook when you successfully [create a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts/{balanceAccountId}/sweeps).", + "operationId" : "post-balancePlatform.balanceAccountSweep.created", + "x-groupName" : "Account holder and balance account", + "x-sortIndex" : 6, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BalancePlatformNotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "balancePlatform.balanceAccountSweep.deleted" : { + "post" : { + "tags" : [ + "Account holder and balance account" + ], + "summary" : "Balance account sweep deleted", + "description" : "Adyen sends this webhook when you successfully [delete a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/delete/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}).", + "operationId" : "post-balancePlatform.balanceAccountSweep.deleted", + "x-groupName" : "Account holder and balance account", + "x-sortIndex" : 6, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BalancePlatformNotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "balancePlatform.balanceAccountSweep.updated" : { + "post" : { + "tags" : [ + "Account holder and balance account" + ], + "summary" : "Balance account sweep updated", + "description" : "Adyen sends this webhook when you successfully [update a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}).", + "operationId" : "post-balancePlatform.balanceAccountSweep.updated", + "x-groupName" : "Account holder and balance account", + "x-sortIndex" : 6, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BalancePlatformNotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, "balancePlatform.incomingTransfer.created" : { "post" : { "tags" : [ @@ -147,7 +265,8 @@ ], "summary" : "Incoming transfer created", "description" : "Adyen sends this webhook when there are incoming funds due to a refund or a fund transfer. Use the `paymentId` to link to the original refund request or funds transfer request. Check the content of the webhook to differentiate the events.\n\n* For refunds, the webhook includes the payment instrument to which funds will be refunded.\n\n* For incoming fund transfers, the webhook only includes information about the balance account.", - "operationId" : "post-alancePlatform.incomingTransfer.created", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.incomingTransfer.created", "x-groupName" : "Fund movements", "x-sortIndex" : 1, "security" : [ @@ -186,7 +305,8 @@ ], "summary" : "Outgoing transfer updated", "description" : "Adyen sends this webhook when funds were added to the balance account. This could be due to a refund or a funds transfer. Use the `data.id` to track the original incoming transfer resource in the `balancePlatform.incomingTransfer.created` webhook.\n\nThe `status` field indicates the event that triggered the webhook. \n\n* For refunds, the `status` is **Refunded**. \n\n* For incoming fund transfers, the `status` is **IncomingTransfer**.", - "operationId" : "post-alancePlatform.incomingTransfer.updated", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.incomingTransfer.updated", "x-groupName" : "Fund movements", "x-sortIndex" : 1, "security" : [ @@ -225,7 +345,8 @@ ], "summary" : "Outgoing transfer created", "description" : "Adyen sends this webhook when funds were deducted from a balance account due to a capture or a funds transfer. Use the `paymentId` to link to the original payment authorisation or funds transfer request.\n\nThe `status` field indicates the event that triggered the webhook. \n\n* For captures, the `status` will be **Captured**. \n\n* For outgoing fund transfers, the `status` will be **OutgoingTransfer**.", - "operationId" : "post-alancePlatform.outgoingTransfer.created", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.outgoingTransfer.created", "x-groupName" : "Fund movements", "x-sortIndex" : 1, "security" : [ @@ -264,7 +385,8 @@ ], "summary" : "Outgoing transfer updated", "description" : "Adyen sends this webhook when there is updated information after funds have been deducted from a balance account. For example, if the fund transfer failed.\n\nUse the `data.id` to track the original outgoing transfer resource from the `balancePlatform.outgoingTransfer.created` webhook.", - "operationId" : "post-alancePlatform.outgoingTransfer.updated", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.outgoingTransfer.updated", "x-groupName" : "Fund movements", "x-sortIndex" : 1, "security" : [ @@ -303,7 +425,8 @@ ], "summary" : "Payment authorisation, refund, or funds transfer initiated", "description" : "Adyen sends this webhook when a payment authorisation, a refund, or a funds transfer has been initiated. This webhook only informs your server of requests. For the actual fund movements, you'll get the information from the subsequent outgoing or incoming transfer webhooks.\n\n To differentiate the requests, check the content of the webhook.\n\n* For payments, the webhook contains the authorisation result, information about the processing merchant, and shows a negative amount.\n\n * For refunds, the webhook contains to which payment instrument the funds will be refunded, and shows a positive amount.\n\n* For outgoing or incoming fund transfers, the webhook shows a positive or negative amount depending on the direction of the transfer, and only includes information about the balance account.\n\nRefer to webhooks for [payment events](https://docs.adyen.com/issuing/notification-types/payment-events) and [fund transfers](https://docs.adyen.com/issuing/notification-types/fund-transfers-webhooks) for more information.", - "operationId" : "post-alancePlatform.payment.created", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.payment.created", "x-groupName" : "Authorisation, refund, or transfer requests", "x-sortIndex" : 1, "security" : [ @@ -342,7 +465,8 @@ ], "summary" : "Payment authorisation expired or cancelled", "description" : "Adyen sends this webhook when a payment authorisation has expired or has been cancelled. Use the `data.id` to track the original payment authorisation from the `balancePlatform.payment.created` webhook.", - "operationId" : "post-alancePlatform.payment.updated", + "x-addedInVersion" : "1", + "operationId" : "post-balancePlatform.payment.updated", "x-groupName" : "Authorisation, refund, or transfer requests", "x-sortIndex" : 1, "security" : [ @@ -381,7 +505,7 @@ ], "summary" : "Payment instrument created", "description" : "Adyen sends this webhook when you successfully [create a payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments). \n>The notification does not include the card number when creating virtual cards. You can only get the card number in the POST response.", - "operationId" : "post-alancePlatform.paymentInstrument.created", + "operationId" : "post-balancePlatform.paymentInstrument.created", "x-groupName" : "Payment Instrument", "x-sortIndex" : 3, "security" : [ @@ -420,7 +544,7 @@ ], "summary" : "Payment instrument updated", "description" : "Adyen sends this webhook when you successfully [update a payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/paymentInstruments/{id}). ", - "operationId" : "post-alancePlatform.paymentInstrument.updated", + "operationId" : "post-balancePlatform.paymentInstrument.updated", "x-groupName" : "Payment Instrument", "x-sortIndex" : 3, "security" : [ @@ -459,9 +583,9 @@ ], "summary" : "Report generated", "description" : "Adyen sends this webhook after a report is generated and ready to be downloaded. The webhook contains the URL at which the report can be downloaded.\n\nBefore you download reports, ask your Adyen contact for your report credentials. You must use your the credentials to authenticate your GET request.", - "operationId" : "post-alancePlatform.report.created", + "operationId" : "post-balancePlatform.report.created", "x-groupName" : "Reports", - "x-sortIndex" : 6, + "x-sortIndex" : 7, "security" : [ { "ApiKeyAuth" : [ @@ -504,7 +628,7 @@ "additionalProperties" : { "$ref" : "#/components/schemas/AccountHolderCapability" }, - "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing.The value is an object containing the settings for the capability.", + "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.", "type" : "object" }, "contactDetails" : { @@ -534,7 +658,7 @@ "type" : "string" }, "status" : { - "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", + "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This is the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", "enum" : [ "Active", "Closed", @@ -543,12 +667,9 @@ ], "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\n Sweep configurations on the account holder level applies to all of the account holder's balance accounts.\n\n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` must be specified in the request.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the account holder. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the balance account will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -627,10 +748,7 @@ "description" : "Unique identifier of the balance platform.", "type" : "string" } - }, - "required" : [ - "balancePlatform" - ] + } }, "AccountHolderNotificationRequest" : { "properties" : { @@ -657,7 +775,7 @@ "data" ] }, - "Address2" : { + "Address" : { "properties" : { "city" : { "description" : "The name of the city.", @@ -798,14 +916,24 @@ }, "status" : { "description" : "The status of the balance account, set to **Active** by default. \n", + "enum" : [ + "Active", + "Closed", + "Inactive", + "Suspended" + ], "type" : "string" }, "sweepConfigurations" : { "additionalProperties" : { "$ref" : "#/components/schemas/SweepConfiguration" }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nSweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) configurations.\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", + "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", "type" : "object" + }, + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -822,10 +950,7 @@ "description" : "Unique identifier of the balance platform.", "type" : "string" } - }, - "required" : [ - "balancePlatform" - ] + } }, "BalanceAccountNotificationRequest" : { "properties" : { @@ -852,28 +977,6 @@ "data" ] }, - "BalancePlatformNotificationData" : { - "properties" : { - "balancePlatform" : { - "description" : "Unique identifier of the balance platform.", - "type" : "string" - }, - "creationDate" : { - "description" : "Date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**.", - "format" : "date-time", - "type" : "string" - }, - "id" : { - "description" : "The ID of the resource.", - "type" : "string" - } - }, - "required" : [ - "balancePlatform", - "id", - "creationDate" - ] - }, "BalancePlatformNotificationResponse" : { "properties" : { "notificationResponse" : { @@ -882,11 +985,11 @@ } } }, - "BankAccountInfo2" : { + "BankAccountInfo" : { "properties" : { "address" : { "description" : "The address of the bank account owner.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "iban" : { "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard.", @@ -894,7 +997,7 @@ }, "ownerName" : { "description" : "The name of the bank account owner.", - "$ref" : "#/components/schemas/Name3" + "$ref" : "#/components/schemas/Name2" } } }, @@ -1129,7 +1232,7 @@ "properties" : { "address" : { "description" : "The address of the contact.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "email" : { "description" : "The e-mail address of the contact.", @@ -1141,7 +1244,7 @@ }, "name" : { "description" : "The name of the contact.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "personalData" : { "description" : "Personal data of the contact.", @@ -1149,7 +1252,7 @@ }, "phoneNumber" : { "description" : "The phone number of the contact.", - "$ref" : "#/components/schemas/PhoneNumber2" + "$ref" : "#/components/schemas/PhoneNumber" }, "webAddress" : { "description" : "The URL of the website of the contact.", @@ -1161,7 +1264,7 @@ "properties" : { "address" : { "description" : "The address of the account holder.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "email" : { "description" : "The email address of the account holder.", @@ -1190,7 +1293,7 @@ }, "bankAccount" : { "description" : "Contains information about the bank account.", - "$ref" : "#/components/schemas/BankAccountInfo2" + "$ref" : "#/components/schemas/BankAccountInfo" }, "merchant" : { "description" : "Contains information about the merchant.", @@ -1290,9 +1393,6 @@ } }, "required" : [ - "balancePlatform", - "id", - "creationDate", "counterparty" ] }, @@ -1364,7 +1464,7 @@ } } }, - "Name2" : { + "Name" : { "properties" : { "firstName" : { "description" : "The first name.", @@ -1380,7 +1480,7 @@ "lastName" ] }, - "Name3" : { + "Name2" : { "properties" : { "firstName" : { "description" : "The first name.", @@ -1536,9 +1636,6 @@ } }, "required" : [ - "balancePlatform", - "id", - "creationDate", "counterparty" ] }, @@ -1587,7 +1684,7 @@ "type" : "string" }, "issuingCountryCode" : { - "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the payment instrument is issued. For example, **NL**, **US**.", + "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the payment instrument is issued. For example, **NL** or **US**.", "type" : "string" }, "paymentInstrumentGroupId" : { @@ -1659,10 +1756,7 @@ "description" : "Contains information about the payment instrument resource that triggered the event.", "$ref" : "#/components/schemas/PaymentInstrument" } - }, - "required" : [ - "balancePlatform" - ] + } }, "PaymentInstrumentReference" : { "properties" : { @@ -1763,12 +1857,7 @@ }, "type" : "array" } - }, - "required" : [ - "balancePlatform", - "id", - "creationDate" - ] + } }, "PaymentNotificationRequest" : { "properties" : { @@ -1858,7 +1947,7 @@ "type" ] }, - "PhoneNumber2" : { + "PhoneNumber" : { "properties" : { "phoneCountryCode" : { "description" : "The two-character ISO-3166-1 alpha-2 country code of the phone number.\nFor example, **US** or **NL**.", @@ -1991,8 +2080,6 @@ } }, "required" : [ - "balancePlatform", - "creationDate", "fileName", "reportType", "downloadUrl" @@ -2022,6 +2109,23 @@ "data" ] }, + "Resource" : { + "properties" : { + "balancePlatform" : { + "description" : "Unique identifier of the balance platform.", + "type" : "string" + }, + "creationDate" : { + "description" : "Date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, + "id" : { + "description" : "The ID of the resource.", + "type" : "string" + } + } + }, "ResourceReference" : { "properties" : { "description" : { @@ -2041,7 +2145,11 @@ "SweepConfiguration" : { "properties" : { "balanceAccountId" : { - "description" : "The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) that will be the source or destination of the balance sweep. This can only be used for periodic sweep schedules such as `schedule.type` **daily** or **monthly**.", + "description" : "The unique identifier of the destination or source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\n You can only use this for periodic sweep schedules such as `schedule.type` **daily** or **monthly**.", + "type" : "string" + }, + "id" : { + "description" : "The unique identifier of the sweep.", "type" : "string" }, "merchantAccount" : { @@ -2052,6 +2160,24 @@ "description" : "The schedule when the `triggerAmount` is evaluated. If the balance meets the threshold, funds are pushed out of or pulled in to the balance account.", "$ref" : "#/components/schemas/SweepSchedule" }, + "status" : { + "x-enum" : [ + { + "description" : "The sweep is enabled and funds will be pulled in or pushed out based on the defined configuration", + "value" : "active" + }, + { + "description" : "The sweep is disabled and cannot be triggered.", + "value" : "inactive" + } + ], + "description" : "The status of the sweep. If not provided, by default, this is set to **active**.\n\nPossible values: \n\n * **active**: the sweep is enabled and funds will be pulled in or pushed out based on the defined configuration. \n\n * **inactive**: the sweep is disabled and cannot be triggered. \n\n", + "enum" : [ + "active", + "inactive" + ], + "type" : "string" + }, "sweepAmount" : { "description" : "The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both.", "$ref" : "#/components/schemas/Amount" @@ -2061,16 +2187,16 @@ "$ref" : "#/components/schemas/Amount" }, "transferInstrumentId" : { - "description" : "The unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id) that will be the source or destination of the balance sweep. This can be used for periodic or instant sweep schedules.\n\nIf specified in combination with a merchant account, it instructs a direct debit from this instrument for the configured merchant account.", + "description" : "The unique identifier of the destination or source [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).\n\nYou can also use this in combination with a `merchantAccount` and a `type` **pull** to start a direct debit request from the source transfer instrument. To use this feature, reach out to your Adyen contact.", "type" : "string" }, "triggerAmount" : { - "description" : "The threshold amount that triggers the sweep. If not specified, the amount defaults to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.", + "description" : "The threshold amount that triggers the sweep. If not provided, by default, the amount is set to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.", "$ref" : "#/components/schemas/Amount" }, "type" : { "default" : "push", - "description" : "The direction of sweep.\n\nPossible values:\n\n * **push**: _Push funds out_ to a destination balance account or transfer instrument.\n\n * **pull**: _Pull funds in_ from a source merchant account, transfer instrument, or balance account. ", + "description" : "The direction of sweep, whether pushing out or pulling in funds to the balance account. If not provided, by default, this is set to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to a destination balance account or transfer instrument.\n\n * **pull**: _pull in funds_ from a source merchant account, transfer instrument, or balance account.", "enum" : [ "pull", "push" @@ -2079,14 +2205,137 @@ } }, "required" : [ - "schedule", - "type" + "id", + "schedule" ] }, + "SweepConfigurationNotificationData" : { + "properties" : { + "accountId" : { + "description" : "The unique identifier of the balance account for which the sweep was configured.", + "type" : "string" + }, + "balancePlatform" : { + "description" : "Unique identifier of the balance platform.", + "type" : "string" + }, + "sweep" : { + "description" : "Contains information about the sweep resource that triggered the event.", + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + }, + "SweepConfigurationNotificationRequest" : { + "properties" : { + "data" : { + "description" : "Contains event details.", + "$ref" : "#/components/schemas/SweepConfigurationNotificationData" + }, + "environment" : { + "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.", + "type" : "string" + }, + "type" : { + "description" : "Type of notification.", + "enum" : [ + "balancePlatform.balanceAccountSweep.created", + "balancePlatform.balanceAccountSweep.updated", + "balancePlatform.balanceAccountSweep.deleted" + ], + "type" : "string" + } + }, + "required" : [ + "environment", + "type", + "data" + ] + }, + "SweepConfigurationV2" : { + "properties" : { + "counterparty" : { + "description" : "The destination or the source of the funds, depending on the `type`.\n\nEither a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` is required.", + "$ref" : "#/components/schemas/SweepCounterparty" + }, + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**.\n\nThe sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).", + "type" : "string" + }, + "id" : { + "description" : "The unique identifier of the sweep.", + "type" : "string" + }, + "schedule" : { + "description" : "The schedule when the `triggerAmount` is evaluated. If the balance meets the threshold, funds are pushed out of or pulled in to the balance account.", + "$ref" : "#/components/schemas/SweepSchedule" + }, + "status" : { + "x-enum" : [ + { + "description" : "The sweep is enabled and funds will be pulled in or pushed out based on the defined configuration", + "value" : "active" + }, + { + "description" : "The sweep is disabled and cannot be triggered.", + "value" : "inactive" + } + ], + "description" : "The status of the sweep. If not provided, by default, this is set to **active**.\n\nPossible values: \n\n * **active**: the sweep is enabled and funds will be pulled in or pushed out based on the defined configuration. \n\n * **inactive**: the sweep is disabled and cannot be triggered. \n\n", + "enum" : [ + "active", + "inactive" + ], + "type" : "string" + }, + "sweepAmount" : { + "description" : "The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both.", + "$ref" : "#/components/schemas/Amount" + }, + "targetAmount" : { + "description" : "The amount that must be available in the balance account after the sweep. You can configure either `sweepAmount` or `targetAmount`, not both.", + "$ref" : "#/components/schemas/Amount" + }, + "triggerAmount" : { + "description" : "The threshold amount that triggers the sweep. If not provided, by default, the amount is set to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.", + "$ref" : "#/components/schemas/Amount" + }, + "type" : { + "default" : "push", + "description" : "The direction of sweep, whether pushing out or pulling in funds to the balance account. If not provided, by default, this is set to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to a destination balance account or transfer instrument.\n\n * **pull**: _pull in funds_ from a source merchant account, transfer instrument, or balance account.", + "enum" : [ + "pull", + "push" + ], + "type" : "string" + } + }, + "required" : [ + "id", + "schedule", + "currency", + "counterparty" + ] + }, + "SweepCounterparty" : { + "properties" : { + "balanceAccountId" : { + "description" : "The unique identifier of the destination or source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\n You can only use this for periodic sweep schedules such as `schedule.type` **daily** or **monthly**.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account that will be the source of funds, if you are processing payments with Adyen. You can only use this with sweeps of `type` **pull** and `schedule.type` **balance**.", + "type" : "string" + }, + "transferInstrumentId" : { + "description" : "The unique identifier of the destination or source [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).\n\nYou can also use this in combination with a `merchantAccount` and a `type` **pull** to start a direct debit request from the source transfer instrument. To use this feature, reach out to your Adyen contact.", + "type" : "string" + } + } + }, "SweepSchedule" : { "properties" : { "type" : { - "description" : "The schedule type.\n\nPossible values:\n\n* **daily**: Push out funds daily at 07:00 AM CET.\n\n* **weekly**: Push out funds every Monday at 07:00 AM CET.\n\n* **monthly**: Push out funds every 1st of the month at 07:00 AM CET.\n\n* **balance**: Only for sweeps of `type` **pull** and with a `merchantAccount` or `transferInstrument` source. Pull in funds instantly if the balance is less than or equal to the `triggerAmount`.", + "description" : "The schedule type.\n\nPossible values:\n\n* **daily**: push out funds daily at 07:00 AM CET.\n\n* **weekly**: push out funds every Monday at 07:00 AM CET.\n\n* **monthly**: push out funds every first of the month at 07:00 AM CET.\n\n* **balance**: pull in funds instantly if the balance is less than or equal to the `triggerAmount`. You can only use this for sweeps of `type` **pull** and when the source is a `merchantAccount` or `transferInstrument`.", "enum" : [ "balance", "daily", @@ -2220,9 +2469,6 @@ } }, "required" : [ - "balancePlatform", - "id", - "creationDate", "counterparty" ] }, diff --git a/json/BalancePlatformService-v1.json b/json/BalancePlatformService-v1.json index 8139792..abe88c1 100644 --- a/json/BalancePlatformService-v1.json +++ b/json/BalancePlatformService-v1.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Balance Platform Configuration API", "description" : "The Balance Platform Configuration API enables you to create a platform where you can onboard users as account holders and create balance accounts, cards, and bank accounts.\n\nFor information about use cases, refer to [Adyen Issuing](https://docs.adyen.com/issuing).\n\n ## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\":\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Versioning\nThe Balance Platform Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/bcl/v1\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the API key or the username and password to send requests to `https://balanceplatform-api-live.adyen.com/bcl/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-03-22T19:59:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -72,11 +73,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -201,11 +202,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -325,11 +326,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -465,11 +466,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -611,11 +612,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -740,11 +741,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -864,11 +865,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -994,11 +995,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -1140,11 +1141,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -1266,11 +1267,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -2092,11 +2093,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -2221,11 +2222,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -2347,11 +2348,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -2473,11 +2474,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -2605,11 +2606,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -2729,11 +2730,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -2875,11 +2876,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -2993,7 +2994,7 @@ "Transaction rules" ], "summary" : "Create a transaction rule", - "description" : "Creates a transaction rule to define conditions for automatically approving or denying transactions. You can apply transaction rules to a specific payment instrument, a group of payment instruments, or to all the payment instruments in your balance platform.\n\nFor more information on how you can set conditions, refer to [Transaction rules](https://docs.adyen.com/issuing/transaction-rules).", + "description" : "Creates a [transaction rule](https://docs.adyen.com/issuing/transaction-rules). When your user makes a transaction with their Adyen-issued card, the transaction is allowed or declined based on the conditions and outcome defined in the transaction rule. You can apply the transaction rule to several cards, such as all the cards in your balance platform, or to a specific card.\n\nFor use cases, see [examples](https://docs.adyen.com/issuing/transaction-rules/examples).", "x-addedInVersion" : "1", "operationId" : "post-transactionRules", "x-groupName" : "Transaction rules", @@ -3001,11 +3002,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -3130,11 +3131,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -3254,11 +3255,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "parameters" : [ @@ -3378,11 +3379,11 @@ "security" : [ { "BasicAuth" : [ - ] + ] }, { "ApiKeyAuth" : [ - ] + ] } ], "requestBody" : { @@ -3904,7 +3905,7 @@ "additionalProperties" : { "$ref" : "#/components/schemas/AccountHolderCapability" }, - "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing.The value is an object containing the settings for the capability.", + "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.", "type" : "object" }, "contactDetails" : { @@ -3918,6 +3919,7 @@ }, "id" : { "description" : "The unique identifier of the account holder.", + "readOnly" : true, "type" : "string" }, "legalEntityId" : { @@ -3934,7 +3936,7 @@ "type" : "string" }, "status" : { - "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", + "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This is the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", "enum" : [ "Active", "Closed", @@ -3943,12 +3945,9 @@ ], "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\n Sweep configurations on the account holder level applies to all of the account holder's balance accounts.\n\n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` must be specified in the request.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the account holder. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the balance account will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -4029,6 +4028,13 @@ "description" : "The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id) to which the account holder belongs. Required in the request if your API credentials can be used for multiple balance platforms.", "type" : "string" }, + "capabilities" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/AccountHolderCapability" + }, + "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.", + "type" : "object" + }, "contactDetails" : { "description" : "Contact details of the account holder.", "$ref" : "#/components/schemas/ContactDetails" @@ -4047,49 +4053,15 @@ "maxLength" : 150, "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\n Sweep configurations on the account holder level applies to all of the account holder's balance accounts.\n\n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` must be specified in the request.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the account holder. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the balance account will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ "legalEntityId" ] }, - "Address" : { - "properties" : { - "city" : { - "description" : "The name of the city. Required if `stateOrProvince` is provided.\n\nIf you specify the city, you must also send `postalCode` and `street`.", - "type" : "string" - }, - "country" : { - "description" : "The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code.", - "type" : "string" - }, - "postalCode" : { - "description" : "Postal code. Required if `stateOrProvince` and/or `city` is provided.", - "type" : "string" - }, - "stateOrProvince" : { - "description" : "The two-letter ISO 3166-2 state or province code. For example, **CA** in the US. \n\nIf you specify the state or province, you must also send `city`, `postalCode`, and `street`.", - "type" : "string" - }, - "street" : { - "description" : "The name of the street, and the house or building number. Required if `stateOrProvince` and/or `city` is provided.", - "type" : "string" - }, - "street2" : { - "description" : "The apartment, unit, or suite number.", - "type" : "string" - } - }, - "required" : [ - "country" - ] - }, "Address2" : { "properties" : { "city" : { @@ -4259,14 +4231,24 @@ }, "status" : { "description" : "The status of the balance account, set to **Active** by default. \n", + "enum" : [ + "Active", + "Closed", + "Inactive", + "Suspended" + ], "type" : "string" }, "sweepConfigurations" : { "additionalProperties" : { "$ref" : "#/components/schemas/SweepConfiguration" }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nSweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) configurations.\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", + "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", "type" : "object" + }, + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -4298,8 +4280,12 @@ "additionalProperties" : { "$ref" : "#/components/schemas/SweepConfiguration" }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nSweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) configurations.\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", + "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", "type" : "object" + }, + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -4312,11 +4298,20 @@ "description" : "The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id) associated with the balance account.", "type" : "string" }, + "defaultCurrencyCode" : { + "description" : "The default currency code of this balance account, in three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) format. \nThe default value is **EUR**.", + "type" : "string" + }, "description" : { "description" : "A human-readable description of the balance account, maximum 300 characters. You can use this parameter to distinguish between multiple balance accounts under an account holder.", "maxLength" : 300, "type" : "string" }, + "reference" : { + "description" : "Your reference to the balance account, maximum 150 characters.", + "maxLength" : 150, + "type" : "string" + }, "status" : { "description" : "The status of the balance account. Payment instruments linked to the balance account can only be used if the balance account status is **Active**.\n\nPossible values: **Active**, **Inactive**, **Closed**, **Suspended**.", "enum" : [ @@ -4331,8 +4326,12 @@ "additionalProperties" : { "$ref" : "#/components/schemas/SweepConfiguration" }, - "description" : "Contains key-value pairs that specify [balance sweep configuration per currency code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\nYou can update the balance account to add, update, or delete configurations.\n\n* To add a configuration, send the currency code as a key and the configuration as the object.\n\n * To update a configuration, send the whole configuration with your updates.\n\n* To delete a configuration, set the value to **null**. For example, `\"EUR\": null`.", + "description" : "Contains key-value pairs that specify [balance sweep per currency code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\nYou can update the balance account to add, update, or delete sweeps.\n\n* To add a sweep, send the currency code as a key and the configuration as the object.\n\n * To update a sweep, send the whole configuration with your updates.\n\n* To delete a sweep, set the value to **null**. For example, `\"EUR\": null`.", "type" : "object" + }, + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } } }, @@ -4515,7 +4514,7 @@ } }, "required" : [ - ] + ] }, "Card" : { "properties" : { @@ -5874,7 +5873,7 @@ "type" : "string" }, "endDate" : { - "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the rule will be evaluated until the rule status is set to **inactive**.", + "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided, the rule will be evaluated until the rule status is set to **inactive**.", "type" : "string" }, "entryModes" : { @@ -5901,7 +5900,7 @@ "type" : "string" }, "interval" : { - "description" : "The interval when the rule conditions must be applied.", + "description" : "The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) when the rule conditions apply.", "$ref" : "#/components/schemas/TransactionRuleInterval" }, "maxTransactions" : { @@ -6018,7 +6017,7 @@ "type" : "string" }, "endDate" : { - "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the rule will be evaluated until the rule status is set to **inactive**.", + "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided, the rule will be evaluated until the rule status is set to **inactive**.", "type" : "string" }, "entryModes" : { @@ -6041,7 +6040,7 @@ "type" : "array" }, "interval" : { - "description" : "The interval when the rule conditions must be applied.", + "description" : "The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) when the rule conditions apply.", "$ref" : "#/components/schemas/TransactionRuleInterval" }, "maxTransactions" : { @@ -6138,7 +6137,7 @@ "TransactionRuleInterval" : { "properties" : { "type" : { - "description" : "Defines the period during which the rule conditions and limits apply, and how often the amount and transaction counters are reset.\n\nPossible values:\n * **perTransaction**: The conditions are evaluated and the counters are reset for every transaction.\n * **daily**: The counters are reset daily at 00:00:00 UTC.\n * **weekly**: The counters are reset every Monday at 00:00:00 UTC. \n * **monthly**: The counters reset every 1st day of the month at 00:00:00 UTC. \n * **lifetime**: The conditions and limits apply to the lifetime of the payment instrument.", + "description" : "The [type of interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) during which the rule conditions and limits apply, and how often counters are reset.\n\nPossible values:\n * **perTransaction**: conditions are evaluated and the counters are reset for every transaction.\n * **daily**: the counters are reset daily at 00:00:00 UTC.\n * **weekly**: the counters are reset every Monday at 00:00:00 UTC. \n * **monthly**: the counters reset every first day of the month at 00:00:00 UTC. \n * **lifetime**: conditions are applied to the lifetime of the payment instrument.\n", "enum" : [ "daily", "lifetime", @@ -6247,7 +6246,8 @@ "description" : "The type of error.\n\n Possible values: **invalidInput**, **dataMissing**.", "enum" : [ "dataMissing", - "invalidInput" + "invalidInput", + "pendingStatus" ], "type" : "string" } @@ -6267,7 +6267,8 @@ "description" : "The type of error.\n\n Possible values: **invalidInput**, **dataMissing**.", "enum" : [ "dataMissing", - "invalidInput" + "invalidInput", + "pendingStatus" ], "type" : "string" }, diff --git a/json/BalancePlatformService-v2.json b/json/BalancePlatformService-v2.json index 58f4f5c..eb118d2 100644 --- a/json/BalancePlatformService-v2.json +++ b/json/BalancePlatformService-v2.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Balance Platform Configuration API", "description" : "The Balance Platform Configuration API enables you to create a platform where you can onboard users as account holders and create balance accounts, cards, and bank accounts.\n\nFor information about use cases, refer to [Adyen Issuing](https://docs.adyen.com/issuing).\n\n ## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\":\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Versioning\nThe Balance Platform Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/bcl/v1\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the API key or the username and password to send requests to `https://balanceplatform-api-live.adyen.com/bcl/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-05-06T17:19:23Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -86,8 +87,8 @@ "content" : { "application/json" : { "examples" : { - "success" : { - "$ref" : "#/components/examples/post-accountHolders-success-200" + "createAccountHolder" : { + "$ref" : "#/components/examples/post-accountHolders-createAccountHolder-200" } }, "schema" : { @@ -625,8 +626,8 @@ "content" : { "application/json" : { "examples" : { - "success" : { - "$ref" : "#/components/examples/post-balanceAccounts-success-200" + "createBalanceAccount" : { + "$ref" : "#/components/examples/post-balanceAccounts-createBalanceAccount-200" } }, "schema" : { @@ -714,6 +715,699 @@ } } }, + "/balanceAccounts/{balanceAccountId}/sweeps" : { + "get" : { + "tags" : [ + "Balance accounts" + ], + "summary" : "Get all sweeps for a balance account", + "description" : "Returns a list of the sweeps configured for a balance account.\n\nTo fetch multiple pages, use the query parameters. For example, to limit the page to 5 sweeps and to skip the first 10, use `/balanceAccounts/{balanceAccountId}/sweeps?limit=5&offset=10`.", + "x-addedInVersion" : "2", + "operationId" : "get-balanceAccounts-balanceAccountId-sweeps", + "x-groupName" : "Balance accounts", + "x-sortIndex" : 7, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the balance account.", + "name" : "balanceAccountId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The number of items that you want to skip.", + "name" : "offset", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, + { + "description" : "The number of items returned per page, maximum 100 items. By default, the response returns 10 items per page.", + "name" : "limit", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-balanceAccounts-balanceAccountId-sweeps-success-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/BalanceSweepConfigurationsResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "post" : { + "tags" : [ + "Balance accounts" + ], + "summary" : "Create a sweep", + "description" : "Creates a sweep that results in moving funds from or to a balance account.\n\nA sweep pulls in or pushes out funds based on a defined schedule, amount, currency, and a source or a destination.", + "x-addedInVersion" : "2", + "operationId" : "post-balanceAccounts-balanceAccountId-sweeps", + "x-groupName" : "Balance accounts", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "createSweep-pull" : { + "$ref" : "#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull" + }, + "createSweep-push" : { + "$ref" : "#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push" + } + }, + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the balance account.", + "name" : "balanceAccountId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "createSweep-pull" : { + "$ref" : "#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull-200" + }, + "createSweep-push" : { + "$ref" : "#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}" : { + "delete" : { + "tags" : [ + "Balance accounts" + ], + "summary" : "Delete a sweep", + "description" : "Deletes a sweep for a balance account.", + "x-addedInVersion" : "2", + "operationId" : "delete-balanceAccounts-balanceAccountId-sweeps-sweepId", + "x-groupName" : "Balance accounts", + "x-sortIndex" : 9, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the balance account.", + "name" : "balanceAccountId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the sweep.", + "name" : "sweepId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "get" : { + "tags" : [ + "Balance accounts" + ], + "summary" : "Get a sweep", + "description" : "Returns a sweep.", + "x-addedInVersion" : "2", + "operationId" : "get-balanceAccounts-balanceAccountId-sweeps-sweepId", + "x-groupName" : "Balance accounts", + "x-sortIndex" : 8, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the balance account.", + "name" : "balanceAccountId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the sweep.", + "name" : "sweepId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-balanceAccounts-balanceAccountId-sweeps-sweepId-success-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Balance accounts" + ], + "summary" : "Update a sweep", + "description" : "Updates a sweep. When updating a sweep resource, note that if a request parameter is not provided, the parameter is left unchanged.", + "x-addedInVersion" : "2", + "operationId" : "patch-balanceAccounts-balanceAccountId-sweeps-sweepId", + "x-groupName" : "Balance accounts", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "updateSweep-status" : { + "$ref" : "#/components/examples/patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status" + } + }, + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the balance account.", + "name" : "balanceAccountId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the sweep.", + "name" : "sweepId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "updateSweep-status" : { + "$ref" : "#/components/examples/patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/balanceAccounts/{id}" : { "get" : { "tags" : [ @@ -2077,8 +2771,11 @@ "content" : { "application/json" : { "examples" : { - "success" : { - "$ref" : "#/components/examples/patch-paymentInstruments-id-success-200" + "updatePaymentInstrumentBalanceAccount" : { + "$ref" : "#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200" + }, + "updatePaymentInstrumentStatus" : { + "$ref" : "#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentStatus-200" } }, "schema" : { @@ -2139,9 +2836,6 @@ "examples" : { "generic" : { "$ref" : "#/components/examples/generic-422" - }, - "invalidData" : { - "$ref" : "#/components/examples/patch-paymentInstruments-id-invalidData-422" } }, "schema" : { @@ -2301,7 +2995,7 @@ "Transaction rules" ], "summary" : "Create a transaction rule", - "description" : "Creates a transaction rule to define conditions for automatically approving or denying transactions. You can apply transaction rules to a specific payment instrument, a group of payment instruments, or to all the payment instruments in your balance platform.\n\nFor more information on how you can set conditions, refer to [Transaction rules](https://docs.adyen.com/issuing/transaction-rules).", + "description" : "Creates a [transaction rule](https://docs.adyen.com/issuing/transaction-rules). When your user makes a transaction with their Adyen-issued card, the transaction is allowed or declined based on the conditions and outcome defined in the transaction rule. You can apply the transaction rule to several cards, such as all the cards in your balance platform, or to a specific card.\n\nFor use cases, see [examples](https://docs.adyen.com/issuing/transaction-rules/examples).", "x-addedInVersion" : "1", "operationId" : "post-transactionRules", "x-groupName" : "Transaction rules", @@ -2320,8 +3014,17 @@ "content" : { "application/json" : { "examples" : { - "createTransactionRule" : { - "$ref" : "#/components/examples/post-transactionRules-createTransactionRule" + "createTransactionRuleAllowPos" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleAllowPos" + }, + "createTransactionRuleIncreaseScore" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleIncreaseScore" + }, + "createTransactionRuleLimitSliding" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleLimitSliding" + }, + "createTransactionRuleLimitTransaction" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleLimitTransaction" } }, "schema" : { @@ -2335,8 +3038,17 @@ "content" : { "application/json" : { "examples" : { - "success" : { - "$ref" : "#/components/examples/post-transactionRules-success-200" + "createTransactionRuleAllowPos" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleAllowPos-200" + }, + "createTransactionRuleIncreaseScore" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleIncreaseScore-200" + }, + "createTransactionRuleLimitSliding" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleLimitSliding-200" + }, + "createTransactionRuleLimitTransaction" : { + "$ref" : "#/components/examples/post-transactionRules-createTransactionRuleLimitTransaction-200" } }, "schema" : { @@ -2825,7 +3537,7 @@ "additionalProperties" : { "$ref" : "#/components/schemas/AccountHolderCapability" }, - "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing.The value is an object containing the settings for the capability.", + "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.", "type" : "object" }, "contactDetails" : { @@ -2839,6 +3551,7 @@ }, "id" : { "description" : "The unique identifier of the account holder.", + "readOnly" : true, "type" : "string" }, "legalEntityId" : { @@ -2855,7 +3568,7 @@ "type" : "string" }, "status" : { - "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", + "description" : "The status of the account holder.\n\nPossible values: \n\n * **Active**: The account holder is active. This is the default status when creating an account holder. \n\n * **Suspended**: The account holder is temporarily suspended. You can set the account back to active or close it permanently. \n\n* **Closed**: The account holder is permanently deactivated. This action cannot be undone.", "enum" : [ "active", "closed", @@ -2864,12 +3577,9 @@ ], "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\n Sweep configurations on the account holder level applies to all of the account holder's balance accounts.\n\n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` must be specified in the request.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the account holder. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the balance account will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -2900,11 +3610,6 @@ "readOnly" : true, "$ref" : "#/components/schemas/JSONObject" }, - "deadline" : { - "description" : "Contains capability deadline date and corresponding action to be taken at this date.", - "readOnly" : true, - "$ref" : "#/components/schemas/CapabilityDeadline" - }, "enabled" : { "description" : "Indicates whether the capability is enabled. If **false**, the capability is temporarily disabled for the account holder.", "type" : "boolean" @@ -2955,6 +3660,13 @@ "description" : "The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id) to which the account holder belongs. Required in the request if your API credentials can be used for multiple balance platforms.", "type" : "string" }, + "capabilities" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/AccountHolderCapability" + }, + "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.", + "type" : "object" + }, "contactDetails" : { "description" : "Contact details of the account holder.", "$ref" : "#/components/schemas/ContactDetails" @@ -2973,22 +3685,36 @@ "maxLength" : 150, "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\n Sweep configurations on the account holder level applies to all of the account holder's balance accounts.\n\n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` must be specified in the request.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the account holder. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the balance account will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ "legalEntityId" ] }, - "Address2" : { + "ActiveNetworkTokensRestriction" : { + "properties" : { + "operation" : { + "description" : "Defines how the condition must be evaluated.", + "type" : "string" + }, + "value" : { + "description" : "The number of tokens.", + "format" : "int32", + "type" : "integer" + } + }, + "required" : [ + "operation" + ] + }, + "Address" : { "properties" : { "city" : { - "description" : "The name of the city. ", + "description" : "The name of the city. Maximum length: 3000 characters.", + "maxLength" : 3000, "type" : "string" }, "country" : { @@ -2996,7 +3722,8 @@ "type" : "string" }, "houseNumberOrName" : { - "description" : "The number or name of the house. ", + "description" : "The number or name of the house. Maximum length: 3000 characters.", + "maxLength" : 3000, "type" : "string" }, "postalCode" : { @@ -3008,7 +3735,8 @@ "type" : "string" }, "street" : { - "description" : "The name of the street. \n> The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.", + "description" : "The name of the street. Maximum length: 3000 characters.\n> The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.", + "maxLength" : 3000, "type" : "string" } }, @@ -3020,7 +3748,7 @@ "country" ] }, - "Address3" : { + "Address2" : { "properties" : { "city" : { "description" : "The name of the city.", @@ -3153,15 +3881,18 @@ "type" : "string" }, "status" : { - "description" : "The status of the balance account, set to **Active** by default. \n", + "description" : "The status of the balance account, set to **active** by default. \n", + "enum" : [ + "active", + "closed", + "inactive", + "suspended" + ], "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nSweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) configurations.\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -3189,12 +3920,9 @@ "maxLength" : 150, "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify configurations for balance sweeps per currency code. A sweep pulls in or pushes out funds based on a defined schedule, amount, and a source (for pulling funds) or a destination (for pushing funds).\n\nSweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) configurations.\n\nThe key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } }, "required" : [ @@ -3207,27 +3935,33 @@ "description" : "The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id) associated with the balance account.", "type" : "string" }, + "defaultCurrencyCode" : { + "description" : "The default currency code of this balance account, in three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) format. \nThe default value is **EUR**.", + "type" : "string" + }, "description" : { "description" : "A human-readable description of the balance account, maximum 300 characters. You can use this parameter to distinguish between multiple balance accounts under an account holder.", "maxLength" : 300, "type" : "string" }, + "reference" : { + "description" : "Your reference to the balance account, maximum 150 characters.", + "maxLength" : 150, + "type" : "string" + }, "status" : { - "description" : "The status of the balance account. Payment instruments linked to the balance account can only be used if the balance account status is **Active**.\n\nPossible values: **Active**, **Inactive**, **Closed**, **Suspended**.", + "description" : "The status of the balance account. Payment instruments linked to the balance account can only be used if the balance account status is **active**.\n\nPossible values: **active**, **inactive**, **closed**, **suspended**.", "enum" : [ - "Active", - "Closed", - "Inactive", - "Suspended" + "active", + "closed", + "inactive", + "suspended" ], "type" : "string" }, - "sweepConfigurations" : { - "additionalProperties" : { - "$ref" : "#/components/schemas/SweepConfiguration" - }, - "description" : "Contains key-value pairs that specify [balance sweep configuration per currency code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\nYou can update the balance account to add, update, or delete configurations.\n\n* To add a configuration, send the currency code as a key and the configuration as the object.\n\n * To update a configuration, send the whole configuration with your updates.\n\n* To delete a configuration, set the value to **null**. For example, `\"EUR\": null`.", - "type" : "object" + "timeZone" : { + "description" : "The [time zone](https://www.iana.org/time-zones) of the balance account. For example, **Europe/Amsterdam**.\nIf not set, the time zone of the account holder will be used. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).", + "type" : "string" } } }, @@ -3251,6 +3985,30 @@ "id" ] }, + "BalanceSweepConfigurationsResponse" : { + "properties" : { + "hasNext" : { + "description" : "Indicates whether there are more items on the next page.", + "type" : "boolean" + }, + "hasPrevious" : { + "description" : "Indicates whether there are more items on the previous page.", + "type" : "boolean" + }, + "sweeps" : { + "description" : "List of sweeps associated with the balance account.", + "items" : { + "$ref" : "#/components/schemas/SweepConfigurationV2" + }, + "type" : "array" + } + }, + "required" : [ + "sweeps", + "hasPrevious", + "hasNext" + ] + }, "BrandVariantsRestriction" : { "properties" : { "operation" : { @@ -3312,21 +4070,6 @@ "country" ] }, - "CapabilityDeadline" : { - "properties" : { - "action" : { - "description" : "Action that will be executed at executesAt date", - "enum" : [ - "deactivateAccount" - ], - "type" : "string" - }, - "executesAt" : { - "description" : "Capability deadline date. The date is in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", - "type" : "string" - } - } - }, "CapabilityProblem" : { "properties" : { "entity" : { @@ -3562,7 +4305,7 @@ "properties" : { "address" : { "description" : "The address of the account holder.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "email" : { "description" : "The email address of the account holder.", @@ -3605,7 +4348,7 @@ "properties" : { "address" : { "description" : "The address of the contact.", - "$ref" : "#/components/schemas/Address3" + "$ref" : "#/components/schemas/Address2" }, "email" : { "description" : "The email address of the contact.", @@ -3617,11 +4360,11 @@ }, "name" : { "description" : "The name of the contact.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "phoneNumber" : { "description" : "The phone number of the contact.", - "$ref" : "#/components/schemas/PhoneNumber2" + "$ref" : "#/components/schemas/PhoneNumber" }, "webAddress" : { "description" : "The URL of the contact's website.", @@ -3644,6 +4387,26 @@ "operation" ] }, + "Duration" : { + "properties" : { + "unit" : { + "description" : "The unit of time. You can only use **minutes** and **hours** if the `interval.type` is **sliding**.\n\nPossible values: **minutes**, **hours**, **days**, **weeks**, or **months**", + "enum" : [ + "days", + "hours", + "minutes", + "months", + "weeks" + ], + "type" : "string" + }, + "value" : { + "description" : "The length of time by the unit. For example, 5 days.\n\nThe maximum duration is 90 days or an equivalent in other units. For example, 3 months.", + "format" : "int32", + "type" : "integer" + } + } + }, "EntryModesRestriction" : { "properties" : { "operation" : { @@ -3809,7 +4572,7 @@ "operation" ] }, - "Name2" : { + "Name" : { "properties" : { "firstName" : { "description" : "The first name.", @@ -3931,14 +4694,6 @@ }, "status" : { "x-enum" : [ - { - "description" : "The payment instrument is suspended. Either because it was stolen or lost.", - "value" : "blocked" - }, - { - "description" : "The payment instrument is permanently closed. This action cannot be undone.", - "value" : "discarded" - }, { "description" : "The payment instrument is active and can be used to make payments.", "value" : "active" @@ -3959,9 +4714,7 @@ "description" : "The status of the payment instrument. If a status is not specified when creating a payment instrument, it is set to **active** by default. However, there can be exceptions based on the `card.formFactor` and the `issuingCountryCode`. For example, when issuing physical cards in the US, the default status is **inactive**.\n\nPossible values: \n\n * **active**: The payment instrument is active and can be used to make payments. \n\n * **inactive**: The payment instrument is inactive and cannot be used to make payments. \n\n * **suspended**: The payment instrument is suspended, either because it was stolen or lost. \n\n * **closed**: The payment instrument is permanently closed. This action cannot be undone. \n\n", "enum" : [ "active", - "blocked", "closed", - "discarded", "inactive", "suspended" ], @@ -4097,14 +4850,6 @@ }, "status" : { "x-enum" : [ - { - "description" : "The payment instrument is suspended. Either because it was stolen or lost.", - "value" : "blocked" - }, - { - "description" : "The payment instrument is permanently closed. This action cannot be undone.", - "value" : "discarded" - }, { "description" : "The payment instrument is active and can be used to make payments.", "value" : "active" @@ -4125,9 +4870,7 @@ "description" : "The status of the payment instrument. If a status is not specified when creating a payment instrument, it is set to **active** by default. However, there can be exceptions based on the `card.formFactor` and the `issuingCountryCode`. For example, when issuing physical cards in the US, the default status is **inactive**.\n\nPossible values: \n\n * **active**: The payment instrument is active and can be used to make payments. \n\n * **inactive**: The payment instrument is inactive and cannot be used to make payments. \n\n * **suspended**: The payment instrument is suspended, either because it was stolen or lost. \n\n * **closed**: The payment instrument is permanently closed. This action cannot be undone. \n\n", "enum" : [ "active", - "blocked", "closed", - "discarded", "inactive", "suspended" ], @@ -4174,14 +4917,6 @@ }, "status" : { "x-enum" : [ - { - "description" : "The payment instrument is suspended. Either because it was stolen or lost.", - "value" : "blocked" - }, - { - "description" : "The payment instrument is permanently closed. This action cannot be undone.", - "value" : "discarded" - }, { "description" : "The payment instrument is active and can be used to make payments.", "value" : "active" @@ -4202,9 +4937,7 @@ "description" : "The status of the payment instrument. If a status is not specified when creating a payment instrument, it is set to **active** by default. However, there can be exceptions based on the `card.formFactor` and the `issuingCountryCode`. For example, when issuing physical cards in the US, the default status is **inactive**.\n\nPossible values: \n\n * **active**: The payment instrument is active and can be used to make payments. \n\n * **inactive**: The payment instrument is inactive and cannot be used to make payments. \n\n * **suspended**: The payment instrument is suspended, either because it was stolen or lost. \n\n * **closed**: The payment instrument is permanently closed. This action cannot be undone. \n\n", "enum" : [ "active", - "blocked", "closed", - "discarded", "inactive", "suspended" ], @@ -4251,7 +4984,7 @@ "type" ] }, - "PhoneNumber2" : { + "PhoneNumber" : { "properties" : { "phoneCountryCode" : { "description" : "The two-character ISO-3166-1 alpha-2 country code of the phone number.\nFor example, **US** or **NL**.", @@ -4369,20 +5102,43 @@ "status" ] }, - "SweepConfiguration" : { + "SweepConfigurationV2" : { "properties" : { - "balanceAccountId" : { - "description" : "The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) that will be the source or destination of the balance sweep. This can only be used for periodic sweep schedules such as `schedule.type` **daily** or **monthly**.", + "counterparty" : { + "description" : "The destination or the source of the funds, depending on the `type`.\n\nEither a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` is required.", + "$ref" : "#/components/schemas/SweepCounterparty" + }, + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**.\n\nThe sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).", "type" : "string" }, - "merchantAccount" : { - "description" : "The merchant account that will be the source of funds. You can only use this if you are processing payments with Adyen. This can only be used for sweeps of `type` **pull** and `schedule.type` **balance**.", + "id" : { + "description" : "The unique identifier of the sweep.", + "readOnly" : true, "type" : "string" }, "schedule" : { "description" : "The schedule when the `triggerAmount` is evaluated. If the balance meets the threshold, funds are pushed out of or pulled in to the balance account.", "$ref" : "#/components/schemas/SweepSchedule" }, + "status" : { + "x-enum" : [ + { + "description" : "The sweep is enabled and funds will be pulled in or pushed out based on the defined configuration", + "value" : "active" + }, + { + "description" : "The sweep is disabled and cannot be triggered.", + "value" : "inactive" + } + ], + "description" : "The status of the sweep. If not provided, by default, this is set to **active**.\n\nPossible values: \n\n * **active**: the sweep is enabled and funds will be pulled in or pushed out based on the defined configuration. \n\n * **inactive**: the sweep is disabled and cannot be triggered. \n\n", + "enum" : [ + "active", + "inactive" + ], + "type" : "string" + }, "sweepAmount" : { "description" : "The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both.", "$ref" : "#/components/schemas/Amount" @@ -4391,17 +5147,13 @@ "description" : "The amount that must be available in the balance account after the sweep. You can configure either `sweepAmount` or `targetAmount`, not both.", "$ref" : "#/components/schemas/Amount" }, - "transferInstrumentId" : { - "description" : "The unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id) that will be the source or destination of the balance sweep. This can be used for periodic or instant sweep schedules.\n\nIf specified in combination with a merchant account, it instructs a direct debit from this instrument for the configured merchant account.", - "type" : "string" - }, "triggerAmount" : { - "description" : "The threshold amount that triggers the sweep. If not specified, the amount defaults to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.", + "description" : "The threshold amount that triggers the sweep. If not provided, by default, the amount is set to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.", "$ref" : "#/components/schemas/Amount" }, "type" : { "default" : "push", - "description" : "The direction of sweep.\n\nPossible values:\n\n * **push**: _Push funds out_ to a destination balance account or transfer instrument.\n\n * **pull**: _Pull funds in_ from a source merchant account, transfer instrument, or balance account. ", + "description" : "The direction of sweep, whether pushing out or pulling in funds to the balance account. If not provided, by default, this is set to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to a destination balance account or transfer instrument.\n\n * **pull**: _pull in funds_ from a source merchant account, transfer instrument, or balance account.", "enum" : [ "pull", "push" @@ -4410,19 +5162,37 @@ } }, "required" : [ + "id", "schedule", - "type" + "currency", + "counterparty" ] }, + "SweepCounterparty" : { + "properties" : { + "balanceAccountId" : { + "description" : "The unique identifier of the destination or source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\n You can only use this for periodic sweep schedules such as `schedule.type` **daily** or **monthly**.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account that will be the source of funds, if you are processing payments with Adyen. You can only use this with sweeps of `type` **pull** and `schedule.type` **balance**.", + "type" : "string" + }, + "transferInstrumentId" : { + "description" : "The unique identifier of the destination or source [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).\n\nYou can also use this in combination with a `merchantAccount` and a `type` **pull** to start a direct debit request from the source transfer instrument. To use this feature, reach out to your Adyen contact.", + "type" : "string" + } + } + }, "SweepSchedule" : { "properties" : { "type" : { - "description" : "The schedule type.\n\nPossible values:\n\n* **daily**: Push out funds daily at 07:00 AM CET.\n\n* **weekly**: Push out funds every Monday at 07:00 AM CET.\n\n* **monthly**: Push out funds every 1st of the month at 07:00 AM CET.\n\n* **balance**: Only for sweeps of `type` **pull** and with a `merchantAccount` or `transferInstrument` source. Pull in funds instantly if the balance is less than or equal to the `triggerAmount`.", + "description" : "The schedule type.\n\nPossible values:\n\n* **daily**: push out funds daily at 07:00 AM CET.\n\n* **weekly**: push out funds every Monday at 07:00 AM CET.\n\n* **monthly**: push out funds every first of the month at 07:00 AM CET.\n\n* **balance**: pull in funds instantly if the balance is less than or equal to the `triggerAmount`. You can only use this for sweeps of `type` **pull** and when the source is a `merchantAccount` or `transferInstrument`.", "enum" : [ - "balance", "daily", + "weekly", "monthly", - "weekly" + "balance" ], "type" : "string" } @@ -4471,18 +5241,23 @@ }, "TransactionRule" : { "properties" : { + "aggregationLevel" : { + "x-addedInVersion" : "2", + "description" : "The level at which data must be accumulated, used in rules with `type` **velocity** or **maxUsage**. The level must be the [same or lower in hierarchy](https://docs.adyen.com/issuing/transaction-rules#accumulate-data) than the `entityKey`.\n\nIf not provided, by default, the rule will accumulate data at the **paymentInstrument** level.\n\nPossible values: **paymentInstrument**, **paymentInstrumentGroup**, **balanceAccount**, **accountHolder**, **balancePlatform**.", + "type" : "string" + }, "description" : { "description" : "Your description for the transaction rule, maximum 300 characters.", "maxLength" : 300, "type" : "string" }, "endDate" : { - "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the rule will be evaluated until the rule status is set to **inactive**.", + "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided, the rule will be evaluated until the rule status is set to **inactive**.", "type" : "string" }, "entityKey" : { "x-addedInVersion" : "2", - "description" : "The ID and type of resource to which the rule applies.", + "description" : "The type and unique identifier of the resource to which the rule applies.", "$ref" : "#/components/schemas/TransactionRuleEntityKey" }, "id" : { @@ -4490,9 +5265,18 @@ "type" : "string" }, "interval" : { - "description" : "The interval when the rule conditions must be applied.", + "description" : "The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) when the rule conditions apply.", "$ref" : "#/components/schemas/TransactionRuleInterval" }, + "outcomeType" : { + "x-addedInVersion" : "2", + "description" : "The [outcome](https://docs.adyen.com/issuing/transaction-rules#outcome) that will be applied when a transaction meets the conditions of the rule. If not provided, by default, this is set to **hardBlock**.\n\nPossible values:\n\n * **hardBlock**: the transaction is declined.\n\n* **scoreBased**: the transaction is assigned the `score` you specified. Adyen calculates the total score and if it exceeds 100, the transaction is declined.", + "enum" : [ + "hardBlock", + "scoreBased" + ], + "type" : "string" + }, "reference" : { "description" : "Your reference for the transaction rule, maximum 150 characters.", "maxLength" : 150, @@ -4500,9 +5284,15 @@ }, "ruleRestrictions" : { "x-addedInVersion" : "2", - "description" : "Contains one or more objects that define the conditions of the rule. Each object must have a value and an operation which determines how the values must be evaluated.\n\nFor example, a `countries` object can have a list of country codes **[\"US\", \"CA\"]** in the `value` field and **anyMatch** in the `operation` field.", + "description" : "Contains one or more objects that define the [rule conditions](https://docs.adyen.com/issuing/transaction-rules#conditions). Each object must have a value and an operation which determines how the values must be evaluated.\n\nFor example, a `countries` object can have a list of country codes **[\"US\", \"CA\"]** in the `value` field and **anyMatch** in the `operation` field.", "$ref" : "#/components/schemas/TransactionRuleRestrictions" }, + "score" : { + "x-addedInVersion" : "2", + "description" : "A positive or negative score applied to the transaction if it meets the conditions of the rule. Required when `outcomeType` is **scoreBased**. The value must be between **-100** and **100**.", + "format" : "int32", + "type" : "integer" + }, "startDate" : { "description" : "The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the `startDate` is set to the date when the rule status is set to **active**. \n\n", "type" : "string" @@ -4534,7 +5324,7 @@ "value" : "maxUsage" } ], - "description" : "Type of conditions provided in the rule.\n\nPossible values:\n * **blockList**: The rule provides categories (such as country and MCC) where payments must be blocked. \n * **maxUsage**: The rule sets limits for the maximum amount or maximum number of transactions for the lifetime of the payment instrument. \n * **velocity**: The rule sets limits for the maximum amount or maximum number of transactions for a given time interval.\n", + "description" : "The [type of rule](https://docs.adyen.com/issuing/transaction-rules#rule-types), which definesif a rule blocks transactions based on individual characteristics or accumulates data.\n\nPossible values:\n * **blockList**: decline a transaction when the conditions are met. \n * **maxUsage**: add the amount or number of transactions for the lifetime of a payment instrument, and then decline a transaction when the specified limits are met. \n * **velocity**: add the amount or number of transactions based on a specified time interval, and then decline a transaction when the specified limits are met.\n", "enum" : [ "allowList", "blockList", @@ -4556,35 +5346,49 @@ "TransactionRuleEntityKey" : { "properties" : { "entityReference" : { - "description" : "The ID of the resource.", + "description" : "The unique identifier of the resource.", "type" : "string" }, "entityType" : { - "description" : "The type of resource.\n\nPossible values: **balancePlatform**, **paymentInstrumentGroup**, **accountHolder**, **balanceAccount**, **paymentInstrument**.", + "description" : "The type of resource.\n\nPossible values: **balancePlatform**, **paymentInstrumentGroup**, **accountHolder**, **balanceAccount**, or **paymentInstrument**.", "type" : "string" } } }, "TransactionRuleInfo" : { "properties" : { + "aggregationLevel" : { + "x-addedInVersion" : "2", + "description" : "The level at which data must be accumulated, used in rules with `type` **velocity** or **maxUsage**. The level must be the [same or lower in hierarchy](https://docs.adyen.com/issuing/transaction-rules#accumulate-data) than the `entityKey`.\n\nIf not provided, by default, the rule will accumulate data at the **paymentInstrument** level.\n\nPossible values: **paymentInstrument**, **paymentInstrumentGroup**, **balanceAccount**, **accountHolder**, **balancePlatform**.", + "type" : "string" + }, "description" : { "description" : "Your description for the transaction rule, maximum 300 characters.", "maxLength" : 300, "type" : "string" }, "endDate" : { - "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the rule will be evaluated until the rule status is set to **inactive**.", + "description" : "The date when the rule will stop being evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided, the rule will be evaluated until the rule status is set to **inactive**.", "type" : "string" }, "entityKey" : { "x-addedInVersion" : "2", - "description" : "The ID and type of resource to which the rule applies.", + "description" : "The type and unique identifier of the resource to which the rule applies.", "$ref" : "#/components/schemas/TransactionRuleEntityKey" }, "interval" : { - "description" : "The interval when the rule conditions must be applied.", + "description" : "The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) when the rule conditions apply.", "$ref" : "#/components/schemas/TransactionRuleInterval" }, + "outcomeType" : { + "x-addedInVersion" : "2", + "description" : "The [outcome](https://docs.adyen.com/issuing/transaction-rules#outcome) that will be applied when a transaction meets the conditions of the rule. If not provided, by default, this is set to **hardBlock**.\n\nPossible values:\n\n * **hardBlock**: the transaction is declined.\n\n* **scoreBased**: the transaction is assigned the `score` you specified. Adyen calculates the total score and if it exceeds 100, the transaction is declined.", + "enum" : [ + "hardBlock", + "scoreBased" + ], + "type" : "string" + }, "reference" : { "description" : "Your reference for the transaction rule, maximum 150 characters.", "maxLength" : 150, @@ -4592,9 +5396,15 @@ }, "ruleRestrictions" : { "x-addedInVersion" : "2", - "description" : "Contains one or more objects that define the conditions of the rule. Each object must have a value and an operation which determines how the values must be evaluated.\n\nFor example, a `countries` object can have a list of country codes **[\"US\", \"CA\"]** in the `value` field and **anyMatch** in the `operation` field.", + "description" : "Contains one or more objects that define the [rule conditions](https://docs.adyen.com/issuing/transaction-rules#conditions). Each object must have a value and an operation which determines how the values must be evaluated.\n\nFor example, a `countries` object can have a list of country codes **[\"US\", \"CA\"]** in the `value` field and **anyMatch** in the `operation` field.", "$ref" : "#/components/schemas/TransactionRuleRestrictions" }, + "score" : { + "x-addedInVersion" : "2", + "description" : "A positive or negative score applied to the transaction if it meets the conditions of the rule. Required when `outcomeType` is **scoreBased**. The value must be between **-100** and **100**.", + "format" : "int32", + "type" : "integer" + }, "startDate" : { "description" : "The date when the rule will start to be evaluated, in ISO 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\nIf not provided when creating a transaction rule, the `startDate` is set to the date when the rule status is set to **active**. \n\n", "type" : "string" @@ -4626,7 +5436,7 @@ "value" : "maxUsage" } ], - "description" : "Type of conditions provided in the rule.\n\nPossible values:\n * **blockList**: The rule provides categories (such as country and MCC) where payments must be blocked. \n * **maxUsage**: The rule sets limits for the maximum amount or maximum number of transactions for the lifetime of the payment instrument. \n * **velocity**: The rule sets limits for the maximum amount or maximum number of transactions for a given time interval.\n", + "description" : "The [type of rule](https://docs.adyen.com/issuing/transaction-rules#rule-types), which definesif a rule blocks transactions based on individual characteristics or accumulates data.\n\nPossible values:\n * **blockList**: decline a transaction when the conditions are met. \n * **maxUsage**: add the amount or number of transactions for the lifetime of a payment instrument, and then decline a transaction when the specified limits are met. \n * **velocity**: add the amount or number of transactions based on a specified time interval, and then decline a transaction when the specified limits are met.\n", "enum" : [ "allowList", "blockList", @@ -4647,13 +5457,50 @@ }, "TransactionRuleInterval" : { "properties" : { + "dayOfMonth" : { + "x-addedInVersion" : "2", + "description" : "The day of month, used when the `duration.unit` is **months**. If not provided, by default, this is set to **1**, the first day of the month.", + "format" : "int32", + "type" : "integer" + }, + "dayOfWeek" : { + "x-addedInVersion" : "2", + "description" : "The day of week, used when the `duration.unit` is **weeks**. If not provided, by default, this is set to **monday**.\n\nPossible values: **sunday**, **monday**, **tuesday**, **wednesday**, **thursday**, **friday**.", + "enum" : [ + "friday", + "monday", + "saturday", + "sunday", + "thursday", + "tuesday", + "wednesday" + ], + "type" : "string" + }, + "duration" : { + "x-addedInVersion" : "2", + "description" : "The duration, which you can specify in hours, days, weeks, or months. The maximum duration is 90 days or an equivalent in other units. Required when the `type` is **rolling** or **sliding**.", + "$ref" : "#/components/schemas/Duration" + }, + "timeOfDay" : { + "x-addedInVersion" : "2", + "description" : "The time of day, in **hh:mm:ss** format, used when the `duration.unit` is **hours**. If not provided, by default, this is set to **00:00:00**.", + "type" : "string" + }, + "timeZone" : { + "x-addedInVersion" : "2", + "description" : "The [time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). For example, **Europe/Amsterdam**. By default, this is set to **UTC**.", + "type" : "string" + }, "type" : { - "description" : "Defines the period during which the rule conditions and limits apply, and how often the amount and transaction counters are reset.\n\nPossible values:\n * **perTransaction**: The conditions are evaluated and the counters are reset for every transaction.\n * **daily**: The counters are reset daily at 00:00:00 UTC.\n * **weekly**: The counters are reset every Monday at 00:00:00 UTC. \n * **monthly**: The counters reset every 1st day of the month at 00:00:00 UTC. \n * **lifetime**: The conditions and limits apply to the lifetime of the payment instrument.", + "description" : "The [type of interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) during which the rule conditions and limits apply, and how often counters are reset.\n\nPossible values:\n * **perTransaction**: conditions are evaluated and the counters are reset for every transaction.\n * **daily**: the counters are reset daily at 00:00:00 UTC.\n * **weekly**: the counters are reset every Monday at 00:00:00 UTC. \n * **monthly**: the counters reset every first day of the month at 00:00:00 UTC. \n * **lifetime**: conditions are applied to the lifetime of the payment instrument.\n * **rolling**: conditions are applied and the counters are reset based on a `duration`. If the reset date and time are not provided, Adyen applies the default reset time similar to fixed intervals. For example, if the duration is every two weeks, the counter resets every third Monday at 00:00:00 UTC.\n * **sliding**: conditions are applied and the counters are reset based on the current time and a `duration` that you specify.", "enum" : [ "daily", "lifetime", "monthly", "perTransaction", + "rolling", + "sliding", "weekly" ], "type" : "string" @@ -4673,6 +5520,10 @@ }, "TransactionRuleRestrictions" : { "properties" : { + "activeNetworkTokens" : { + "description" : "The total number of tokens that a card can have across different kinds of digital wallets on the user's phones, watches, or other wearables.\n\nSupported operations: **equals**, **notEquals**, **greaterThanOrEqualTo**, **greaterThan**, **lessThanOrEqualTo**, **lessThan**.", + "$ref" : "#/components/schemas/ActiveNetworkTokensRestriction" + }, "brandVariants" : { "description" : "List of card brand variants and the operation.\n\nSupported operations: **anyMatch**, **noneMatch**.", "$ref" : "#/components/schemas/BrandVariantsRestriction" @@ -4950,6 +5801,60 @@ "status" : "Active" } }, + "get-balanceAccounts-balanceAccountId-sweeps-success-200" : { + "summary" : "Sweeps under a balance account retrieved", + "description" : "Example response when retrieving sweeps under a balance account", + "value" : { + "hasNext" : false, + "hasPrevious" : false, + "sweeps" : [ + { + "id" : "SWPC4227C224555B5FTD2NT2JV4WN5", + "schedule" : { + "type" : "daily" + }, + "status" : "active", + "targetAmount" : { + "currency" : "EUR", + "value" : 0 + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 0 + }, + "type" : "push", + "counterparty" : { + "balanceAccountId" : "BA32272223222B5FTD2KR6TJD" + }, + "currency" : "EUR" + } + ] + } + }, + "get-balanceAccounts-balanceAccountId-sweeps-sweepId-success-200" : { + "summary" : "Sweep retrieved", + "description" : "Example response when retrieving a sweep", + "value" : { + "id" : "SWPC4227C224555B5FTD2NT2JV4WN5", + "schedule" : { + "type" : "daily" + }, + "status" : "active", + "targetAmount" : { + "currency" : "EUR", + "value" : 0 + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 0 + }, + "type" : "push", + "counterparty" : { + "balanceAccountId" : "BA32272223222B5FTD2KR6TJD" + }, + "currency" : "EUR" + } + }, "get-balanceAccounts-id-paymentInstruments-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response when retrieving a list of payment instruments under a balance account", @@ -4999,8 +5904,8 @@ } }, "get-balanceAccounts-id-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response when retrieving a balance account", + "summary" : "Balance account details retrieved", + "description" : "Example response for retrieving a balance account", "value" : { "accountHolderId" : "AH32272223222B59K6RTQBFNZ", "defaultCurrencyCode" : "EUR", @@ -5013,11 +5918,6 @@ } ], "id" : "BA3227C223222B5BLP6JQC3FD", - "paymentInstruments" : [ - { - "id" : "PI32272223222B5BRM4FZ7J9J" - } - ], "status" : "Active" } }, @@ -5114,13 +6014,13 @@ } }, "get-paymentInstruments-id-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response when retrieving a payment instrument", + "summary" : "Payment instruments retrieved", + "description" : "Example response for retrieving payment instruments associated with a balance account", "value" : { "balanceAccountId" : "BA32272223222B59CZ3T52DKZ", "description" : "S. Hopper - Main card", "issuingCountryCode" : "GB", - "status" : "Active", + "status" : "active", "type" : "card", "card" : { "brand" : "mc", @@ -5225,26 +6125,48 @@ "status" : "Suspended" } }, - "patch-paymentInstruments-id-invalidData-422" : { - "summary" : "Response code - 422 Unprocessable Entity", - "description" : "Example response for a failed request to update the balance account ID", + "patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status" : { + "summary" : "Update the status of a sweep", + "description" : "Example request for updating a sweep", "value" : { - "type" : "https://docs.adyen.com/errors/general/invalid-field-value", - "title" : "Invalid Payment Instrument information provided", - "status" : 422, - "detail" : "The balanceAccountId can only be changed when the status is Inactive or Requested", - "requestId" : "1W1UI15PLVGC9V8O", - "errorCode" : "30_031" + "status" : "inactive" } }, - "patch-paymentInstruments-id-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example respones for successfully updating the status of a payment instrument", + "patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status-200" : { + "summary" : "Sweep status updated", + "description" : "Example response for updating a sweep", "value" : { - "balanceAccountId" : "BA32272223222B59CZ3T52DKZ", + "id" : "SWPC4227C224555B5FTD2NT2JV4WN5", + "counterparty" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 50000 + }, + "currency" : "EUR", + "schedule" : { + "type" : "balance" + }, + "type" : "pull", + "status" : "inactive" + } + }, + "patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount" : { + "summary" : "Update the balance account linked to a payment instrument", + "description" : "Example request for updating the balance account of a payment instrument", + "value" : { + "balanceAccountId" : "BA32272223222B5CM82WL892M" + } + }, + "patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200" : { + "summary" : "Balance account updated", + "description" : "Example response for updating the balance account linked to a payment instrument", + "value" : { + "balanceAccountId" : "BA32272223222B5CM82WL892M", "description" : "S. Hopper - Main card", "issuingCountryCode" : "GB", - "status" : "Suspended", + "status" : "inactive", "type" : "card", "card" : { "brand" : "mc", @@ -5262,17 +6184,36 @@ "id" : "PI3227C223222B5CMD278FKGS" } }, - "patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount" : { - "summary" : "Update the balance account linked to a payment instrument.", - "description" : "Example request for updating the balance account of a payment instrument", + "patch-paymentInstruments-id-updatePaymentInstrumentStatus" : { + "summary" : "Update the status of a payment instrument", + "description" : "Example request for updating the status of a payment instrument", "value" : { - "balanceAccountId" : "BA32272223222B5CM82WL892M" + "status" : "suspended" } }, - "patch-paymentInstruments-id-updatePaymentInstrumentStatus" : { - "summary" : "Update the status of a payment instrument.", + "patch-paymentInstruments-id-updatePaymentInstrumentStatus-200" : { + "summary" : "Payment instrument status updated", + "description" : "Example response for updating the status of a payment instrument", "value" : { - "status" : "Suspended" + "balanceAccountId" : "BA32272223222B59CZ3T52DKZ", + "description" : "S. Hopper - Main card", + "issuingCountryCode" : "GB", + "status" : "suspended", + "type" : "card", + "card" : { + "brand" : "mc", + "brandVariant" : "mcdebit", + "cardholderName" : "Simon Hopper", + "formFactor" : "virtual", + "bin" : "555544", + "expiration" : { + "month" : "01", + "year" : "2024" + }, + "lastFour" : "5785", + "number" : "************5785" + }, + "id" : "PI3227C223222B5CMD278FKGS" } }, "patch-transactionRules-transactionRuleId-success-200" : { @@ -5300,11 +6241,12 @@ } }, "post-accountHolders-createAccountHolder" : { - "summary" : "Create an account holder.", + "summary" : "Create an account holder", "description" : "Example request for creating an account holder", "value" : { "balancePlatform" : "YOUR_BALANCE_PLATFORM", "description" : "S.Hopper - Staff 123", + "legalEntityId" : "LE322KT223222D5FJ7THR293F", "contactDetails" : { "email" : "s.hopper@example.com", "phone" : { @@ -5321,45 +6263,123 @@ } } }, - "post-accountHolders-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response for successfully creating an account holder", + "post-accountHolders-createAccountHolder-200" : { + "summary" : "Account holder created", "value" : { "balancePlatform" : "YOUR_BALANCE_PLATFORM", "contactDetails" : { - "address" : { - "city" : "Amsterdam", - "country" : "NL", - "houseNumberOrName" : "274", - "postalCode" : "1020CD", - "street" : "Brannan Street" - }, "email" : "s.hopper@example.com", "phone" : { "number" : "+315551231234", "type" : "Mobile" + }, + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "street" : "Brannan Street", + "houseNumberOrName" : "274", + "postalCode" : "1020CD" } }, "description" : "S.Hopper - Staff 123", + "legalEntityId" : "LE322KT223222D5FJ7THR293F", "id" : "AH3227C223222B5CMD2SXFKGT", - "status" : "Active" + "status" : "active" + } + }, + "post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull" : { + "summary" : "Create a sweep to pull funds in to a balance account", + "description" : "Example request for creating a pull sweep", + "value" : { + "counterparty" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 50000 + }, + "currency" : "EUR", + "schedule" : { + "type" : "balance" + }, + "type" : "pull", + "status" : "active" + } + }, + "post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull-200" : { + "summary" : "Sweep of pull type created", + "description" : "Example response for creating a pull sweep", + "value" : { + "id" : "SWPC4227C224555B5FTD2NT2JV4WN5", + "counterparty" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 50000 + }, + "currency" : "EUR", + "schedule" : { + "type" : "balance" + }, + "type" : "pull", + "status" : "active" + } + }, + "post-balanceAccounts-balanceAccountId-sweeps-createSweep-push" : { + "summary" : "Create a sweep to push funds out of a balance account", + "description" : "Example request for creating a push sweep", + "value" : { + "counterparty" : { + "balanceAccountId" : "BA32278887611B5FTD2KR6TJD" + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 50000 + }, + "currency" : "EUR", + "schedule" : { + "type" : "weekly" + }, + "type" : "push", + "status" : "active" + } + }, + "post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-200" : { + "summary" : "Sweep of push type created", + "description" : "Example response for creating a push sweep", + "value" : { + "id" : "SWPC4227C224555B5FTD2NT2JV4WN5", + "counterparty" : { + "balanceAccountId" : "BA32278887611B5FTD2KR6TJD" + }, + "triggerAmount" : { + "currency" : "EUR", + "value" : 50000 + }, + "currency" : "EUR", + "schedule" : { + "type" : "weekly" + }, + "type" : "push", + "status" : "active" } }, "post-balanceAccounts-createBalanceAccount" : { - "summary" : "Create a balance account.", + "summary" : "Create a balance account", "description" : "Example request for creating a balance account", "value" : { "accountHolderId" : "AH32272223222B59K6ZKBBFNQ", "description" : "S.Hopper - Main balance account" } }, - "post-balanceAccounts-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response for successfully creating a balance account", + "post-balanceAccounts-createBalanceAccount-200" : { + "summary" : "Balance account created", + "description" : "Example response for creating a balance account", "value" : { "accountHolderId" : "AH32272223222B59K6ZKBBFNQ", "defaultCurrencyCode" : "EUR", - "description" : "S.Hopper - Main balance account", + "reference" : "S.Hopper - Main balance account", "balances" : [ { "available" : 0, @@ -5368,8 +6388,8 @@ "reserved" : 0 } ], - "id" : "BA3227C223222B5CMD38HFKGH", - "status" : "Active" + "id" : "BA32272223222B59CZ3T52DKZ", + "status" : "active" } }, "post-paymentInstrumentGroups-createPaymentInstrumentGroups" : { @@ -5468,36 +6488,260 @@ "id" : "PI32272223222B5CMD3MQ3HXX" } }, - "post-transactionRules-createTransactionRule" : { - "summary" : "Create a transaction rule.", + "post-transactionRules-createTransactionRuleAllowPos" : { + "summary" : "Allow only point-of-sale transactions", + "description" : "Example request to allow only point-of-sale transactions", "value" : { - "description" : "Allow 5 transactions per month", - "interval" : { - "type" : "monthly" + "description" : "Allow only point-of-sale transactions", + "reference" : "YOUR_REFERENCE_4F7346", + "entityKey" : { + "entityType" : "paymentInstrument", + "entityReference" : "PI3227C223222B5BPCMFXD2XG" }, - "maxTransactions" : 5, - "paymentInstrumentId" : "PI3227C223222B59KGTXP884R", - "reference" : "myRule12345", - "startDate" : "2021-01-21T12:46:35.476629Z", - "status" : "inactive", + "status" : "active", + "interval" : { + "type" : "perTransaction" + }, + "ruleRestrictions" : { + "processingTypes" : { + "operation" : "noneMatch", + "value" : [ + "pos" + ] + } + }, + "type" : "blockList" + } + }, + "post-transactionRules-createTransactionRuleAllowPos-200" : { + "summary" : "Transaction rule allowing only POS transactions created", + "description" : "Example response for allowing only point-of-sale transactions", + "value" : { + "description" : "Allow only point-of-sale transactions", + "entityKey" : { + "entityReference" : "PI3227C223222B5BPCMFXD2XG", + "entityType" : "paymentInstrument" + }, + "interval" : { + "timeZone" : "UTC", + "type" : "perTransaction" + }, + "outcomeType" : "hardBlock", + "reference" : "YOUR_REFERENCE_4F7346", + "requestType" : "authorization", + "ruleRestrictions" : { + "processingTypes" : { + "operation" : "noneMatch", + "value" : [ + "pos" + ] + } + }, + "startDate" : "2022-03-23T15:05:11.979433+01:00", + "status" : "active", + "type" : "blockList", + "id" : "TR3227C223222B5FCB756DV9H" + } + }, + "post-transactionRules-createTransactionRuleIncreaseScore" : { + "summary" : "Increase the score of a card", + "description" : "Example request to increase the score of a card", + "value" : { + "description" : "Assign score if more than 500 EUR in 2 hours", + "entityKey" : { + "entityReference" : "PI3227C223222B5FN65FN5NS9", + "entityType" : "paymentInstrument" + }, + "interval" : { + "type" : "sliding", + "duration" : { + "value" : 2, + "unit" : "hours" + } + }, + "outcomeType" : "scoreBased", + "reference" : "myRule11789", + "ruleRestrictions" : { + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "currency" : "EUR", + "value" : 50000 + } + } + }, + "score" : 20, "type" : "velocity" } }, - "post-transactionRules-success-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response for successfully creating a transaction rule", + "post-transactionRules-createTransactionRuleIncreaseScore-200" : { + "summary" : "Score-based transaction rule created", + "description" : "Example response for increasing the score of a card", "value" : { - "description" : "Allow 5 transactions per month", - "interval" : { - "type" : "monthly" + "description" : "Assign score if more than 500 EUR in 2 hours", + "entityKey" : { + "entityReference" : "PI3227C223222B5FN65FN5NS9", + "entityType" : "paymentInstrument" }, - "maxTransactions" : 5, - "paymentInstrumentId" : "PI3227C223222B59KGTXP884R", - "reference" : "myRule12345", - "startDate" : "2021-01-21T12:46:35.476629Z", + "interval" : { + "duration" : { + "unit" : "hours", + "value" : 2 + }, + "timeZone" : "UTC", + "type" : "sliding" + }, + "outcomeType" : "scoreBased", + "reference" : "myRule11789", + "requestType" : "authorization", + "ruleRestrictions" : { + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "currency" : "EUR", + "value" : 50000 + } + } + }, + "score" : 20, + "status" : "inactive", + "type" : "velocity", + "id" : "TR3227C223222B5FW3LVW8NRJ" + } + }, + "post-transactionRules-createTransactionRuleLimitSliding" : { + "summary" : "Limit total amount in the last 12 hours", + "description" : "Example request to limit the total amount in a sliding interval", + "value" : { + "description" : "Up to 1000 EUR per card for the last 12 hours", + "reference" : "YOUR_REFERENCE_2918A", + "status" : "active", + "entityKey" : { + "entityReference" : "BA3227C223222B5FN65355NR3", + "entityType" : "balanceAccount" + }, + "aggregationLevel" : "paymentInstrument", + "interval" : { + "type" : "sliding", + "duration" : { + "value" : "12", + "unit" : "hours" + } + }, + "outcomeType" : "hardBlock", + "ruleRestrictions" : { + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "value" : 100000, + "currency" : "EUR" + } + } + }, + "type" : "velocity" + } + }, + "post-transactionRules-createTransactionRuleLimitSliding-200" : { + "summary" : "Transaction rule with a sliding interval created", + "description" : "Example response for limiting the total amount in a sliding interval", + "value" : { + "aggregationLevel" : "paymentInstrument", + "description" : "Up to 1000 EUR per card for the last 12 hours", + "entityKey" : { + "entityReference" : "BA3227C223222B5FN65355NR3", + "entityType" : "balanceAccount" + }, + "interval" : { + "duration" : { + "unit" : "hours", + "value" : 12 + }, + "timeZone" : "UTC", + "type" : "sliding" + }, + "outcomeType" : "hardBlock", + "reference" : "YOUR_REFERENCE_2918A", + "requestType" : "authorization", + "ruleRestrictions" : { + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "currency" : "EUR", + "value" : 100000 + } + } + }, + "startDate" : "2022-04-19T18:43:37.618337+02:00", "status" : "active", "type" : "velocity", - "id" : "TR32272223222B5CMD3V73HXG" + "id" : "TR32272223222B5FW3LZ74JFB" + } + }, + "post-transactionRules-createTransactionRuleLimitTransaction" : { + "summary" : "Limit international payments", + "description" : "Example request to limit total amount of international transations", + "value" : { + "description" : "Up to 50 EUR international transactions", + "reference" : "YOUR_REFERENCE_B2634", + "status" : "active", + "entityKey" : { + "entityType" : "balanceAccount", + "entityReference" : "BA3227C223222B5FN65355NR3" + }, + "interval" : { + "type" : "daily" + }, + "outcomeType" : "hardBlock", + "ruleRestrictions" : { + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "currency" : "EUR", + "value" : 5000 + } + }, + "internationalTransaction" : { + "operation" : "equals", + "value" : true + } + }, + "type" : "velocity" + } + }, + "post-transactionRules-createTransactionRuleLimitTransaction-200" : { + "summary" : "Transaction rule to limit international transactions created", + "description" : "Example response for limiting the total amount of international transations", + "value" : { + "description" : "Up to 50 EUR international transactions", + "entityKey" : { + "entityReference" : "BA3227C223222B5FN65355NR3", + "entityType" : "balanceAccount" + }, + "interval" : { + "timeOfDay" : "00:00:00", + "timeZone" : "UTC", + "type" : "daily" + }, + "outcomeType" : "hardBlock", + "reference" : "YOUR_REFERENCE_B2634", + "requestType" : "authorization", + "ruleRestrictions" : { + "internationalTransaction" : { + "operation" : "equals", + "value" : true + }, + "totalAmount" : { + "operation" : "greaterThan", + "value" : { + "currency" : "EUR", + "value" : 5000 + } + } + }, + "startDate" : "2022-04-19T18:45:03.291699+02:00", + "status" : "active", + "type" : "velocity", + "id" : "TR32272223222B5FW3M494JGX" } } } diff --git a/json/BinLookupService-v40.json b/json/BinLookupService-v40.json index a670523..3aea2a1 100644 --- a/json/BinLookupService-v40.json +++ b/json/BinLookupService-v40.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen BinLookup API", "description" : "The BIN Lookup API provides endpoints for retrieving information, such as cost estimates, and 3D Secure supported version based on a given BIN.", + "x-timestamp" : "2022-05-03T09:24:04Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/BinLookupService-v50.json b/json/BinLookupService-v50.json index d7ec2fb..30046b5 100644 --- a/json/BinLookupService-v50.json +++ b/json/BinLookupService-v50.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen BinLookup API", "description" : "The BIN Lookup API provides endpoints for retrieving information, such as cost estimates, and 3D Secure supported version based on a given BIN.", + "x-timestamp" : "2022-05-03T09:24:04Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/BinLookupService-v52.json b/json/BinLookupService-v52.json new file mode 100644 index 0000000..e66e495 --- /dev/null +++ b/json/BinLookupService-v52.json @@ -0,0 +1,829 @@ +{ + "openapi" : "3.1.0", + "servers" : [ + { + "url" : "https://pal-test.adyen.com/pal/servlet/BinLookup/v52" + } + ], + "info" : { + "version" : "52", + "x-publicVersion" : true, + "title" : "Adyen BinLookup API", + "description" : "The BIN Lookup API provides endpoints for retrieving information, such as cost estimates, and 3D Secure supported version based on a given BIN.", + "x-timestamp" : "2022-05-03T09:24:04Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "General" + ], + "tags" : [ + { + "name" : "General" + } + ], + "paths" : { + "/get3dsAvailability" : { + "post" : { + "tags" : [ + "General" + ], + "summary" : "Checks 3D Secure availability.", + "description" : "Verifies whether 3D Secure is available for the specified BIN or card brand. For 3D Secure 2, this endpoint also returns device fingerprinting keys.\n\nFor more information, refer to [3D Secure 2](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).", + "x-addedInVersion" : "1", + "operationId" : "post-get3dsAvailability", + "x-groupName" : "General", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "get3dsAvailability" : { + "$ref" : "#/components/examples/post-get3dsAvailability-get3dsAvailability" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ThreeDSAvailabilityRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "get3dsAvailability" : { + "$ref" : "#/components/examples/post-get3dsAvailability-get3dsAvailability-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ThreeDSAvailabilityResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/getCostEstimate" : { + "post" : { + "tags" : [ + "General" + ], + "summary" : "Gets a cost estimate.", + "description" : ">This API is available only for merchants operating in Australia, the EU, and the UK.\n\nUse the Adyen Cost Estimation API to pre-calculate interchange and scheme fee costs. Knowing these costs prior actual payment authorisation gives you an opportunity to charge those costs to the cardholder, if necessary.\n\nTo retrieve this information, make the call to the `/getCostEstimate` endpoint. The response to this call contains the amount of the interchange and scheme fees charged by the network for this transaction, and also which surcharging policy is possible (based on current regulations).\n\n> Since not all information is known in advance (for example, if the cardholder will successfully authenticate via 3D Secure or if you also plan to provide additional Level 2/3 data), the returned amounts are based on a set of assumption criteria you define in the `assumptions` parameter.", + "operationId" : "post-getCostEstimate", + "x-groupName" : "General", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "getCostEstimate" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimate" + }, + "getCostEstimateEncryptedCard" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateEncryptedCard" + }, + "getCostEstimateMinimal" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateMinimal" + }, + "getCostEstimateMinimal3DS" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateMinimal3DS" + }, + "getCostEstimateRecurringContract" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateRecurringContract" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CostEstimateRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "getCostEstimate" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimate-200" + }, + "getCostEstimateEncryptedCard" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateEncryptedCard-200" + }, + "getCostEstimateMinimal" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateMinimal-200" + }, + "getCostEstimateMinimal3DS" : { + "$ref" : "#/components/examples/post-getCostEstimate-getCostEstimateMinimal3DS-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CostEstimateResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + } + }, + "components" : { + "schemas" : { + "Amount" : { + "properties" : { + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", + "maxLength" : 3, + "minLength" : 3, + "type" : "string" + }, + "value" : { + "description" : "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "value", + "currency" + ] + }, + "BinDetail" : { + "properties" : { + "issuerCountry" : { + "description" : "The country where the card was issued.", + "type" : "string" + } + } + }, + "CardBin" : { + "properties" : { + "bin" : { + "description" : "The first 6 digit of the card number. Enable this field via merchant account settings.", + "type" : "string" + }, + "commercial" : { + "description" : "If true, it indicates a commercial card. Enable this field via merchant account settings.", + "type" : "boolean" + }, + "fundingSource" : { + "description" : "The card funding source. Valid values are:\n* CHARGE\n* CREDIT\n* DEBIT\n* DEFERRED_DEBIT\n* PREPAID\n* PREPAID_RELOADABLE\n* PREPAID_NONRELOADABLE\n> Enable this field via merchant account settings.", + "type" : "string" + }, + "fundsAvailability" : { + "description" : "Indicates availability of funds.\n\nVisa:\n* \"I\" (fast funds are supported)\n* \"N\" (otherwise)\n\nMastercard:\n* \"I\" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM list)\n* \"N\" (otherwise)\n> Returned when you verify a card BIN or estimate costs, and only if `payoutEligible` is different from \"N\" or \"U\".", + "type" : "string" + }, + "issuingBank" : { + "description" : "The issuing bank of the card.", + "type" : "string" + }, + "issuingCountry" : { + "description" : "The country where the card was issued from.", + "type" : "string" + }, + "issuingCurrency" : { + "description" : "The currency of the card.", + "type" : "string" + }, + "paymentMethod" : { + "description" : "The payment method associated with the card (e.g. visa, mc, or amex).", + "type" : "string" + }, + "payoutEligible" : { + "description" : "Indicates whether a payout is eligible or not for this card.\n\nVisa:\n* \"Y\"\n* \"N\"\n\nMastercard:\n* \"Y\" (domestic and cross-border)\n* \"D\" (only domestic)\n* \"N\" (no MoneySend)\n* \"U\" (unknown)\n> Returned when you verify a card BIN or estimate costs, and only if `payoutEligible` is different from \"N\" or \"U\".", + "type" : "string" + }, + "summary" : { + "description" : "The last four digits of the card number.", + "type" : "string" + } + } + }, + "CostEstimateAssumptions" : { + "properties" : { + "assume3DSecureAuthenticated" : { + "description" : "If true, the cardholder is expected to successfully authorise via 3D Secure.", + "type" : "boolean" + }, + "assumeLevel3Data" : { + "description" : "If true, the transaction is expected to have valid Level 3 data.", + "type" : "boolean" + }, + "installments" : { + "description" : "If not zero, the number of installments.", + "format" : "int32", + "type" : "integer" + } + } + }, + "CostEstimateRequest" : { + "properties" : { + "amount" : { + "description" : "The transaction amount used as a base for the cost estimation.", + "$ref" : "#/components/schemas/Amount" + }, + "assumptions" : { + "description" : "Assumptions made for the expected characteristics of the transaction, for which the charges are being estimated.", + "$ref" : "#/components/schemas/CostEstimateAssumptions" + }, + "cardNumber" : { + "description" : "The card number (4-19 characters) for PCI compliant use cases. Do not use any separators.\n\n> Either the `cardNumber` or `encryptedCardNumber` field must be provided in a payment request.", + "maxLength" : 19, + "minLength" : 4, + "type" : "string" + }, + "encryptedCardNumber" : { + "description" : "Encrypted data that stores card information for non PCI-compliant use cases. The encrypted data must be created with the Checkout Card Component or Secured Fields Component, and must contain the `encryptedCardNumber` field.\n\n> Either the `cardNumber` or `encryptedCardNumber` field must be provided in a payment request.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier you want to process the (transaction) request with.", + "type" : "string" + }, + "merchantDetails" : { + "description" : "Additional data for merchants who don't use Adyen as the payment authorisation gateway.", + "$ref" : "#/components/schemas/MerchantDetails" + }, + "recurring" : { + "description" : "The recurring settings for the payment. Use this property when you want to enable [recurring payments](https://docs.adyen.com/online-payments/tokenization).", + "$ref" : "#/components/schemas/Recurring" + }, + "selectedRecurringDetailReference" : { + "description" : "The `recurringDetailReference` you want to use for this cost estimate. The value `LATEST` can be used to select the most recently stored recurring detail.", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the card holder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + } + }, + "required" : [ + "amount", + "merchantAccount" + ] + }, + "CostEstimateResponse" : { + "properties" : { + "cardBin" : { + "description" : "Card BIN details.", + "$ref" : "#/components/schemas/CardBin" + }, + "costEstimateAmount" : { + "description" : "The estimated cost (scheme fee + interchange) in the settlement currency. If the settlement currency cannot be determined, the fee in EUR is returned.", + "$ref" : "#/components/schemas/Amount" + }, + "costEstimateReference" : { + "x-addedInVersion" : "52", + "description" : "Adyen's 16-character reference associated with the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the cost estimation.", + "type" : "string" + }, + "surchargeType" : { + "description" : "Indicates the way the charges can be passed on to the cardholder. The following values are possible:\n* `ZERO` - the charges are not allowed to pass on\n* `PASSTHROUGH` - the charges can be passed on\n* `UNLIMITED` - there is no limit on how much surcharge is passed on", + "type" : "string" + } + } + }, + "DSPublicKeyDetail" : { + "properties" : { + "brand" : { + "description" : "Card brand.", + "type" : "string" + }, + "directoryServerId" : { + "description" : "Directory Server (DS) identifier.", + "type" : "string" + }, + "fromSDKVersion" : { + "description" : "The version of the mobile 3D Secure 2 SDK. For the possible values, refer to the versions in [Adyen 3DS2 Android](https://github.com/Adyen/adyen-3ds2-android/releases) and [Adyen 3DS2 iOS](https://github.com/Adyen/adyen-3ds2-ios/releases).", + "type" : "string" + }, + "publicKey" : { + "description" : "Public key. The 3D Secure 2 SDK encrypts the device information by using the DS public key.", + "format" : "byte", + "type" : "string" + } + } + }, + "MerchantDetails" : { + "properties" : { + "countryCode" : { + "description" : "2-letter ISO 3166 country code of the card acceptor location.\n> This parameter is required for the merchants who don't use Adyen as the payment authorisation gateway.", + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "enrolledIn3DSecure" : { + "description" : "If true, indicates that the merchant is enrolled in 3D Secure for the card network.", + "type" : "boolean" + }, + "mcc" : { + "description" : "The merchant category code (MCC) is a four-digit number which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.\n\nThe list of MCCs can be found [here](https://en.wikipedia.org/wiki/Merchant_category_code).", + "type" : "string" + } + } + }, + "Recurring" : { + "properties" : { + "contract" : { + "description" : "The type of recurring contract to be used.\nPossible values:\n* `ONECLICK` – Payment details can be used to initiate a one-click payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n* `RECURRING` – Payment details can be used without the card security code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n* `ONECLICK,RECURRING` – Payment details can be used regardless of whether the shopper is on your site or not.\n* `PAYOUT` – Payment details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts).", + "enum" : [ + "ONECLICK", + "RECURRING", + "PAYOUT" + ], + "type" : "string" + }, + "recurringDetailName" : { + "description" : "A descriptive name for this detail.", + "type" : "string" + }, + "recurringExpiry" : { + "x-addedInVersion" : "40", + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "format" : "date-time", + "type" : "string" + }, + "recurringFrequency" : { + "x-addedInVersion" : "40", + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "tokenService" : { + "x-addedInVersion" : "25", + "description" : "The name of the token service.", + "enum" : [ + "VISATOKENSERVICE", + "MCTOKENSERVICE" + ], + "type" : "string" + } + } + }, + "ServiceError" : { + "properties" : { + "additionalData" : { + "x-addedInVersion" : "46", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs**.", + "type" : "object" + }, + "errorCode" : { + "description" : "The error code mapped to the error message.", + "type" : "string" + }, + "errorType" : { + "description" : "The category of the error.", + "type" : "string" + }, + "message" : { + "description" : "A short explanation of the issue.", + "type" : "string" + }, + "pspReference" : { + "description" : "The PSP reference of the payment.", + "type" : "string" + }, + "status" : { + "description" : "The HTTP response status.", + "format" : "int32", + "type" : "integer" + } + } + }, + "ThreeDS2CardRangeDetail" : { + "properties" : { + "acsInfoInd" : { + "x-addedInVersion" : "51", + "description" : "Provides additional information to the 3DS Server.\nPossible values:\n- 01 (Authentication is available at ACS)\n- 02 (Attempts supported by ACS or DS)\n- 03 (Decoupled authentication supported)\n- 04 (Whitelisting supported)", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "brandCode" : { + "description" : "Card brand.", + "type" : "string" + }, + "endRange" : { + "description" : "BIN end range.", + "type" : "string" + }, + "startRange" : { + "description" : "BIN start range.", + "type" : "string" + }, + "threeDS2Version" : { + "description" : "3D Secure protocol version.", + "type" : "string" + }, + "threeDSMethodURL" : { + "description" : "In a 3D Secure 2 browser-based flow, this is the URL where you should send the device fingerprint to.", + "type" : "string" + } + } + }, + "ThreeDSAvailabilityRequest" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "This field contains additional data, which may be required for a particular request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "brands" : { + "description" : "List of brands.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "cardNumber" : { + "description" : "Card number or BIN.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier.", + "type" : "string" + }, + "recurringDetailReference" : { + "description" : "A recurring detail reference corresponding to a card.", + "type" : "string" + }, + "shopperReference" : { + "description" : "The shopper's reference to uniquely identify this shopper (e.g. user ID or account ID).", + "type" : "string" + } + }, + "required" : [ + "merchantAccount" + ] + }, + "ThreeDSAvailabilityResponse" : { + "properties" : { + "binDetails" : { + "x-addedInVersion" : "50", + "description" : "Bin Group Details", + "$ref" : "#/components/schemas/BinDetail" + }, + "dsPublicKeys" : { + "description" : "List of Directory Server (DS) public keys.", + "items" : { + "$ref" : "#/components/schemas/DSPublicKeyDetail" + }, + "type" : "array" + }, + "threeDS1Supported" : { + "description" : "Indicator if 3D Secure 1 is supported.", + "type" : "boolean" + }, + "threeDS2CardRangeDetails" : { + "description" : "List of brand and card range pairs.", + "items" : { + "$ref" : "#/components/schemas/ThreeDS2CardRangeDetail" + }, + "type" : "array" + }, + "threeDS2supported" : { + "description" : "Indicator if 3D Secure 2 is supported.", + "type" : "boolean" + } + } + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "examples" : { + "generic-400" : { + "summary" : "Response code 400. Bad Request.", + "value" : { + "status" : 400, + "errorCode" : "702", + "message" : "Unexpected input: I", + "errorType" : "validation" + } + }, + "post-get3dsAvailability-get3dsAvailability" : { + "summary" : "Get 3D Secure availability", + "description" : "Example request to check 3D Secure availability", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "4111111111111111" + } + }, + "post-get3dsAvailability-get3dsAvailability-200" : { + "summary" : "Example response for request 'get3dsAvailability'", + "value" : { + "threeDS1Supported" : "true", + "threeDS2CardRangeDetails" : [ + ], + "threeDS2supported" : "false" + } + }, + "post-getCostEstimate-getCostEstimate" : { + "summary" : "Estimate the transaction cost", + "description" : "Example request to get the estimated cost of a transaction", + "value" : { + "amount" : { + "value" : 1234, + "currency" : "EUR" + }, + "assumptions" : { + "assumeLevel3Data" : true, + "assume3DSecureAuthenticated" : true + }, + "cardNumber" : "5101180000000007", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "merchantDetails" : { + "countryCode" : "NL", + "mcc" : "7411", + "enrolledIn3DSecure" : true + }, + "shopperInteraction" : "Ecommerce" + } + }, + "post-getCostEstimate-getCostEstimate-200" : { + "summary" : "Example response for request 'getCostEstimate'", + "value" : { + "costEstimateAmount" : { + "currency" : "EUR", + "value" : 12 + }, + "resultCode" : "Success", + "surchargeType" : "PASSTHROUGH" + } + }, + "post-getCostEstimate-getCostEstimateEncryptedCard" : { + "summary" : "Estimate the transaction cost using an encrypted card number", + "description" : "Example request to get the estimated cost of a transaction", + "value" : { + "amount" : { + "value" : 1234, + "currency" : "EUR" + }, + "assumptions" : { + "assumeLevel3Data" : true, + "assume3DSecureAuthenticated" : true + }, + "encryptedCardNumber" : "test_5101180000000007", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "merchantDetails" : { + "countryCode" : "NL", + "mcc" : "7411", + "enrolledIn3DSecure" : true + }, + "shopperInteraction" : "Ecommerce" + } + }, + "post-getCostEstimate-getCostEstimateEncryptedCard-200" : { + "summary" : "Example response for request 'getCostEstimateEncryptedCard'", + "value" : { + "costEstimateAmount" : { + "currency" : "EUR", + "value" : 12 + }, + "resultCode" : "Success", + "surchargeType" : "PASSTHROUGH" + } + }, + "post-getCostEstimate-getCostEstimateMinimal" : { + "summary" : "Estimate the transaction cost (minimal)", + "description" : "Example request to get the estimated cost of a transaction with minimum details", + "value" : { + "amount" : { + "value" : 1234, + "currency" : "EUR" + }, + "cardNumber" : "5101180000000007", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-getCostEstimate-getCostEstimateMinimal-200" : { + "summary" : "Example response for request 'getCostEstimateMinimal'", + "value" : { + "costEstimateAmount" : { + "currency" : "EUR", + "value" : 12 + }, + "resultCode" : "Success", + "surchargeType" : "PASSTHROUGH" + } + }, + "post-getCostEstimate-getCostEstimateMinimal3DS" : { + "summary" : "Estimate the transaction cost (minimal with 3DSecure)", + "description" : "Example request to get the estimated cost of a 3D Secure transaction with minimum details", + "value" : { + "amount" : { + "value" : 1234, + "currency" : "EUR" + }, + "assumptions" : { + "assumeLevel3Data" : true, + "assume3DSecureAuthenticated" : true + }, + "cardNumber" : "5101180000000007", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-getCostEstimate-getCostEstimateMinimal3DS-200" : { + "summary" : "Example response for request 'getCostEstimateMinimal3DS'", + "value" : { + "costEstimateAmount" : { + "currency" : "EUR", + "value" : 12 + }, + "resultCode" : "Success", + "surchargeType" : "PASSTHROUGH" + } + }, + "post-getCostEstimate-getCostEstimateRecurringContract" : { + "summary" : "Estimate the transaction cost (recurring contract)", + "description" : "Example request to get the estimated cost of a recurring transaction", + "value" : { + "amount" : { + "value" : 1234, + "currency" : "EUR" + }, + "assumptions" : { + "assumeLevel3Data" : true, + "assume3DSecureAuthenticated" : true + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "merchantDetails" : { + "countryCode" : "NL", + "mcc" : "7411", + "enrolledIn3DSecure" : true + }, + "selectedRecurringDetailReference" : "1234567890123456", + "shopperInteraction" : "Ecommerce", + "shopperReference" : "123456" + } + } + } + } +} \ No newline at end of file diff --git a/json/CheckoutService-v37.json b/json/CheckoutService-v37.json index d846d0c..0142575 100644 --- a/json/CheckoutService-v37.json +++ b/json/CheckoutService-v37.json @@ -9,7 +9,8 @@ "version" : "37", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v37/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v37/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=37) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4037,6 +4253,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4091,6 +4319,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4118,6 +4350,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4130,6 +4365,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4359,7 +4632,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4426,9 +4699,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4532,8 +4802,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4555,9 +4825,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4813,6 +5080,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -4867,7 +5141,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -4880,7 +5154,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -4973,6 +5247,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5084,6 +5365,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -5301,7 +5619,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -5524,29 +5843,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -5802,7 +6098,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6000,6 +6297,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6126,6 +6430,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -6140,8 +6445,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -6150,6 +6458,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -6174,7 +6484,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -6192,7 +6501,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -6223,9 +6534,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -6277,10 +6585,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -6322,7 +6626,461 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -6355,7 +7113,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -6368,9 +7126,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -6386,8 +7151,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -6420,7 +7192,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -6431,11 +7203,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -6680,6 +7475,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6911,7 +7713,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -6978,9 +7780,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -7121,7 +7920,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7182,9 +7981,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7565,7 +8361,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7658,9 +8454,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7932,7 +8725,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -7958,6 +8751,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -8210,34 +9007,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -8436,6 +9205,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -8505,13 +9277,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -8705,6 +9478,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -8996,6 +9791,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -12006,7 +12916,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v40.json b/json/CheckoutService-v40.json index 31b1a57..7b4441a 100644 --- a/json/CheckoutService-v40.json +++ b/json/CheckoutService-v40.json @@ -9,7 +9,8 @@ "version" : "40", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v40/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v40/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=40) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4240,6 +4456,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4294,6 +4522,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4321,6 +4553,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4333,6 +4568,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4577,7 +4850,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4649,9 +4922,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4755,8 +5025,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4778,9 +5048,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5036,6 +5303,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5090,7 +5364,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5103,7 +5377,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5196,6 +5470,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5340,6 +5621,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -5557,7 +5875,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -5780,29 +6099,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6115,7 +6411,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6313,6 +6610,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6439,6 +6743,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -6453,8 +6758,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -6463,6 +6771,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -6487,7 +6797,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -6505,7 +6814,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -6536,9 +6847,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -6594,10 +6902,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -6639,7 +6943,487 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -6672,7 +7456,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -6685,9 +7469,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -6703,8 +7494,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -6737,7 +7535,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -6748,11 +7546,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -6997,6 +7818,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7243,7 +8071,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7316,9 +8144,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -7459,7 +8284,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7525,9 +8350,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7921,7 +8743,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8014,9 +8836,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8294,7 +9113,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -8320,6 +9139,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -8592,34 +9415,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -8838,6 +9633,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -8907,13 +9705,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9203,6 +10002,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -9494,6 +10315,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -12504,7 +13440,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v41.json b/json/CheckoutService-v41.json index c9f2aca..880f12a 100644 --- a/json/CheckoutService-v41.json +++ b/json/CheckoutService-v41.json @@ -9,7 +9,8 @@ "version" : "41", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v41/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v41/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=41) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4255,6 +4471,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4309,6 +4537,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4336,6 +4568,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4348,6 +4583,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4592,7 +4865,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4664,9 +4937,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4770,8 +5040,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4793,9 +5063,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5051,6 +5318,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5105,7 +5379,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5118,7 +5392,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5211,6 +5485,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5355,6 +5636,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -5572,7 +5890,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -5795,29 +6114,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6130,7 +6426,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6328,6 +6625,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6454,6 +6758,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -6468,8 +6773,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -6478,6 +6786,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -6502,7 +6812,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -6520,7 +6829,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -6551,9 +6862,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -6609,10 +6917,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -6659,7 +6963,487 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -6692,7 +7476,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -6705,9 +7489,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -6723,8 +7514,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -6757,7 +7555,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -6768,11 +7566,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7017,6 +7838,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7263,7 +8091,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7336,9 +8164,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -7479,7 +8304,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7545,9 +8370,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7946,7 +8768,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8039,9 +8861,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8319,7 +9138,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -8345,6 +9164,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -8617,34 +9440,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -8863,6 +9658,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -8932,13 +9730,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9260,6 +10059,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -9551,6 +10372,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -12561,7 +13497,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v46.json b/json/CheckoutService-v46.json index 060522c..37fd997 100644 --- a/json/CheckoutService-v46.json +++ b/json/CheckoutService-v46.json @@ -9,7 +9,8 @@ "version" : "46", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v46/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v46/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=46) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4255,6 +4471,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4309,6 +4537,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4336,6 +4568,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4348,6 +4583,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4592,7 +4865,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4664,9 +4937,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4770,8 +5040,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4793,9 +5063,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5051,6 +5318,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5105,7 +5379,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5118,7 +5392,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5211,6 +5485,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5355,6 +5636,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -5572,7 +5890,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -5795,29 +6114,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6130,7 +6426,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6328,6 +6625,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6454,6 +6758,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -6468,8 +6773,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -6478,6 +6786,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -6502,7 +6812,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -6520,7 +6829,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -6551,9 +6862,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -6609,10 +6917,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -6659,7 +6963,487 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -6692,7 +7476,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -6705,9 +7489,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -6723,8 +7514,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -6757,7 +7555,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -6768,11 +7566,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7017,6 +7838,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7263,7 +8091,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7336,9 +8164,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -7479,7 +8304,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7545,9 +8370,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7946,7 +8768,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8039,9 +8861,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8319,7 +9138,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -8345,6 +9164,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -8617,34 +9440,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -8871,6 +9666,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -8940,13 +9738,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9268,6 +10067,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -9559,6 +10380,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -12569,7 +13505,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v49.json b/json/CheckoutService-v49.json index 14e254e..763a4fa 100644 --- a/json/CheckoutService-v49.json +++ b/json/CheckoutService-v49.json @@ -9,7 +9,8 @@ "version" : "49", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v49/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v49/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=49) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4295,6 +4511,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4349,6 +4577,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4384,6 +4616,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4396,6 +4631,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4667,7 +4940,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4739,9 +5012,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4896,8 +5166,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4919,9 +5189,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5506,6 +5773,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5560,7 +5834,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5573,7 +5847,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5666,6 +5940,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5810,6 +6091,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6035,7 +6353,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6290,29 +6609,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6633,7 +6929,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6855,6 +7152,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6981,6 +7285,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -6995,8 +7300,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7005,6 +7313,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7029,7 +7339,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7047,7 +7356,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7087,9 +7398,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7145,10 +7453,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7195,7 +7499,497 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7228,7 +8022,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7241,9 +8035,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7259,8 +8060,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7293,7 +8101,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7304,11 +8112,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7569,6 +8400,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7820,7 +8658,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7893,9 +8731,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8036,7 +8871,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8143,9 +8978,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8554,7 +9386,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8652,9 +9484,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8948,7 +9777,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -8974,6 +9803,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9246,34 +10079,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9516,6 +10321,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9585,13 +10393,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9681,7 +10490,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10003,6 +10812,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10318,6 +11149,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13328,7 +14274,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v50.json b/json/CheckoutService-v50.json index 887d626..a161f4e 100644 --- a/json/CheckoutService-v50.json +++ b/json/CheckoutService-v50.json @@ -9,7 +9,8 @@ "version" : "50", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v50/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v50/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=50) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:08Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4311,6 +4527,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4365,6 +4593,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4400,6 +4632,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4412,6 +4647,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4683,7 +4956,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4761,9 +5034,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4918,8 +5188,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4941,9 +5211,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5528,6 +5795,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5582,7 +5856,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5595,7 +5869,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5677,7 +5951,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5693,6 +5967,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5837,6 +6118,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6062,7 +6380,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6317,29 +6636,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6660,7 +6956,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6882,6 +7179,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7008,6 +7312,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7022,8 +7327,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7032,6 +7340,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7056,7 +7366,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7074,7 +7383,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7114,9 +7425,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7172,10 +7480,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7222,7 +7526,503 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7255,7 +8055,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7268,9 +8068,16 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7286,8 +8093,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7320,7 +8134,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7331,11 +8145,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7601,6 +8438,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7852,7 +8696,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7925,9 +8769,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8068,7 +8909,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8181,9 +9022,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8592,7 +9430,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8696,9 +9534,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8992,7 +9827,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9018,6 +9853,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9290,34 +10129,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9560,6 +10371,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9629,13 +10443,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9725,7 +10540,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10067,6 +10882,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10382,6 +11219,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13392,7 +14344,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v51.json b/json/CheckoutService-v51.json index 1b185a9..c874e3f 100644 --- a/json/CheckoutService-v51.json +++ b/json/CheckoutService-v51.json @@ -9,7 +9,8 @@ "version" : "51", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v51/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v51/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=51) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:09Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4314,6 +4530,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4368,6 +4596,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4403,6 +4635,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4415,6 +4650,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4692,7 +4965,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4770,9 +5043,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4927,8 +5197,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4950,9 +5220,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5537,6 +5804,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5591,7 +5865,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5604,7 +5878,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5686,7 +5960,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5702,6 +5976,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5846,6 +6127,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6071,7 +6389,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6326,29 +6645,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6669,7 +6965,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6891,6 +7188,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7017,6 +7321,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7031,8 +7336,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7041,6 +7349,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7065,7 +7375,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7083,7 +7392,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7123,9 +7434,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7181,10 +7489,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7231,7 +7535,509 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRealTimeUpdate" : { + "x-addedInVersion" : "51", + "deprecated" : true, + "description" : "Choose if a specific transaction should use the Real-time Account Updater, regardless of other settings.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7264,7 +8070,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7277,7 +8083,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7286,6 +8092,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7301,8 +8114,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7335,7 +8155,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7346,11 +8166,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7623,6 +8466,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7880,7 +8730,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7953,9 +8803,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8096,7 +8943,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8209,9 +9056,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8626,7 +9470,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8730,9 +9574,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9026,7 +9867,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9052,6 +9893,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9324,34 +10169,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9594,6 +10411,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9663,13 +10483,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9759,7 +10580,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10101,6 +10922,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10416,6 +11259,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13426,7 +14384,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v52.json b/json/CheckoutService-v52.json index f0eb498..202b987 100644 --- a/json/CheckoutService-v52.json +++ b/json/CheckoutService-v52.json @@ -9,7 +9,8 @@ "version" : "52", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v52/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v52/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=52) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:09Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4314,6 +4530,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4368,6 +4596,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4403,6 +4635,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4415,6 +4650,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4692,7 +4965,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4770,9 +5043,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4927,8 +5197,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4950,9 +5220,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5537,6 +5804,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5591,7 +5865,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5604,7 +5878,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5686,7 +5960,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5702,6 +5976,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5846,6 +6127,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6071,7 +6389,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6326,29 +6645,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6669,7 +6965,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6891,6 +7188,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7017,6 +7321,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7031,8 +7336,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7041,6 +7349,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7065,7 +7375,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7083,7 +7392,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7123,9 +7434,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7186,10 +7494,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7236,7 +7540,509 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRealTimeUpdate" : { + "x-addedInVersion" : "51", + "deprecated" : true, + "description" : "Choose if a specific transaction should use the Real-time Account Updater, regardless of other settings.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7269,7 +8075,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7282,7 +8088,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7291,6 +8097,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7306,8 +8119,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7340,7 +8160,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7351,11 +8171,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7628,6 +8471,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7885,7 +8735,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7958,9 +8808,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8101,7 +8948,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8214,9 +9061,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8636,7 +9480,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8740,9 +9584,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9036,7 +9877,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9062,6 +9903,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9334,34 +10179,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9604,6 +10421,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9673,13 +10493,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9769,7 +10590,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10111,6 +10932,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10426,6 +11269,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13436,7 +14394,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v53.json b/json/CheckoutService-v53.json index 6e3473c..28f5c86 100644 --- a/json/CheckoutService-v53.json +++ b/json/CheckoutService-v53.json @@ -9,7 +9,8 @@ "version" : "53", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v53/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v53/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=53) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:09Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4314,6 +4530,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4368,6 +4596,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4403,6 +4635,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4415,6 +4650,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4692,7 +4965,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4770,9 +5043,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4927,8 +5197,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4950,9 +5220,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5537,6 +5804,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5591,7 +5865,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5604,7 +5878,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5686,7 +5960,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5702,6 +5976,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5846,6 +6127,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6071,7 +6389,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6326,29 +6645,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6669,7 +6965,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6891,6 +7188,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7017,6 +7321,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7031,8 +7336,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7041,6 +7349,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7065,7 +7375,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7083,7 +7392,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7123,9 +7434,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7186,10 +7494,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7236,7 +7540,509 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRealTimeUpdate" : { + "x-addedInVersion" : "51", + "deprecated" : true, + "description" : "Choose if a specific transaction should use the Real-time Account Updater, regardless of other settings.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7269,7 +8075,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7282,7 +8088,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7291,6 +8097,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7306,8 +8119,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7340,7 +8160,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7351,11 +8171,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7642,6 +8485,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7899,7 +8749,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7972,9 +8822,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8115,7 +8962,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8228,9 +9075,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8650,7 +9494,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8754,9 +9598,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9058,7 +9899,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9084,6 +9925,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9356,34 +10201,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9626,6 +10443,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9695,13 +10515,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9791,7 +10612,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10133,6 +10954,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10448,6 +11291,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13458,7 +14416,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v64.json b/json/CheckoutService-v64.json index da5246b..64c2d5a 100644 --- a/json/CheckoutService-v64.json +++ b/json/CheckoutService-v64.json @@ -9,7 +9,8 @@ "version" : "64", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v64/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v64/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=64) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:09Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4314,6 +4530,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4368,6 +4596,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4403,6 +4635,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4415,6 +4650,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4692,7 +4965,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4770,9 +5043,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4927,8 +5197,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4950,9 +5220,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5537,6 +5804,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5591,7 +5865,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5604,7 +5878,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5686,7 +5960,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5702,6 +5976,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5846,6 +6127,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6071,7 +6389,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6362,29 +6681,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6705,7 +7001,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6927,6 +7224,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7053,6 +7357,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7067,8 +7372,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7077,6 +7385,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7101,7 +7411,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7119,7 +7428,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7159,9 +7470,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7233,10 +7541,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7286,7 +7590,509 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRealTimeUpdate" : { + "x-addedInVersion" : "51", + "deprecated" : true, + "description" : "Choose if a specific transaction should use the Real-time Account Updater, regardless of other settings.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7319,7 +8125,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7332,7 +8138,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7341,6 +8147,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7356,8 +8169,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7390,7 +8210,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7401,11 +8221,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7628,7 +8471,7 @@ }, "order" : { "x-addedInVersion" : "64", - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "shopperLocale" : { @@ -7697,6 +8540,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7954,7 +8804,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -8027,9 +8877,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8170,7 +9017,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8283,9 +9130,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8719,7 +9563,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8823,9 +9667,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9127,7 +9968,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9153,6 +9994,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9425,34 +10270,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9695,6 +10512,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9764,13 +10584,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9860,7 +10681,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10202,6 +11023,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10517,6 +11360,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13527,7 +14485,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v65.json b/json/CheckoutService-v65.json index 0336923..3b83770 100644 --- a/json/CheckoutService-v65.json +++ b/json/CheckoutService-v65.json @@ -9,7 +9,8 @@ "version" : "65", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v65/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v65/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=65) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:10Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4329,6 +4545,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4383,6 +4611,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4418,6 +4650,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4430,6 +4665,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4701,7 +4974,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4779,9 +5052,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4941,8 +5211,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4964,9 +5234,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5551,6 +5818,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5605,7 +5879,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5618,7 +5892,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5705,7 +5979,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5721,6 +5995,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5865,6 +6146,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6090,7 +6408,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6381,29 +6700,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6724,7 +7020,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6946,6 +7243,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7072,6 +7376,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7086,8 +7391,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7096,6 +7404,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7120,7 +7430,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7138,7 +7447,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7178,9 +7489,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7252,10 +7560,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7305,7 +7609,503 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7338,7 +8138,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7351,7 +8151,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7360,6 +8160,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7375,8 +8182,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7414,7 +8228,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7425,11 +8239,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **paid**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7628,7 +8465,7 @@ }, "order" : { "x-addedInVersion" : "64", - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "shopperLocale" : { @@ -7683,6 +8520,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7934,7 +8778,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -8007,9 +8851,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8150,7 +8991,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8263,9 +9104,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8693,7 +9531,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8797,9 +9635,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9102,7 +9937,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9128,6 +9963,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9392,34 +10231,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9681,6 +10492,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9750,13 +10564,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9846,7 +10661,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10188,6 +11003,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10505,6 +11342,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13515,7 +14467,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v66.json b/json/CheckoutService-v66.json index bb80ed5..e07d8c4 100644 --- a/json/CheckoutService-v66.json +++ b/json/CheckoutService-v66.json @@ -9,7 +9,8 @@ "version" : "66", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v66/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v66/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=66) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:10Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,221 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/orders" : { "post" : { "tags" : [ @@ -672,7 +888,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -687,7 +903,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -825,7 +1041,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -975,7 +1191,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4329,6 +4545,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4383,6 +4611,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4418,6 +4650,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4430,6 +4665,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4701,7 +4974,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4779,9 +5052,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4941,8 +5211,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -4964,9 +5234,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5551,6 +5818,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5605,7 +5879,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5618,7 +5892,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5705,7 +5979,7 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" } }, @@ -5721,6 +5995,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5865,6 +6146,43 @@ ], "title" : "Doku" }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, "DotpayDetails" : { "additionalProperties" : false, "properties" : { @@ -6090,7 +6408,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6381,29 +6700,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6724,7 +7020,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -6946,6 +7243,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7072,6 +7376,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7086,8 +7391,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7096,6 +7404,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7120,7 +7430,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7138,7 +7447,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7178,9 +7489,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7257,10 +7565,6 @@ "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint.", "type" : "string" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7310,7 +7614,503 @@ } } }, - "PaymentLinkResource" : { + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7343,7 +8143,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7356,7 +8156,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -7365,6 +8165,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -7380,8 +8187,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -7419,7 +8233,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -7430,11 +8244,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **completed**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -7633,7 +8470,7 @@ }, "order" : { "x-addedInVersion" : "64", - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "shopperLocale" : { @@ -7688,6 +8525,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7939,7 +8783,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -8012,9 +8856,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8155,7 +8996,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8268,9 +9109,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8703,7 +9541,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8807,9 +9645,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9112,7 +9947,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9138,6 +9973,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -9402,34 +10241,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -9691,6 +10502,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -9760,13 +10574,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -9856,7 +10671,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10198,6 +11013,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -10515,6 +11352,121 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, "post-orders-basic" : { "summary" : "Create an order", "value" : { @@ -13525,7 +14477,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v67.json b/json/CheckoutService-v67.json index 5603a09..2f9400f 100644 --- a/json/CheckoutService-v67.json +++ b/json/CheckoutService-v67.json @@ -9,7 +9,8 @@ "version" : "67", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v67/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v67/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=67) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:10Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,75 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, "/donations" : { "post" : { "tags" : [ @@ -201,7 +271,6 @@ ], "summary" : "Start a transaction for donations", "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", - "x-addedInVersion" : "67", "operationId" : "post-donations", "x-groupName" : "Payments", "x-sortIndex" : 5, @@ -821,7 +890,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -836,7 +905,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -974,7 +1043,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -1124,7 +1193,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4472,6 +4541,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4526,6 +4607,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4561,6 +4646,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4573,6 +4661,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -4844,7 +4970,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4922,9 +5048,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5084,8 +5207,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -5107,9 +5230,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5667,6 +5787,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -5721,7 +5848,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -5734,7 +5861,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -5836,12 +5963,12 @@ }, "storePaymentMethod" : { "x-addedInVersion" : "50", - "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. From api version 68 use `storePaymentMethodMode` instead.", + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", "type" : "boolean" }, "themeId" : { "x-addedInVersion" : "67", - "description" : "Use to set a theme to shopper other than default", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", "type" : "string" } }, @@ -5857,6 +5984,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6004,37 +6138,30 @@ "DonationResponse" : { "properties" : { "amount" : { - "x-addedInVersion" : "67", "description" : "Authorised amount in the transaction.", "$ref" : "#/components/schemas/Amount" }, "donationAccount" : { - "x-addedInVersion" : "67", "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", "type" : "string" }, "id" : { - "x-addedInVersion" : "67", "description" : "Your unique resource identifier.", "type" : "string" }, "merchantAccount" : { - "x-addedInVersion" : "67", "description" : "The merchant account identifier, with which you want to process the transaction.", "type" : "string" }, "payment" : { - "x-addedInVersion" : "67", "description" : "Action to be taken for completing the payment.", "$ref" : "#/components/schemas/PaymentResponse" }, "reference" : { - "x-addedInVersion" : "67", "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", "type" : "string" }, "status" : { - "x-addedInVersion" : "67", "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", "enum" : [ "completed", @@ -6270,7 +6397,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -6561,29 +6689,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -6904,7 +7009,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -7126,6 +7232,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -7252,6 +7365,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -7266,8 +7380,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -7276,6 +7393,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -7300,7 +7419,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -7318,7 +7436,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -7349,9 +7469,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -7391,10 +7508,6 @@ "description" : "Contains updated information regarding the order in case order information was provided in the request.", "$ref" : "#/components/schemas/CheckoutOrderResponse" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -7586,7 +7699,7 @@ "type" : "string" }, "donationOriginalPspReference" : { - "description" : "PSP reference of the transaction from which the donation token is generated.", + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", "type" : "string" }, "donationToken" : { @@ -7671,7 +7784,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -7744,9 +7857,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -7887,7 +7997,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -7946,7 +8056,7 @@ "donationAccount" ] }, - "PaymentLinkResource" : { + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -7979,7 +8089,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -7992,7 +8102,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -8001,6 +8111,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -8016,8 +8133,15 @@ "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", "type" : "string" }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -8029,6 +8153,21 @@ "description" : "A reference that is used to uniquely identify the payment in future communications about the payment status.", "type" : "string" }, + "requiredShopperFields" : { + "x-addedInVersion" : "67", + "description" : "List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\nPossible values:\n* **billingAddress** – The address where to send the invoice.\n* **deliveryAddress** – The address where the purchased goods should be delivered.\n* **shopperEmail** – The shopper's email address.\n* **shopperName** – The shopper's full name.\n* **telephoneNumber** – The shopper's phone number.\n", + "items" : { + "enum" : [ + "billingAddress", + "deliveryAddress", + "shopperEmail", + "shopperName", + "telephoneNumber" + ], + "type" : "string" + }, + "type" : "array" + }, "returnUrl" : { "description" : "Website URL used for redirection after payment is completed.\nIf provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.", "type" : "string" @@ -8055,7 +8194,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -8066,11 +8205,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **completed**: The shopper completed the payment.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -8086,7 +8248,7 @@ }, "themeId" : { "x-addedInVersion" : "67", - "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page.If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", "type" : "string" }, "url" : { @@ -8274,7 +8436,7 @@ }, "order" : { "x-addedInVersion" : "64", - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "shopperLocale" : { @@ -8329,6 +8491,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -8580,7 +8749,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -8653,9 +8822,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8796,7 +8962,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8906,9 +9072,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9307,7 +9470,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -9411,9 +9574,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -9716,7 +9876,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -9742,6 +9902,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -10006,34 +10170,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -10295,6 +10431,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -10364,13 +10503,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -10460,7 +10600,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -10938,6 +11078,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -11255,6 +11417,59 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, "post-donations-donations" : { "summary" : "Start a donation transaction", "value" : { @@ -11264,15 +11479,14 @@ }, "reference" : "YOUR_DONATION_REFERENCE", "paymentMethod" : { - "type" : "scheme", - "cvc" : "123" + "type" : "scheme" }, "donationToken" : "YOUR_DONATION_TOKEN", "donationOriginalPspReference" : "991559660454807J", "donationAccount" : "CHARITY_ACCOUNT", "returnUrl" : "https://your-company.com/...", "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", - "shopperInteraction" : "Ecommerce" + "shopperInteraction" : "ContAuth" } }, "post-donations-donations-200" : { @@ -11313,7 +11527,7 @@ "returnUrl" : "https://your-company.com/...", "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", "donationAccount" : "CHARITY_ACCOUNT", - "shopperInteraction" : "Ecommerce", + "shopperInteraction" : "ContAuth", "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", "recurringProcessingModel" : "CardOnFile" } @@ -14328,7 +14542,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v68.json b/json/CheckoutService-v68.json index 3dd7f2e..dc8aaa3 100644 --- a/json/CheckoutService-v68.json +++ b/json/CheckoutService-v68.json @@ -9,7 +9,8 @@ "version" : "68", "x-publicVersion" : true, "title" : "Adyen Checkout API", - "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v68/payments\n```", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v68/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=68) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T09:15:10Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -194,6 +195,75 @@ } } }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, "/donations" : { "post" : { "tags" : [ @@ -201,7 +271,6 @@ ], "summary" : "Start a transaction for donations", "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", - "x-addedInVersion" : "67", "operationId" : "post-donations", "x-groupName" : "Payments", "x-sortIndex" : 5, @@ -821,7 +890,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -836,7 +905,7 @@ "content" : { "application/json" : { "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -974,7 +1043,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -1124,7 +1193,7 @@ } }, "schema" : { - "$ref" : "#/components/schemas/PaymentLinkResource" + "$ref" : "#/components/schemas/PaymentLinkResponse" } } }, @@ -4671,6 +4740,18 @@ "holderName" ] }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, "CardDetails" : { "additionalProperties" : false, "properties" : { @@ -4725,6 +4806,10 @@ "description" : "The name of the card holder.", "type" : "string" }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, "number" : { "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", "type" : "string" @@ -4760,6 +4845,9 @@ "alliancedata", "card", "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", "entercash" ], "type" : "string" @@ -4772,6 +4860,44 @@ ], "title" : "Card" }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, "CellulantDetails" : { "additionalProperties" : false, "properties" : { @@ -5043,7 +5169,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -5121,9 +5247,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5283,8 +5406,8 @@ }, "required" : [ "merchantAccount", - "amount", - "reference" + "reference", + "amount" ] }, "CheckoutCreateOrderResponse" : { @@ -5306,9 +5429,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -5917,7 +6037,7 @@ "type" : "integer" }, "channel" : { - "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* **iOS**\n* **Android**\n* **Web**", "enum" : [ "iOS", "Android", @@ -5938,6 +6058,11 @@ "format" : "date-time", "type" : "string" }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, "deliveryAddress" : { "description" : "The address where the purchased goods should be delivered.", "$ref" : "#/components/schemas/Address" @@ -5986,7 +6111,7 @@ "additionalProperties" : { "type" : "string" }, - "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", "type" : "object" }, "mpiData" : { @@ -6061,7 +6186,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -6205,7 +6330,7 @@ "type" : "integer" }, "channel" : { - "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* **iOS**\n* **Android**\n* **Web**", "enum" : [ "iOS", "Android", @@ -6226,6 +6351,11 @@ "format" : "date-time", "type" : "string" }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, "deliveryAddress" : { "description" : "The address where the purchased goods should be delivered.", "$ref" : "#/components/schemas/Address" @@ -6279,7 +6409,7 @@ "additionalProperties" : { "type" : "string" }, - "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", "type" : "object" }, "mpiData" : { @@ -6324,6 +6454,7 @@ "$ref" : "#/components/schemas/RiskData" }, "sessionData" : { + "description" : "The payment session data you need to pass to your front end.", "type" : "string" }, "shopperEmail" : { @@ -6357,7 +6488,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -6463,6 +6594,13 @@ "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6517,7 +6655,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -6530,7 +6668,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "installmentOptions" : { @@ -6647,7 +6785,7 @@ }, "themeId" : { "x-addedInVersion" : "67", - "description" : "Use to set a theme to shopper other than default", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", "type" : "string" } }, @@ -6663,6 +6801,13 @@ "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -6810,37 +6955,30 @@ "DonationResponse" : { "properties" : { "amount" : { - "x-addedInVersion" : "67", "description" : "Authorised amount in the transaction.", "$ref" : "#/components/schemas/Amount" }, "donationAccount" : { - "x-addedInVersion" : "67", "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", "type" : "string" }, "id" : { - "x-addedInVersion" : "67", "description" : "Your unique resource identifier.", "type" : "string" }, "merchantAccount" : { - "x-addedInVersion" : "67", "description" : "The merchant account identifier, with which you want to process the transaction.", "type" : "string" }, "payment" : { - "x-addedInVersion" : "67", "description" : "Action to be taken for completing the payment.", "$ref" : "#/components/schemas/PaymentResponse" }, "reference" : { - "x-addedInVersion" : "67", "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", "type" : "string" }, "status" : { - "x-addedInVersion" : "67", "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", "enum" : [ "completed", @@ -7076,7 +7214,8 @@ "description" : "**genericissuer**", "enum" : [ "eps", - "onlineBanking_SK" + "onlineBanking_SK", + "onlineBanking_CZ" ], "type" : "string" } @@ -7367,29 +7506,6 @@ ], "title" : "Klarna" }, - "LianLianPayDetails" : { - "additionalProperties" : false, - "properties" : { - "telephoneNumber" : { - "description" : "", - "type" : "string" - }, - "type" : { - "description" : "**lianlianpay**", - "enum" : [ - "lianlianpay_ebanking_enterprise", - "lianlianpay_ebanking_credit", - "lianlianpay_ebanking_debit" - ], - "type" : "string" - } - }, - "required" : [ - "type", - "telephoneNumber" - ], - "title" : "Lianlian Pay" - }, "LineItem" : { "properties" : { "amountExcludingTax" : { @@ -7739,7 +7855,8 @@ "description" : "**openinvoice**", "enum" : [ "openinvoice", - "afterpay_directdebit" + "afterpay_directdebit", + "atome_pos" ], "type" : "string" } @@ -7961,6 +8078,13 @@ "description" : "The captured amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -8087,6 +8211,7 @@ "paybright", "affirm", "affirm_pos", + "trustlyvector", "oney", "facilypay", "facilypay_3x", @@ -8101,8 +8226,11 @@ "wechatpaySDK", "wechatpayQR", "wechatpayWeb", + "wallet_IN", "payu_IN_cashcard", "payu_IN_nb", + "upi_qr", + "paytm", "molpay_ebanking_VN", "openbanking_UK", "ebanking_FI", @@ -8111,6 +8239,8 @@ "swish", "twint", "pix", + "walley", + "walley_b2b", "molpay_fpx", "konbini", "directEbanking", @@ -8135,7 +8265,6 @@ "onlinebanking_IN", "fawry", "atome", - "atome_pos", "moneybookers", "naps", "nordea", @@ -8153,7 +8282,9 @@ "molpay_bankislam", "molpay_publicbank", "fpx_agrobank", - "wallet_IN", + "touchngo", + "maybank2u_mae", + "duitnow", "twint_pos", "alipay_hk", "alipay_hk_web", @@ -8184,9 +8315,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -8226,10 +8354,6 @@ "description" : "Contains updated information regarding the order in case order information was provided in the request.", "$ref" : "#/components/schemas/CheckoutOrderResponse" }, - "paymentMethod" : { - "description" : "The payment method used in the transaction.", - "type" : "string" - }, "pspReference" : { "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", "type" : "string" @@ -8426,7 +8550,7 @@ "type" : "string" }, "donationOriginalPspReference" : { - "description" : "PSP reference of the transaction from which the donation token is generated.", + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", "type" : "string" }, "donationToken" : { @@ -8511,7 +8635,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -8584,9 +8708,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -8727,7 +8848,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -8786,7 +8907,7 @@ "donationAccount" ] }, - "PaymentLinkResource" : { + "PaymentLinkResponse" : { "properties" : { "allowedPaymentMethods" : { "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", @@ -8819,7 +8940,7 @@ "type" : "string" }, "deliverAt" : { - "description" : "The date and time the purchased goods should be delivered. In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`.", + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", "format" : "date-time", "type" : "string" }, @@ -8832,7 +8953,7 @@ "type" : "string" }, "expiresAt" : { - "description" : "The date that the payment link expires, in ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum expiry date should be 70 days from when the payment link is created. If not provided, the default expiry is set to 24 hours after the payment link is created.", + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", "type" : "string" }, "id" : { @@ -8841,6 +8962,13 @@ "readOnly" : true, "type" : "string" }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, "lineItems" : { "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", "items" : { @@ -8857,15 +8985,14 @@ "type" : "string" }, "metadata" : { - "x-addedInVersion" : "68", "additionalProperties" : { "type" : "string" }, - "description" : "Metadata settings to apply to the payment.", + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", "type" : "object" }, "recurringProcessingModel" : { - "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", "enum" : [ "CardOnFile", "Subscription", @@ -8877,6 +9004,21 @@ "description" : "A reference that is used to uniquely identify the payment in future communications about the payment status.", "type" : "string" }, + "requiredShopperFields" : { + "x-addedInVersion" : "67", + "description" : "List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\nPossible values:\n* **billingAddress** – The address where to send the invoice.\n* **deliveryAddress** – The address where the purchased goods should be delivered.\n* **shopperEmail** – The shopper's email address.\n* **shopperName** – The shopper's full name.\n* **telephoneNumber** – The shopper's phone number.\n", + "items" : { + "enum" : [ + "billingAddress", + "deliveryAddress", + "shopperEmail", + "shopperName", + "telephoneNumber" + ], + "type" : "string" + }, + "type" : "array" + }, "returnUrl" : { "description" : "Website URL used for redirection after payment is completed.\nIf provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.", "type" : "string" @@ -8903,7 +9045,7 @@ "$ref" : "#/components/schemas/Name" }, "shopperReference" : { - "description" : "A unique identifier for the shopper (for example, user ID or account ID).", + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", "type" : "string" }, "splits" : { @@ -8914,11 +9056,34 @@ "type" : "array" }, "status" : { - "description" : "Status of the payment link. Possible values:\n* **active**\n* **expired**\n* **paymentPending** (v68 and later)\n* **completed** (v66 and later)\n* **paid** (v65 and earlier)", + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **completed**: The shopper completed the payment.\n* **paymentPending**: The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.", "enum" : [ "active", "completed", "expired", + "paid", "paymentPending" ], "type" : "string" @@ -8944,7 +9109,7 @@ }, "themeId" : { "x-addedInVersion" : "67", - "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page.If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", "type" : "string" }, "url" : { @@ -9154,7 +9319,7 @@ }, "order" : { "x-addedInVersion" : "64", - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "shopperLocale" : { @@ -9209,6 +9374,13 @@ "description" : "The refund amount.", "$ref" : "#/components/schemas/Amount" }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, "merchantAccount" : { "description" : "The merchant account that is used to process the payment.", "type" : "string" @@ -9465,7 +9637,7 @@ "$ref" : "#/components/schemas/ThreeDSecureData" }, "order" : { - "description" : "Contains the order information which is required for partial payments.", + "description" : "The order information required for partial payments.", "$ref" : "#/components/schemas/CheckoutOrder" }, "orderReference" : { @@ -9538,9 +9710,6 @@ { "$ref" : "#/components/schemas/KlarnaDetails" }, - { - "$ref" : "#/components/schemas/LianLianPayDetails" - }, { "$ref" : "#/components/schemas/MasterpassDetails" }, @@ -9681,7 +9850,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -9791,9 +9960,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -10197,7 +10363,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -10301,9 +10467,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -10622,7 +10785,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -10648,6 +10811,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -10912,34 +11079,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -11201,6 +11340,9 @@ }, "message" : { "type" : "string" + }, + "pspReference" : { + "type" : "string" } } }, @@ -11270,13 +11412,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -11366,7 +11509,7 @@ "type" : "string" }, "expiryYear" : { - "description" : "The year the card expires.", + "description" : "The year the card expires, for example **2022**.", "type" : "string" }, "holderName" : { @@ -11686,7 +11829,7 @@ "value" : "05" } ], - "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)", + "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)", "enum" : [ "01", "02", @@ -12052,6 +12195,28 @@ "UpdatePaymentLinkRequest" : { "properties" : { "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], "description" : "Status of the payment link. Possible values:\n* **expired**", "enum" : [ "expired" @@ -12369,6 +12534,59 @@ "url" : "https://test.adyen.link/PL61C53A8B97E6915A" } }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, "post-donations-donations" : { "summary" : "Start a donation transaction", "value" : { @@ -12378,15 +12596,14 @@ }, "reference" : "YOUR_DONATION_REFERENCE", "paymentMethod" : { - "type" : "scheme", - "cvc" : "123" + "type" : "scheme" }, "donationToken" : "YOUR_DONATION_TOKEN", "donationOriginalPspReference" : "991559660454807J", "donationAccount" : "CHARITY_ACCOUNT", "returnUrl" : "https://your-company.com/...", "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", - "shopperInteraction" : "Ecommerce" + "shopperInteraction" : "ContAuth" } }, "post-donations-donations-200" : { @@ -12427,7 +12644,7 @@ "returnUrl" : "https://your-company.com/...", "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", "donationAccount" : "CHARITY_ACCOUNT", - "shopperInteraction" : "Ecommerce", + "shopperInteraction" : "ContAuth", "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", "recurringProcessingModel" : "CardOnFile" } @@ -15442,7 +15659,7 @@ "type" : "yandex_promsvyazbank" }, { - "name" : "Sberbank Online", + "name" : "SberPay", "type" : "yandex_sberbank" }, { diff --git a/json/CheckoutService-v69.json b/json/CheckoutService-v69.json new file mode 100644 index 0000000..6a9f521 --- /dev/null +++ b/json/CheckoutService-v69.json @@ -0,0 +1,18117 @@ +{ + "openapi" : "3.1.0", + "servers" : [ + { + "url" : "https://checkout-test.adyen.com/v69" + } + ], + "info" : { + "version" : "69", + "x-publicVersion" : true, + "title" : "Adyen Checkout API", + "description" : "Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort).\n\nThis API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments).\n\n## Authentication\nEach request to the Checkout API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_Checkout_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nCheckout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://checkout-test.adyen.com/v69/payments\n```\n\n## Release notes\nHave a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=69) to find out what changed in this version!", + "x-timestamp" : "2022-05-24T15:28:44Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "Payments", + "Payment links", + "Modifications", + "Orders", + "Classic Checkout SDK", + "Utility" + ], + "tags" : [ + { + "name" : "Modifications" + }, + { + "name" : "Orders" + }, + { + "name" : "Classic Checkout SDK" + }, + { + "name" : "Utility" + }, + { + "name" : "Payments" + }, + { + "name" : "Payment links" + } + ], + "paths" : { + "/cancels" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Cancel an authorised payment", + "description" : "Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**TECHNICAL_CANCEL** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook).\n\nIf you want to cancel a payment using the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) endpoint instead.\n\nIf you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).", + "operationId" : "post-cancels", + "x-groupName" : "Modifications", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateStandalonePaymentCancelRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/StandalonePaymentCancelResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/StandalonePaymentCancelResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/cardDetails" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get the list of brands on the card", + "description" : "Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details).\n\nIf you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.\n\n", + "operationId" : "post-cardDetails", + "x-groupName" : "Payments", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-cardDetails-basic-200" + }, + "supported-brands" : { + "$ref" : "#/components/examples/post-cardDetails-supported-brands-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CardDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + }, + "/donations" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction for donations", + "description" : "Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request.\n\nFor more information, see [Donations](https://docs.adyen.com/online-payments/donations).", + "operationId" : "post-donations", + "x-groupName" : "Payments", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations" + }, + "donations-with-token" : { + "$ref" : "#/components/examples/post-donations-donations-with-token" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentDonationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "donations" : { + "$ref" : "#/components/examples/post-donations-donations-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DonationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/orders" : { + "post" : { + "tags" : [ + "Orders" + ], + "summary" : "Create an order", + "description" : "Creates an order to be used for partial payments. Make a POST `/orders` call before making a `/payments` call when processing payments with different payment methods.", + "operationId" : "post-orders", + "x-groupName" : "Orders", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-orders-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutCreateOrderRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-orders-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutCreateOrderResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/orders/cancel" : { + "post" : { + "tags" : [ + "Orders" + ], + "summary" : "Cancel an order", + "description" : "Cancels an order. Cancellation of an order results in an automatic rollback of all payments made in the order, either by canceling or refunding the payment, depending on the type of payment method.", + "operationId" : "post-orders-cancel", + "x-groupName" : "Orders", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-orders-cancel-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutCancelOrderRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-orders-cancel-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutCancelOrderResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/originKeys" : { + "post" : { + "tags" : [ + "Utility" + ], + "summary" : "Create originKey values for domains", + "description" : "This operation takes the origin domains and returns a JSON object containing the corresponding origin keys for the domains. \n> If you're still using origin key for your Web Drop-in or Components integration, we recommend [switching to client key](https://docs.adyen.com/development-resources/client-side-authentication/migrate-from-origin-key-to-client-key). This allows you to use a single key for all origins, add or remove origins without generating a new key, and detect the card type from the number entered in your payment form. ", + "deprecated" : true, + "x-deprecatedInVersion" : "67", + "operationId" : "post-originKeys", + "x-groupName" : "Utility", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-originKeys-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutUtilityRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-originKeys-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutUtilityResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/paymentLinks" : { + "post" : { + "tags" : [ + "Payment links" + ], + "summary" : "Create a payment link", + "description" : "Creates a payment link to our hosted payment form where shoppers can pay. The list of payment methods presented to the shopper depends on the `currency` and `country` parameters sent in the request.\n\nFor more information, refer to [Pay by Link documentation](https://docs.adyen.com/online-payments/pay-by-link#create-payment-links-through-api).", + "operationId" : "post-paymentLinks", + "x-groupName" : "Payment links", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-paymentLinks-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentLinkRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-paymentLinks-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentLinkResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentLinkResponse" + } + } + }, + "description" : "Created - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/paymentLinks/{linkId}" : { + "get" : { + "tags" : [ + "Payment links" + ], + "summary" : "Get a payment link", + "description" : "Retrieves the payment link details using the payment link `id`.", + "operationId" : "get-paymentLinks-linkId", + "x-groupName" : "Payment links", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the payment link.", + "name" : "linkId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/get-paymentLinks-linkId-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentLinkResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Payment links" + ], + "summary" : "Update the status of a payment link", + "description" : "Updates the status of a payment link. Use this endpoint to [force the expiry of a payment link](https://docs.adyen.com/online-payments/pay-by-link#update-payment-link-status).", + "operationId" : "patch-paymentLinks-linkId", + "x-groupName" : "Payment links", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/patch-paymentLinks-linkId-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/UpdatePaymentLinkRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "Unique identifier of the payment link.", + "name" : "linkId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/patch-paymentLinks-linkId-basic-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentLinkResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/paymentMethods" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Get a list of available payment methods", + "description" : "Queries the available payment methods for a transaction based on the transaction context (like amount, country, and currency). Besides giving back a list of the available payment methods, the response also returns which input details you need to collect from the shopper (to be submitted to `/payments`).\n\nAlthough we highly recommend using this endpoint to ensure you are always offering the most up-to-date list of payment methods, its usage is optional. You can, for example, also cache the `/paymentMethods` response and update it once a week.", + "operationId" : "post-paymentMethods", + "x-groupName" : "Payments", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-paymentMethods-basic" + }, + "filtered" : { + "$ref" : "#/components/examples/post-paymentMethods-filtered" + }, + "include-oneclick" : { + "$ref" : "#/components/examples/post-paymentMethods-include-oneclick" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentMethodsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-paymentMethods-basic-200" + }, + "filtered" : { + "$ref" : "#/components/examples/post-paymentMethods-filtered-200" + }, + "include-oneclick" : { + "$ref" : "#/components/examples/post-paymentMethods-include-oneclick-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentMethodsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/paymentMethods/balance" : { + "post" : { + "tags" : [ + "Orders" + ], + "summary" : "Get the balance of a gift card", + "description" : "Retrieves the balance remaining on a shopper's gift card. To check a gift card's balance, make a POST `/paymentMethods/balance` call and include the gift card's details inside a `paymentMethod` object.", + "operationId" : "post-paymentMethods-balance", + "x-groupName" : "Orders", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-paymentMethods-balance-basic" + }, + "plastix" : { + "$ref" : "#/components/examples/post-paymentMethods-balance-plastix" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutBalanceCheckRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "plastix" : { + "$ref" : "#/components/examples/post-paymentMethods-balance-plastix-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CheckoutBalanceCheckResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/paymentSession" : { + "post" : { + "tags" : [ + "Classic Checkout SDK" + ], + "summary" : "Create a payment session", + "description" : "Provides the data object that can be used to start the Checkout SDK. To set up the payment, pass its amount, currency, and other required parameters. We use this to optimise the payment flow and perform better risk assessment of the transaction.\n\nFor more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).", + "operationId" : "post-paymentSession", + "x-groupName" : "Classic Checkout SDK", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "android" : { + "$ref" : "#/components/examples/post-paymentSession-android" + }, + "enableOneClick" : { + "$ref" : "#/components/examples/post-paymentSession-enableOneClick" + }, + "ios" : { + "$ref" : "#/components/examples/post-paymentSession-ios" + }, + "split" : { + "$ref" : "#/components/examples/post-paymentSession-split" + }, + "web" : { + "$ref" : "#/components/examples/post-paymentSession-web" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentSetupRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "enableOneClick" : { + "$ref" : "#/components/examples/post-paymentSession-enableOneClick-200" + }, + "web" : { + "$ref" : "#/components/examples/post-paymentSession-web-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentSetupResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Start a transaction", + "description" : "Sends payment parameters (like amount, country, and currency) together with other required input details collected from the shopper. To know more about required parameters for specific payment methods, refer to our [payment method guides](https://docs.adyen.com/payment-methods). \nThe response depends on the [payment flow](https://docs.adyen.com/payment-methods#payment-flow):\n* For a direct flow, the response includes a `pspReference` and a `resultCode` with the payment result, for example **Authorised** or **Refused**. \n* For a redirect or additional action, the response contains an `action` object. ", + "operationId" : "post-payments", + "x-groupName" : "Payments", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "applepay" : { + "$ref" : "#/components/examples/post-payments-applepay" + }, + "card-3d-secure-2-web" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-2-web" + }, + "card-3d-secure-direct" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-direct" + }, + "card-3d-secure-securedfields" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-securedfields" + }, + "card-direct" : { + "$ref" : "#/components/examples/post-payments-card-direct" + }, + "card-securedfields" : { + "$ref" : "#/components/examples/post-payments-card-securedfields" + }, + "enableOneClick-SF" : { + "$ref" : "#/components/examples/post-payments-enableOneClick-SF" + }, + "enableOneClick-raw" : { + "$ref" : "#/components/examples/post-payments-enableOneClick-raw" + }, + "giropay" : { + "$ref" : "#/components/examples/post-payments-giropay" + }, + "googlepay" : { + "$ref" : "#/components/examples/post-payments-googlepay" + }, + "ideal" : { + "$ref" : "#/components/examples/post-payments-ideal" + }, + "klarna" : { + "$ref" : "#/components/examples/post-payments-klarna" + }, + "oneclick-direct" : { + "$ref" : "#/components/examples/post-payments-oneclick-direct" + }, + "oneclick-securedfields" : { + "$ref" : "#/components/examples/post-payments-oneclick-securedfields" + }, + "recurring" : { + "$ref" : "#/components/examples/post-payments-recurring" + }, + "sofort" : { + "$ref" : "#/components/examples/post-payments-sofort" + }, + "split" : { + "$ref" : "#/components/examples/post-payments-split" + }, + "subscription-first-transaction" : { + "$ref" : "#/components/examples/post-payments-subscription-first-transaction" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "card-3d-secure-2-web" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-2-web-200" + }, + "card-3d-secure-direct" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-direct-200" + }, + "card-3d-secure-securedfields" : { + "$ref" : "#/components/examples/post-payments-card-3d-secure-securedfields-200" + }, + "card-direct" : { + "$ref" : "#/components/examples/post-payments-card-direct-200" + }, + "card-securedfields" : { + "$ref" : "#/components/examples/post-payments-card-securedfields-200" + }, + "enableOneClick-SF" : { + "$ref" : "#/components/examples/post-payments-enableOneClick-SF-200" + }, + "enableOneClick-raw" : { + "$ref" : "#/components/examples/post-payments-enableOneClick-raw-200" + }, + "giropay" : { + "$ref" : "#/components/examples/post-payments-giropay-200" + }, + "ideal" : { + "$ref" : "#/components/examples/post-payments-ideal-200" + }, + "sofort" : { + "$ref" : "#/components/examples/post-payments-sofort-200" + }, + "subscription-first-transaction" : { + "$ref" : "#/components/examples/post-payments-subscription-first-transaction-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/details" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Submit details for a payment", + "description" : "Submits details for a payment created using `/payments`. This step is only needed when no final state has been reached on the `/payments` request, for example when the shopper was redirected to another page to complete the payment.\n\n", + "operationId" : "post-payments-details", + "x-groupName" : "Payments", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "3d-secure-2-native" : { + "$ref" : "#/components/examples/post-payments-details-3d-secure-2-native" + }, + "redirect" : { + "$ref" : "#/components/examples/post-payments-details-redirect" + } + }, + "schema" : { + "$ref" : "#/components/schemas/DetailsRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentDetailsResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/result" : { + "post" : { + "tags" : [ + "Classic Checkout SDK" + ], + "summary" : "Verify a payment result", + "description" : "Verifies the payment result using the payload returned from the Checkout SDK.\n\nFor more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).", + "operationId" : "post-payments-result", + "x-groupName" : "Classic Checkout SDK", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-payments-result-basic" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentVerificationRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentVerificationResponse" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/{paymentPspReference}/amountUpdates" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Update an authorised amount", + "description" : "Increases or decreases the authorised payment amount and returns a unique reference for this request. You get the outcome of the request asynchronously, in an [**AUTHORISATION_ADJUSTMENT** webhook](https://docs.adyen.com/development-resources/webhooks/understand-notifications#event-codes).\n\nYou can only update authorised amounts that have not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures).\n\nThe amount you specify in the request is the updated amount, which is larger or smaller than the initial authorised amount.\n\nFor more information, refer to [Authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#use-cases).", + "operationId" : "post-payments-paymentPspReference-amountUpdates", + "x-groupName" : "Modifications", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentAmountUpdateRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment.", + "name" : "paymentPspReference", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentAmountUpdateResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentAmountUpdateResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/{paymentPspReference}/cancels" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Cancel an authorised payment", + "description" : "Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/paymentPspReference/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCELLATION** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook).\n\nIf you want to cancel a payment but don't have the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cancels) endpoint instead.\n\nIf you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).", + "operationId" : "post-payments-paymentPspReference-cancels", + "x-groupName" : "Modifications", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentCancelRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to cancel. ", + "name" : "paymentPspReference", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentCancelResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentCancelResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/{paymentPspReference}/captures" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Capture an authorised payment", + "description" : " Captures an authorised payment and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CAPTURE** webhook](https://docs.adyen.com/online-payments/capture#capture-notification).\n\nYou can capture either the full authorised amount or a part of the authorised amount. By default, any unclaimed amount after a partial capture gets cancelled. This does not apply if you enabled multiple partial captures on your account and the payment method supports multiple partial captures. \n\n[Automatic capture](https://docs.adyen.com/online-payments/capture#automatic-capture) is the default setting for most payment methods. In these cases, you don't need to make capture requests. However, making capture requests for payments that are captured automatically does not result in double charges.\n\nFor more information, refer to [Capture](https://docs.adyen.com/online-payments/capture).", + "operationId" : "post-payments-paymentPspReference-captures", + "x-groupName" : "Modifications", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentCaptureRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to capture.", + "name" : "paymentPspReference", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentCaptureResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentCaptureResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/{paymentPspReference}/refunds" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Refund a captured payment", + "description" : "Refunds a payment that has been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**REFUND** webhook](https://docs.adyen.com/online-payments/refund#refund-webhook).\n\nYou can refund either the full captured amount or a part of the captured amount. You can also perform multiple partial refunds, as long as their sum doesn't exceed the captured amount.\n\n> Some payment methods do not support partial refunds. To learn if a payment method supports partial refunds, refer to the payment method page such as [cards](https://docs.adyen.com/payment-methods/cards#supported-cards), [iDEAL](https://docs.adyen.com/payment-methods/ideal), or [Klarna](https://docs.adyen.com/payment-methods/klarna). \n\nIf you want to refund a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/refund).", + "operationId" : "post-payments-paymentPspReference-refunds", + "x-groupName" : "Modifications", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentRefundRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to refund.", + "name" : "paymentPspReference", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentRefundResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentRefundResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/payments/{paymentPspReference}/reversals" : { + "post" : { + "tags" : [ + "Modifications" + ], + "summary" : "Refund or cancel a payment", + "description" : "[Refunds](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/refunds) a payment if it has already been captured, and [cancels](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) a payment if it has not yet been captured. Returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCEL_OR_REFUND** webhook](https://docs.adyen.com/online-payments/reverse#cancel-or-refund-webhook).\n\nThe reversed amount is always the full payment amount.\n> Do not use this request for payments that involve multiple partial captures.\n\nFor more information, refer to [Reversal](https://docs.adyen.com/online-payments/reversal).", + "operationId" : "post-payments-paymentPspReference-reversals", + "x-groupName" : "Modifications", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreatePaymentReversalRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to reverse. ", + "name" : "paymentPspReference", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentReversalResource" + } + } + }, + "description" : "OK - the request has succeeded.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentReversalResource" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "400" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-400" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-401" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-403" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-422" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + }, + "500" : { + "content" : { + "application/json" : { + "examples" : { + "generic" : { + "$ref" : "#/components/examples/generic-500" + } + }, + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/sessions" : { + "post" : { + "tags" : [ + "Payments" + ], + "summary" : "Create a payment session", + "description" : "Creates a payment session for [Web Drop-in](https://docs.adyen.com/online-payments/web-drop-in) and [Web Components](https://docs.adyen.com/online-payments/web-components) integrations.\n\nThe response contains encrypted payment session data. The front end then uses the session data to make any required server-side calls for the payment flow.\n\nYou get the payment outcome asynchronously, in an [AUTHORISATION](https://docs.adyen.com/api-explorer/#/Webhooks/latest/post/AUTHORISATION) webhook.", + "x-addedInVersion" : "68", + "operationId" : "post-sessions", + "x-groupName" : "Payments", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "enableOneClick" : { + "$ref" : "#/components/examples/post-sessions-enableOneClick" + }, + "klarna" : { + "$ref" : "#/components/examples/post-sessions-klarna" + }, + "success" : { + "$ref" : "#/components/examples/post-sessions-success" + } + }, + "schema" : { + "$ref" : "#/components/schemas/CreateCheckoutSessionRequest" + } + } + } + }, + "parameters" : [ + { + "$ref" : "#/components/parameters/Idempotency-Key" + } + ], + "responses" : { + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateCheckoutSessionResponse" + } + } + }, + "description" : "Created - the request has been fulfilled and has resulted in one or more new resources being created.", + "headers" : { + "Idempotency-Key" : { + "$ref" : "#/components/headers/Idempotency-Key" + } + } + } + } + } + } + }, + "components" : { + "schemas" : { + "AccountInfo" : { + "properties" : { + "accountAgeIndicator" : { + "description" : "Indicator for the length of time since this shopper account was created in the merchant's environment.\nAllowed values:\n* notApplicable\n* thisTransaction\n* lessThan30Days\n* from30To60Days\n* moreThan60Days", + "enum" : [ + "notApplicable", + "thisTransaction", + "lessThan30Days", + "from30To60Days", + "moreThan60Days" + ], + "type" : "string" + }, + "accountChangeDate" : { + "description" : "Date when the shopper's account was last changed.", + "format" : "date-time", + "type" : "string" + }, + "accountChangeIndicator" : { + "description" : "Indicator for the length of time since the shopper's account was last updated.\nAllowed values:\n* thisTransaction\n* lessThan30Days\n* from30To60Days\n* moreThan60Days", + "enum" : [ + "thisTransaction", + "lessThan30Days", + "from30To60Days", + "moreThan60Days" + ], + "type" : "string" + }, + "accountCreationDate" : { + "description" : "Date when the shopper's account was created.", + "format" : "date-time", + "type" : "string" + }, + "accountType" : { + "x-addedInVersion" : "50", + "description" : "Indicates the type of account. For example, for a multi-account card product.\nAllowed values:\n* notApplicable\n* credit\n* debit", + "enum" : [ + "notApplicable", + "credit", + "debit" + ], + "type" : "string" + }, + "addCardAttemptsDay" : { + "description" : "Number of attempts the shopper tried to add a card to their account in the last day.", + "format" : "int32", + "type" : "integer" + }, + "deliveryAddressUsageDate" : { + "description" : "Date the selected delivery address was first used.", + "format" : "date-time", + "type" : "string" + }, + "deliveryAddressUsageIndicator" : { + "description" : "Indicator for the length of time since this delivery address was first used.\nAllowed values:\n* thisTransaction\n* lessThan30Days\n* from30To60Days\n* moreThan60Days", + "enum" : [ + "thisTransaction", + "lessThan30Days", + "from30To60Days", + "moreThan60Days" + ], + "type" : "string" + }, + "homePhone" : { + "deprecated" : true, + "x-deprecatedInVersion" : "68", + "x-deprecatedMessage" : "Use `ThreeDS2RequestData.homePhone` instead.", + "description" : "Shopper's home phone number (including the country code).", + "type" : "string" + }, + "mobilePhone" : { + "deprecated" : true, + "x-deprecatedInVersion" : "68", + "x-deprecatedMessage" : "Use `ThreeDS2RequestData.mobilePhone` instead.", + "description" : "Shopper's mobile phone number (including the country code).", + "type" : "string" + }, + "passwordChangeDate" : { + "description" : "Date when the shopper last changed their password.", + "format" : "date-time", + "type" : "string" + }, + "passwordChangeIndicator" : { + "description" : "Indicator when the shopper has changed their password.\nAllowed values:\n* notApplicable\n* thisTransaction\n* lessThan30Days\n* from30To60Days\n* moreThan60Days", + "enum" : [ + "notApplicable", + "thisTransaction", + "lessThan30Days", + "from30To60Days", + "moreThan60Days" + ], + "type" : "string" + }, + "pastTransactionsDay" : { + "description" : "Number of all transactions (successful and abandoned) from this shopper in the past 24 hours.", + "format" : "int32", + "type" : "integer" + }, + "pastTransactionsYear" : { + "description" : "Number of all transactions (successful and abandoned) from this shopper in the past year.", + "format" : "int32", + "type" : "integer" + }, + "paymentAccountAge" : { + "description" : "Date this payment method was added to the shopper's account.", + "format" : "date-time", + "type" : "string" + }, + "paymentAccountIndicator" : { + "description" : "Indicator for the length of time since this payment method was added to this shopper's account.\nAllowed values:\n* notApplicable\n* thisTransaction\n* lessThan30Days\n* from30To60Days\n* moreThan60Days", + "enum" : [ + "notApplicable", + "thisTransaction", + "lessThan30Days", + "from30To60Days", + "moreThan60Days" + ], + "type" : "string" + }, + "purchasesLast6Months" : { + "description" : "Number of successful purchases in the last six months.", + "format" : "int32", + "type" : "integer" + }, + "suspiciousActivity" : { + "description" : "Whether suspicious activity was recorded on this account.", + "type" : "boolean" + }, + "workPhone" : { + "deprecated" : true, + "x-deprecatedInVersion" : "68", + "x-deprecatedMessage" : "Use `ThreeDS2RequestData.workPhone` instead.", + "description" : "Shopper's work phone number (including the country code).", + "type" : "string" + } + } + }, + "AcctInfo" : { + "properties" : { + "chAccAgeInd" : { + "description" : "Length of time that the cardholder has had the account with the 3DS Requestor. \nAllowed values:\n* **01** — No account\n* **02** — Created during this transaction\n* **03** — Less than 30 days\n* **04** — 30–60 days\n* **05** — More than 60 days", + "enum" : [ + "01", + "02", + "03", + "04", + "05" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "chAccChange" : { + "description" : "Date that the cardholder’s account with the 3DS Requestor was last changed, including Billing or Shipping address, new payment account, or new user(s) added. \nFormat: **YYYYMMDD**", + "type" : "string" + }, + "chAccChangeInd" : { + "description" : "Length of time since the cardholder’s account information with the 3DS Requestor was last changed, including Billing or Shipping address, new payment account, or new user(s) added. \nAllowed values:\n* **01** — Changed during this transaction\n* **02** — Less than 30 days\n* **03** — 30–60 days\n* **04** — More than 60 days", + "enum" : [ + "01", + "02", + "03", + "04" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "chAccPwChange" : { + "description" : "Date that cardholder’s account with the 3DS Requestor had a password change or account reset. \nFormat: **YYYYMMDD**", + "type" : "string" + }, + "chAccPwChangeInd" : { + "description" : "Indicates the length of time since the cardholder’s account with the 3DS Requestor had a password change or account reset. \nAllowed values:\n* **01** — No change\n* **02** — Changed during this transaction\n* **03** — Less than 30 days\n* **04** — 30–60 days\n* **05** — More than 60 days", + "enum" : [ + "01", + "02", + "03", + "04", + "05" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "chAccString" : { + "description" : "Date that the cardholder opened the account with the 3DS Requestor. \nFormat: **YYYYMMDD**", + "type" : "string" + }, + "nbPurchaseAccount" : { + "description" : "Number of purchases with this cardholder account during the previous six months. Max length: 4 characters.", + "type" : "string" + }, + "paymentAccAge" : { + "description" : "String that the payment account was enrolled in the cardholder’s account with the 3DS Requestor. \nFormat: **YYYYMMDD**", + "type" : "string" + }, + "paymentAccInd" : { + "description" : "Indicates the length of time that the payment account was enrolled in the cardholder’s account with the 3DS Requestor. \nAllowed values:\n* **01** — No account (guest checkout)\n* **02** — During this transaction\n* **03** — Less than 30 days\n* **04** — 30–60 days\n* **05** — More than 60 days", + "enum" : [ + "01", + "02", + "03", + "04", + "05" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "provisionAttemptsDay" : { + "description" : "Number of Add Card attempts in the last 24 hours. Max length: 3 characters.", + "type" : "string" + }, + "shipAddressUsage" : { + "description" : "String when the shipping address used for this transaction was first used with the 3DS Requestor. \nFormat: **YYYYMMDD**", + "type" : "string" + }, + "shipAddressUsageInd" : { + "description" : "Indicates when the shipping address used for this transaction was first used with the 3DS Requestor. \nAllowed values:\n* **01** — This transaction\n* **02** — Less than 30 days\n* **03** — 30–60 days\n* **04** — More than 60 days", + "enum" : [ + "01", + "02", + "03", + "04" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "shipNameIndicator" : { + "description" : "Indicates if the Cardholder Name on the account is identical to the shipping Name used for this transaction. \nAllowed values:\n* **01** — Account Name identical to shipping Name\n* **02** — Account Name different to shipping Name", + "enum" : [ + "01", + "02" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "suspiciousAccActivity" : { + "description" : "Indicates whether the 3DS Requestor has experienced suspicious activity (including previous fraud) on the cardholder account. \nAllowed values:\n* **01** — No suspicious activity has been observed\n* **02** — Suspicious activity has been observed", + "enum" : [ + "01", + "02" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "txnActivityDay" : { + "description" : "Number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous 24 hours. Max length: 3 characters.", + "maxLength" : 3, + "type" : "string" + }, + "txnActivityYear" : { + "description" : "Number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous year. Max length: 3 characters.", + "maxLength" : 3, + "type" : "string" + } + } + }, + "AchDetails" : { + "additionalProperties" : false, + "properties" : { + "bankAccountNumber" : { + "description" : "The bank account number (without separators).", + "type" : "string" + }, + "bankLocationId" : { + "description" : "The bank routing number of the account. The field value is `nil` in most cases.", + "type" : "string" + }, + "encryptedBankAccountNumber" : { + "description" : "Encrypted bank account number. The bank account number (without separators).", + "type" : "string" + }, + "encryptedBankLocationId" : { + "description" : "Encrypted location id. The bank routing number of the account. The field value is `nil` in most cases.", + "type" : "string" + }, + "ownerName" : { + "description" : "The name of the bank account holder.\nIf you submit a name with non-Latin characters, we automatically replace some of them with corresponding Latin characters to meet the FATF recommendations. For example:\n* χ12 is converted to ch12.\n* üA is converted to euA.\n* Peter Møller is converted to Peter Mller, because banks don't accept 'ø'.\nAfter replacement, the ownerName must have at least three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them must be a valid Latin character (A-Z, a-z). For example:\n* John17 - allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n> If provided details don't match the required format, the response returns the error message: 203 'Invalid bank account holder name'.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "ach", + "description" : "**ach**", + "enum" : [ + "ach" + ], + "type" : "string" + } + }, + "required" : [ + "bankAccountNumber" + ], + "title" : "ACH Direct Debit" + }, + "AdditionalData3DSecure" : { + "properties" : { + "allow3DS2" : { + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.threeDSRequestData.nativeThreeDS` instead.", + "description" : "Indicates if you are able to process 3D Secure 2 transactions natively on your payment page. Send this parameter when you are using `/payments` endpoint with any of our [native 3D Secure 2 solutions](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).\n\n > This parameter only indicates readiness to support native 3D Secure 2 authentication. To specify if you _want_ to perform 3D Secure, use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) or send the `executeThreeD` parameter.\n\nPossible values:\n* **true** - Ready to support native 3D Secure 2 authentication. Setting this to true does not mean always applying 3D Secure 2. Adyen still selects the version of 3D Secure based on configuration to optimize authorisation rates and improve the shopper's experience.\n* **false** – Not ready to support native 3D Secure 2 authentication. Adyen will not offer 3D Secure 2 to your shopper regardless of your configuration.\n", + "type" : "string" + }, + "executeThreeD" : { + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.attemptAuthentication` instead", + "description" : "Indicates if you want to perform 3D Secure authentication on a transaction.\n\n > Alternatively, you can use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) to configure rules for applying 3D Secure.\n\nPossible values:\n* **true** – Perform 3D Secure authentication.\n* **false** – Don't perform 3D Secure authentication. Note that this setting results in refusals if the issuer mandates 3D Secure because of the PSD2 directive or other, national regulations. \n", + "type" : "string" + }, + "mpiImplementationType" : { + "description" : "In case of Secure+, this field must be set to **CUPSecurePlus**.", + "type" : "string" + }, + "scaExemption" : { + "description" : "Indicates the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest) that you want to request for the transaction.\n\n Possible values:\n* **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** ", + "type" : "string" + }, + "threeDSVersion" : { + "description" : "Indicates your preference for the 3D Secure version. \n> If you use this parameter, you override the checks from Adyen's Authentication Engine. We recommend to use this field only if you have an extensive knowledge of 3D Secure.\n\nPossible values:\n* **1.0.2**: Apply 3D Secure version 1.0.2. \n* **2.1.0**: Apply 3D Secure version 2.1.0. \n* **2.2.0**: Apply 3D Secure version 2.2.0. If the issuer does not support version 2.2.0, we will fall back to 2.1.0.\n\nThe following rules apply:\n* If you prefer 2.1.0 or 2.2.0 but we receive a negative `transStatus` in the `ARes`, we will apply the fallback policy configured in your account. For example, if the configuration is to fall back to 3D Secure 1, we will apply version 1.0.2.\n* If you prefer 2.1.0 or 2.2.0 but the BIN is not enrolled, you will receive an error.\n\n", + "type" : "string" + } + } + }, + "AdditionalDataAirline" : { + "properties" : { + "airline.agency_invoice_number" : { + "description" : "Reference number for the invoice, issued by the agency.\n* minLength: 1\n* maxLength: 6", + "type" : "string" + }, + "airline.agency_plan_name" : { + "description" : "2-letter agency plan identifier; alphabetical.\n* minLength: 2\n* maxLength: 2", + "type" : "string" + }, + "airline.airline_code" : { + "description" : "[IATA](https://www.iata.org/services/pages/codes.aspx) 3-digit accounting code (PAX); numeric. It identifies the carrier.\n* Format: IATA 3-digit accounting code (PAX)\n* Example: KLM = 074\n* minLength: 3\n* maxLength: 3", + "type" : "string" + }, + "airline.airline_designator_code" : { + "description" : "[IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX); alphabetical. It identifies the carrier.\n* Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter airline code\n* Example: KLM = KL\n* minLength: 2\n* maxLength: 2", + "type" : "string" + }, + "airline.boarding_fee" : { + "description" : "Chargeable amount for boarding the plane.\nThe transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).\n* minLength: 1\n* maxLength: 18", + "type" : "string" + }, + "airline.computerized_reservation_system" : { + "description" : "The [CRS](https://en.wikipedia.org/wiki/Computer_reservation_system) used to make the reservation and purchase the ticket.\n* Format: alphanumeric.\n* minLength: 4\n* maxLength: 4", + "type" : "string" + }, + "airline.customer_reference_number" : { + "description" : "Reference number; alphanumeric.\n* minLength: 0\n* maxLength: 20", + "type" : "string" + }, + "airline.document_type" : { + "description" : "Optional 2-digit code; alphanumeric. It identifies the type of product of the transaction. The description of the code may appear on credit card statements.\n* Format: 2-digit code\n* Example: Passenger ticket = 01\n* minLength: 2\n* maxLength: 2", + "type" : "string" + }, + "airline.flight_date" : { + "description" : "Flight departure date. Local time `(HH:mm)` is optional.\n* Date format: `yyyy-MM-dd`\n* Date and time format: `yyyy-MM-dd HH:mm`\n* minLength: 10\n* maxLength: 16", + "type" : "string" + }, + "airline.leg.carrier_code" : { + "description" : "[IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX); alphabetical. It identifies the carrier.\nThis field is required/mandatory if the airline data includes leg details.\n* Format: IATA 2-letter airline code\n* Example: KLM = KL\n* minLength: 2\n* maxLength: 2", + "type" : "string" + }, + "airline.leg.class_of_travel" : { + "description" : "1-letter travel class identifier; alphabetical. There is no standard; however, the following codes are used rather consistently:\n* F: first class\n* J: business class\n* Y: economy class\n* W: premium economy\n\nLimitations:\n* minLength: 1\n* maxLength: 1", + "type" : "string" + }, + "airline.leg.date_of_travel" : { + "description" : "\t\nDate and time of travel. [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-compliant.\n* Format: `yyyy-MM-dd HH:mm`\n* minLength: 16\n* maxLength: 16", + "type" : "string" + }, + "airline.leg.depart_airport" : { + "description" : "Alphabetical identifier of the departure airport.\nThis field is required if the airline data includes leg details.\n* Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter airport code.\n* Example: Amsterdam = AMS\n* minLength: 3\n* maxLength: 3", + "type" : "string" + }, + "airline.leg.depart_tax" : { + "description" : "[Departure tax](https://en.wikipedia.org/wiki/Departure_tax). Amount charged by a country to an individual upon their leaving. The transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).\n* minLength: 1\n* maxLength: 12", + "type" : "string" + }, + "airline.leg.destination_code" : { + "description" : "Alphabetical identifier of the destination/arrival airport.\nThis field is required/mandatory if the airline data includes leg details.\n* Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter airport code.\n* Example: Amsterdam = AMS\n* minLength: 3\n* maxLength: 3", + "type" : "string" + }, + "airline.leg.fare_base_code" : { + "description" : "[Fare basis code](https://en.wikipedia.org/wiki/Fare_basis_code); alphanumeric.\n* minLength: 1\n* maxLength: 7", + "type" : "string" + }, + "airline.leg.flight_number" : { + "description" : "The flight identifier.\n* minLength: 1\n* maxLength: 5", + "type" : "string" + }, + "airline.leg.stop_over_code" : { + "description" : "1-letter code that indicates whether the passenger is entitled to make a stopover. Only two types of characters are allowed:\n* O: Stopover allowed\n* X: Stopover not allowed\n\nLimitations:\n* minLength: 1\n* maxLength: 1", + "type" : "string" + }, + "airline.passenger.date_of_birth" : { + "description" : "Date of birth of the passenger.\n\nDate format: `yyyy-MM-dd`\n* minLength: 10\n* maxLength: 10", + "type" : "string" + }, + "airline.passenger.first_name" : { + "description" : "Passenger first name/given name.\n> This field is required/mandatory if the airline data includes passenger details or leg details.", + "type" : "string" + }, + "airline.passenger.last_name" : { + "description" : "Passenger last name/family name.\n> This field is required/mandatory if the airline data includes passenger details or leg details.", + "type" : "string" + }, + "airline.passenger.telephone_number" : { + "description" : "Telephone number of the passenger, including country code. This is an alphanumeric field that can include the '+' and '-' signs.\n* minLength: 3\n* maxLength: 30", + "type" : "string" + }, + "airline.passenger.traveller_type" : { + "description" : "Passenger type code (PTC). IATA PTC values are 3-letter alphabetical. Example: ADT, SRC, CNN, INS.\n\nHowever, several carriers use non-standard codes that can be up to 5 alphanumeric characters.\n* minLength: 3\n* maxLength: 6", + "type" : "string" + }, + "airline.passenger_name" : { + "description" : "Passenger name, initials, and a title.\n* Format: last name + first name or initials + title.\n* Example: *FLYER / MARY MS*.\n* minLength: 1\n* maxLength: 49", + "type" : "string" + }, + "airline.ticket_issue_address" : { + "description" : "Address of the place/agency that issued the ticket.\n* minLength: 0\n* maxLength: 16", + "type" : "string" + }, + "airline.ticket_number" : { + "description" : "The ticket's unique identifier.\n* minLength: 1\n* maxLength: 150", + "type" : "string" + }, + "airline.travel_agency_code" : { + "description" : "IATA number, also ARC number or ARC/IATA number. Unique identifier number for travel agencies.\n* minLength: 1\n* maxLength: 8", + "type" : "string" + }, + "airline.travel_agency_name" : { + "description" : "The name of the travel agency.\n* minLength: 1\n* maxLength: 25", + "type" : "string" + } + }, + "required" : [ + "airline.passenger_name" + ] + }, + "AdditionalDataCarRental" : { + "properties" : { + "carRental.checkOutDate" : { + "description" : "Pick-up date.\n* Date format: `yyyyMMdd`", + "type" : "string" + }, + "carRental.customerServiceTollFreeNumber" : { + "description" : "The customer service phone number of the car rental company.\n* Format: Alphanumeric\n* maxLength: 17", + "type" : "string" + }, + "carRental.daysRented" : { + "description" : "Number of days for which the car is being rented.\n* Format: Numeric\n* maxLength: 19", + "type" : "string" + }, + "carRental.fuelCharges" : { + "description" : "Any fuel charges associated with the rental.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "carRental.insuranceCharges" : { + "description" : "Any insurance charges associated with the rental.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "carRental.locationCity" : { + "description" : "The city from which the car is rented.\n* Format: Alphanumeric\n* maxLength: 18", + "type" : "string" + }, + "carRental.locationCountry" : { + "description" : "The country from which the car is rented.\n* Format: Alphanumeric\n* maxLength: 2", + "type" : "string" + }, + "carRental.locationStateProvince" : { + "description" : "The state or province from where the car is rented.\n* Format: Alphanumeric\n* maxLength: 3", + "type" : "string" + }, + "carRental.noShowIndicator" : { + "description" : "Indicates if the customer was a \"no-show\" (neither keeps nor cancels their booking).\n* Y - Customer was a no show.\n* N - Not applicable.", + "type" : "string" + }, + "carRental.oneWayDropOffCharges" : { + "description" : "Charge associated with not returning a vehicle to the original rental location.", + "type" : "string" + }, + "carRental.rate" : { + "description" : "Daily rental rate.\n* Format: Alphanumeric\n* maxLength: 12", + "type" : "string" + }, + "carRental.rateIndicator" : { + "description" : "Specifies whether the given rate is applied daily or weekly.\n* D - Daily rate.\n* W - Weekly rate.", + "type" : "string" + }, + "carRental.rentalAgreementNumber" : { + "description" : "The rental agreement number associated with this car rental.\n* Format: Alphanumeric\n* maxLength: 9", + "type" : "string" + }, + "carRental.rentalClassId" : { + "description" : "Daily rental rate.\n* Format: Alphanumeric\n* maxLength: 12", + "type" : "string" + }, + "carRental.renterName" : { + "description" : "The name of the person renting the car.\n* Format: Alphanumeric\n* maxLength: 26", + "type" : "string" + }, + "carRental.returnCity" : { + "description" : "The city where the car must be returned.\n* Format: Alphanumeric\n* maxLength: 18", + "type" : "string" + }, + "carRental.returnCountry" : { + "description" : "The country where the car must be returned.\n* Format: Alphanumeric\n* maxLength: 2", + "type" : "string" + }, + "carRental.returnDate" : { + "description" : "The last date to return the car by.\n* Date format: `yyyyMMdd`", + "type" : "string" + }, + "carRental.returnLocationId" : { + "description" : "Agency code, phone number, or address abbreviation\n* Format: Alphanumeric\n* maxLength: 10", + "type" : "string" + }, + "carRental.returnStateProvince" : { + "description" : "The state or province where the car must be returned.\n* Format: Alphanumeric\n* maxLength: 3", + "type" : "string" + }, + "carRental.taxExemptIndicator" : { + "description" : "Indicates whether the goods or services were tax-exempt, or tax was not collected.\n\nValues:\n* Y - Goods or services were tax exempt\n* N - Tax was not collected", + "type" : "string" + }, + "travelEntertainmentAuthData.duration" : { + "description" : "Number of nights. This should be included in the auth message.\n* Format: Numeric\n* maxLength: 2", + "type" : "string" + }, + "travelEntertainmentAuthData.market" : { + "description" : "Indicates what market-specific dataset will be submitted or is being submitted. Value should be \"A\" for Car rental. This should be included in the auth message.\n* Format: Alphanumeric\n* maxLength: 1", + "type" : "string" + } + } + }, + "AdditionalDataCommon" : { + "properties" : { + "RequestedTestErrorResponseCode" : { + "description" : "Triggers test scenarios that allow to replicate certain communication errors.\n\nAllowed values:\n* **NO_CONNECTION_AVAILABLE** – There wasn't a connection available to service the outgoing communication.\nThis is a transient, retriable error since no messaging could be initiated to an issuing system (or third-party acquiring system). Therefore, the header Transient-Error: true is returned in the response. A subsequent request using the same idempotency key will be processed as if it was the first request.\n* **IOEXCEPTION_RECEIVED** – Something went wrong during transmission of the message or receiving the response.\nThis is a classified as non-transient because the message could have been received by the issuing party and been acted upon. No transient error header is returned. If using idempotency, the (error) response is stored as the final result for the idempotency key. Subsequent messages with the same idempotency key not be processed beyond returning the stored response.", + "type" : "string" + }, + "authorisationType" : { + "description" : "Flags a card payment request for either pre-authorisation or final authorisation. For more information, refer to [Authorisation types](https://docs.adyen.com/online-payments/adjust-authorisation#authorisation-types).\n\nAllowed values:\n* **PreAuth** – flags the payment request to be handled as a pre-authorisation.\n* **FinalAuth** – flags the payment request to be handled as a final authorisation.", + "type" : "string" + }, + "customRoutingFlag" : { + "description" : "Allows you to determine or override the acquirer account that should be used for the transaction.\n\nIf you need to process a payment with an acquirer different from a default one, you can set up a corresponding configuration on the Adyen payments platform. Then you can pass a custom routing flag in a payment request's additional data to target a specific acquirer.\n\nTo enable this functionality, contact [Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "industryUsage" : { + "x-enum" : [ + { + "description" : "An incremental charge is carried out because of a no-show for a guaranteed reservation.", + "value" : "NoShow" + }, + { + "description" : "An incremental charge is carried out to process an additional payment after the original services have been rendered and the respective payment has been processed.", + "value" : "DelayedCharge" + } + ], + "description" : "In case of [asynchronous authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#adjust-authorisation), this field denotes why the additional payment is made.\n\nPossible values:\n\n * **NoShow**: An incremental charge is carried out because of a no-show for a guaranteed reservation.\n\n * **DelayedCharge**: An incremental charge is carried out to process an additional payment after the original services have been rendered and the respective payment has been processed.", + "enum" : [ + "NoShow", + "DelayedCharge" + ], + "type" : "string" + }, + "networkTxReference" : { + "description" : "Allows you to link the transaction to the original or previous one in a subscription/card-on-file chain. This field is required for token-based transactions where Adyen does not tokenize the card.\n\nTransaction identifier from card schemes, for example, Mastercard Trace ID or the Visa Transaction ID.\n\nSubmit the original transaction ID of the contract in your payment request if you are not tokenizing card details with Adyen and are making a merchant-initiated transaction (MIT) for subsequent charges.\n\nMake sure you are sending `shopperInteraction` **ContAuth** and `recurringProcessingModel` **Subscription** or **UnscheduledCardOnFile** to ensure that the transaction is classified as MIT.", + "type" : "string" + }, + "overwriteBrand" : { + "description" : "Boolean indicator that can be optionally used for performing debit transactions on combo cards (for example, combo cards in Brazil). This is not mandatory but we recommend that you set this to true if you want to use the `selectedBrand` value to specify how to process the transaction.", + "type" : "string" + }, + "subMerchantCity" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the city of the actual merchant's address.\n* Format: alpha-numeric.\n* Maximum length: 13 characters.", + "type" : "string" + }, + "subMerchantCountry" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the three-letter country code of the actual merchant's address.\n* Format: alpha-numeric.\n* Fixed length: 3 characters.", + "type" : "string" + }, + "subMerchantID" : { + "description" : "This field contains an identifier of the actual merchant when a transaction is submitted via a payment facilitator. The payment facilitator must send in this unique ID.\n\nA unique identifier per submerchant that is required if the transaction is performed by a registered payment facilitator.\n* Format: alpha-numeric.\n* Fixed length: 15 characters.", + "type" : "string" + }, + "subMerchantName" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the name of the actual merchant.\n* Format: alpha-numeric.\n* Maximum length: 22 characters.", + "type" : "string" + }, + "subMerchantPostalCode" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the postal code of the actual merchant's address.\n* Format: alpha-numeric.\n* Maximum length: 10 characters.", + "type" : "string" + }, + "subMerchantState" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator, and if applicable to the country. This field must contain the state code of the actual merchant's address.\n* Format: alpha-numeric.\n* Maximum length: 3 characters.", + "type" : "string" + }, + "subMerchantStreet" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the street of the actual merchant's address.\n* Format: alpha-numeric.\n* Maximum length: 60 characters.", + "type" : "string" + }, + "subMerchantTaxId" : { + "description" : "This field is required if the transaction is performed by a registered payment facilitator. This field must contain the tax ID of the actual merchant.\n* Format: alpha-numeric.\n* Fixed length: 11 or 14 characters.", + "type" : "string" + } + } + }, + "AdditionalDataLevel23" : { + "properties" : { + "enhancedSchemeData.customerReference" : { + "description" : "Customer code, if supplied by a customer.\n\nEncoding: ASCII.\n\nMax length: 25 characters.\n\n> Required for Level 2 and Level 3 data.", + "type" : "string" + }, + "enhancedSchemeData.destinationCountryCode" : { + "description" : "Destination country code.\n\nEncoding: ASCII.\n\nMax length: 3 characters.", + "type" : "string" + }, + "enhancedSchemeData.destinationPostalCode" : { + "description" : "The postal code of a destination address.\n\nEncoding: ASCII.\n\nMax length: 10 characters.\n\n> Required for American Express.", + "type" : "string" + }, + "enhancedSchemeData.destinationStateProvinceCode" : { + "description" : "Destination state or province code.\n\nEncoding: ASCII.Max length: 3 characters.", + "type" : "string" + }, + "enhancedSchemeData.dutyAmount" : { + "description" : "Duty amount, in minor units.\n\nFor example, 2000 means USD 20.00.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.freightAmount" : { + "description" : "Shipping amount, in minor units.\n\nFor example, 2000 means USD 20.00.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].commodityCode" : { + "description" : "Item commodity code.\n\nEncoding: ASCII.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].description" : { + "description" : "Item description.\n\nEncoding: ASCII.\n\nMax length: 26 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].discountAmount" : { + "description" : "Discount amount, in minor units.\n\nFor example, 2000 means USD 20.00.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].productCode" : { + "description" : "Product code.\n\nEncoding: ASCII.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].quantity" : { + "description" : "Quantity, specified as an integer value.\n\nValue must be greater than 0.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].totalAmount" : { + "description" : "Total amount, in minor units.\n\nFor example, 2000 means USD 20.00.\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].unitOfMeasure" : { + "description" : "Item unit of measurement.\n\nEncoding: ASCII.\n\nMax length: 3 characters.", + "type" : "string" + }, + "enhancedSchemeData.itemDetailLine[itemNr].unitPrice" : { + "description" : "Unit price, specified in [minor units](https://docs.adyen.com/development-resources/currency-codes).\n\nMax length: 12 characters.", + "type" : "string" + }, + "enhancedSchemeData.orderDate" : { + "description" : "Order date.\n* Format: `ddMMyy`\n\nEncoding: ASCII.\n\nMax length: 6 characters.", + "type" : "string" + }, + "enhancedSchemeData.shipFromPostalCode" : { + "description" : "The postal code of a \"ship-from\" address.\n\nEncoding: ASCII.\n\nMax length: 10 characters.", + "type" : "string" + }, + "enhancedSchemeData.totalTaxAmount" : { + "description" : "Total tax amount, in minor units.\n\nFor example, 2000 means USD 20.00.\n\nMax length: 12 characters.\n\n> Required for Level 2 and Level 3 data.", + "type" : "string" + } + } + }, + "AdditionalDataLodging" : { + "properties" : { + "lodging.checkInDate" : { + "description" : "The arrival date.\n* Date format: `yyyyMMdd`", + "type" : "string" + }, + "lodging.checkOutDate" : { + "description" : "The departure date.\n* Date format: `yyyyMMdd`", + "type" : "string" + }, + "lodging.customerServiceTollFreeNumber" : { + "description" : "The toll free phone number for the hotel/lodgings.\n* Format: Alphanumeric\n* maxLength: 17", + "type" : "string" + }, + "lodging.fireSafetyActIndicator" : { + "description" : "Identifies that the facility complies with the Hotel and Motel Fire Safety Act of 1990. Values can be: 'Y' or 'N'.\n* Format: Alphabetic\n* maxLength: 1", + "type" : "string" + }, + "lodging.folioCashAdvances" : { + "description" : "The folio cash advances.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.folioNumber" : { + "description" : "Card acceptor’s internal invoice or billing ID reference number.\n* Format: Alphanumeric\n* maxLength: 25", + "type" : "string" + }, + "lodging.foodBeverageCharges" : { + "description" : "Any charges for food and beverages associated with the booking.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.noShowIndicator" : { + "description" : "Indicates if the customer was a \"no-show\" (neither keeps nor cancels their booking).\n\nValue should be Y or N.\n* Format: Numeric\n* maxLength: 1", + "type" : "string" + }, + "lodging.prepaidExpenses" : { + "description" : "Prepaid expenses for the booking.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.propertyPhoneNumber" : { + "description" : "Identifies specific lodging property location by its local phone number.\n* Format: Alphanumeric\n* maxLength: 17", + "type" : "string" + }, + "lodging.room1.numberOfNights" : { + "description" : "Total number of nights the room will be rented.\n* Format: Numeric\n* maxLength: 4", + "type" : "string" + }, + "lodging.room1.rate" : { + "description" : "The rate of the room.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.room1.tax" : { + "description" : "The total amount of tax to be paid.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.totalRoomTax" : { + "description" : "Total room tax amount.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "lodging.totalTax" : { + "description" : "Total tax amount.\n* Format: Numeric\n* maxLength: 12", + "type" : "string" + }, + "travelEntertainmentAuthData.duration" : { + "description" : "Number of nights. This should be included in the auth message.\n* Format: Numeric\n* maxLength: 2", + "type" : "string" + }, + "travelEntertainmentAuthData.market" : { + "description" : "Indicates what market-specific dataset will be submitted or is being submitted. Value should be \"H\" for Hotel. This should be included in the auth message.\n\n* Format: Alphanumeric\n* maxLength: 1", + "type" : "string" + } + } + }, + "AdditionalDataOpenInvoice" : { + "properties" : { + "openinvoicedata.merchantData" : { + "description" : "Holds different merchant data points like product, purchase, customer, and so on. It takes data in a Base64 encoded string.\n\nThe `merchantData` parameter needs to be added to the `openinvoicedata` signature at the end.\n\nSince the field is optional, if it's not included it does not impact computing the merchant signature.\n\nApplies only to Klarna.\n\nYou can contact Klarna for the format and structure of the string.", + "type" : "string" + }, + "openinvoicedata.numberOfLines" : { + "description" : "The number of invoice lines included in `openinvoicedata`.\n\nThere needs to be at least one line, so `numberOfLines` needs to be at least 1.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].currencyCode" : { + "description" : "The three-character ISO currency code.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].description" : { + "description" : "A text description of the product the invoice line refers to.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].itemAmount" : { + "description" : "The price for one item in the invoice line, represented in minor units.\n\nThe due amount for the item, VAT excluded.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].itemId" : { + "description" : "A unique id for this item. Required for RatePay if the description of each item is not unique.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].itemVatAmount" : { + "description" : "The VAT due for one item in the invoice line, represented in minor units.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].itemVatPercentage" : { + "description" : "The VAT percentage for one item in the invoice line, represented in minor units.\n\nFor example, 19% VAT is specified as 1900.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].numberOfItems" : { + "description" : "The number of units purchased of a specific product.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].returnShippingCompany" : { + "description" : "Name of the shipping company handling the the return shipment.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].returnTrackingNumber" : { + "description" : "The tracking number for the return of the shipment.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].returnTrackingUri" : { + "description" : "URI where the customer can track the return of their shipment.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].shippingCompany" : { + "description" : "Name of the shipping company handling the delivery.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].shippingMethod" : { + "description" : "Shipping method.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].trackingNumber" : { + "description" : "The tracking number for the shipment.", + "type" : "string" + }, + "openinvoicedataLine[itemNr].trackingUri" : { + "description" : "URI where the customer can track their shipment.", + "type" : "string" + } + } + }, + "AdditionalDataOpi" : { + "properties" : { + "opi.includeTransToken" : { + "description" : "Optional boolean indicator. Set to **true** if you want an ecommerce transaction to return an `opi.transToken` as additional data in the response.\n\nYou can store this Oracle Payment Interface token in your Oracle Opera database. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).", + "type" : "string" + } + } + }, + "AdditionalDataRatepay" : { + "properties" : { + "ratepay.installmentAmount" : { + "description" : "Amount the customer has to pay each month.", + "type" : "string" + }, + "ratepay.interestRate" : { + "description" : "Interest rate of this installment.", + "type" : "string" + }, + "ratepay.lastInstallmentAmount" : { + "description" : "Amount of the last installment.", + "type" : "string" + }, + "ratepay.paymentFirstday" : { + "description" : "Calendar day of the first payment.", + "type" : "string" + }, + "ratepaydata.deliveryDate" : { + "description" : "Date the merchant delivered the goods to the customer.", + "type" : "string" + }, + "ratepaydata.dueDate" : { + "description" : "Date by which the customer must settle the payment.", + "type" : "string" + }, + "ratepaydata.invoiceDate" : { + "description" : "Invoice date, defined by the merchant. If not included, the invoice date is set to the delivery date.", + "type" : "string" + }, + "ratepaydata.invoiceId" : { + "description" : "Identification name or number for the invoice, defined by the merchant.", + "type" : "string" + } + } + }, + "AdditionalDataRetry" : { + "properties" : { + "retry.chainAttemptNumber" : { + "description" : "The number of times the transaction (not order) has been retried between different payment service providers. For instance, the `chainAttemptNumber` set to 2 means that this transaction has been recently tried on another provider before being sent to Adyen.\n\n> If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.", + "type" : "string" + }, + "retry.orderAttemptNumber" : { + "description" : "The index of the attempt to bill a particular order, which is identified by the `merchantOrderReference` field. For example, if a recurring transaction fails and is retried one day later, then the order number for these attempts would be 1 and 2, respectively.\n\n> If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.", + "type" : "string" + }, + "retry.skipRetry" : { + "description" : "The Boolean value indicating whether Adyen should skip or retry this transaction, if possible.\n\n> If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.", + "type" : "string" + } + } + }, + "AdditionalDataRisk" : { + "properties" : { + "riskdata.[customFieldName]" : { + "description" : "The data for your custom risk field. For more information, refer to [Create custom risk fields](https://docs.adyen.com/risk-management/configure-custom-risk-rules#step-1-create-custom-risk-fields).", + "type" : "string" + }, + "riskdata.basket.item[itemNr].amountPerItem" : { + "description" : "The price of item in the basket, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "type" : "string" + }, + "riskdata.basket.item[itemNr].brand" : { + "description" : "Brand of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].category" : { + "description" : "Category of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].color" : { + "description" : "Color of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].currency" : { + "description" : "The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217).", + "type" : "string" + }, + "riskdata.basket.item[itemNr].itemID" : { + "description" : "ID of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].manufacturer" : { + "description" : "Manufacturer of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].productTitle" : { + "description" : "A text description of the product the invoice line refers to.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].quantity" : { + "description" : "Quantity of the item purchased.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].receiverEmail" : { + "description" : "Email associated with the given product in the basket (usually in electronic gift cards).", + "type" : "string" + }, + "riskdata.basket.item[itemNr].size" : { + "description" : "Size of the item.", + "type" : "string" + }, + "riskdata.basket.item[itemNr].sku" : { + "description" : "[Stock keeping unit](https://en.wikipedia.org/wiki/Stock_keeping_unit).", + "type" : "string" + }, + "riskdata.basket.item[itemNr].upc" : { + "description" : "[Universal Product Code](https://en.wikipedia.org/wiki/Universal_Product_Code).", + "type" : "string" + }, + "riskdata.promotions.promotion[itemNr].promotionCode" : { + "description" : "Code of the promotion.", + "type" : "string" + }, + "riskdata.promotions.promotion[itemNr].promotionDiscountAmount" : { + "description" : "The discount amount of the promotion, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "type" : "string" + }, + "riskdata.promotions.promotion[itemNr].promotionDiscountCurrency" : { + "description" : "The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217).", + "type" : "string" + }, + "riskdata.promotions.promotion[itemNr].promotionDiscountPercentage" : { + "description" : "Promotion's percentage discount. It is represented in percentage value and there is no need to include the '%' sign.\n\ne.g. for a promotion discount of 30%, the value of the field should be 30.", + "type" : "string" + }, + "riskdata.promotions.promotion[itemNr].promotionName" : { + "description" : "Name of the promotion.", + "type" : "string" + }, + "riskdata.riskProfileReference" : { + "description" : "Reference number of the risk profile that you want to apply to the payment. If not provided or left blank, the merchant-level account's default risk profile will be applied to the payment. For more information, see [dynamically assign a risk profile to a payment](https://docs.adyen.com/risk-management/create-and-use-risk-profiles#dynamically-assign-a-risk-profile-to-a-payment).", + "type" : "string" + }, + "riskdata.skipRisk" : { + "description" : "If this parameter is provided with the value **true**, risk checks for the payment request are skipped and the transaction will not get a risk score.", + "type" : "string" + } + } + }, + "AdditionalDataRiskStandalone" : { + "properties" : { + "PayPal.CountryCode" : { + "description" : "Shopper's country of residence in the form of ISO standard 3166 2-character country codes.", + "type" : "string" + }, + "PayPal.EmailId" : { + "description" : "Shopper's email.", + "type" : "string" + }, + "PayPal.FirstName" : { + "description" : "Shopper's first name.", + "type" : "string" + }, + "PayPal.LastName" : { + "description" : "Shopper's last name.", + "type" : "string" + }, + "PayPal.PayerId" : { + "description" : "Unique PayPal Customer Account identification number. Character length and limitations: 13 single-byte alphanumeric characters.", + "type" : "string" + }, + "PayPal.Phone" : { + "description" : "Shopper's phone number.", + "type" : "string" + }, + "PayPal.ProtectionEligibility" : { + "description" : "Allowed values:\n* **Eligible** — Merchant is protected by PayPal's Seller Protection Policy for Unauthorized Payments and Item Not Received.\n\n* **PartiallyEligible** — Merchant is protected by PayPal's Seller Protection Policy for Item Not Received.\n\n* **Ineligible** — Merchant is not protected under the Seller Protection Policy.", + "type" : "string" + }, + "PayPal.TransactionId" : { + "description" : "Unique transaction ID of the payment.", + "type" : "string" + }, + "avsResultRaw" : { + "description" : "Raw AVS result received from the acquirer, where available. Example: D", + "type" : "string" + }, + "bin" : { + "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number. Required for [tokenized card request](https://docs.adyen.com/risk-management/standalone-risk#tokenised-pan-request).", + "type" : "string" + }, + "cvcResultRaw" : { + "description" : "Raw CVC result received from the acquirer, where available. Example: 1", + "type" : "string" + }, + "riskToken" : { + "description" : "Unique identifier or token for the shopper's card details.", + "type" : "string" + }, + "threeDAuthenticated" : { + "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment. Example: true", + "type" : "string" + }, + "threeDOffered" : { + "description" : "A Boolean value indicating whether 3DS was offered for this payment. Example: true", + "type" : "string" + }, + "tokenDataType" : { + "description" : "Required for PayPal payments only. The only supported value is: **paypal**.", + "type" : "string" + } + } + }, + "AdditionalDataSubMerchant" : { + "properties" : { + "subMerchant.numberOfSubSellers" : { + "description" : "Required for transactions performed by registered payment facilitators. Indicates the number of sub-merchants contained in the request. For example, **3**.", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].city" : { + "description" : "Required for transactions performed by registered payment facilitators. The city of the sub-merchant's address.\n* Format: Alphanumeric\n* Maximum length: 13 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].country" : { + "description" : "Required for transactions performed by registered payment facilitators. The three-letter country code of the sub-merchant's address. For example, **BRA** for Brazil. \n* Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)\n* Fixed length: 3 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].id" : { + "description" : "Required for transactions performed by registered payment facilitators. A unique identifier that you create for the sub-merchant, used by schemes to identify the sub-merchant. \n* Format: Alphanumeric\n* Maximum length: 15 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].mcc" : { + "description" : "Required for transactions performed by registered payment facilitators. The sub-merchant's 4-digit Merchant Category Code (MCC). \n* Format: Numeric\n* Fixed length: 4 digits", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].name" : { + "description" : "Required for transactions performed by registered payment facilitators. The name of the sub-merchant. Based on scheme specifications, this value will overwrite the shopper statement that will appear in the card statement.\n* Format: Alphanumeric\n* Maximum length: 22 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].postalCode" : { + "description" : "Required for transactions performed by registered payment facilitators. The postal code of the sub-merchant's address, without dashes.\n* Format: Numeric\n* Fixed length: 8 digits", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].state" : { + "description" : "Required for transactions performed by registered payment facilitators. The state code of the sub-merchant's address, if applicable to the country.\n* Format: Alphanumeric\n* Maximum length: 2 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].street" : { + "description" : "Required for transactions performed by registered payment facilitators. The street name and house number of the sub-merchant's address.\n* Format: Alphanumeric\n* Maximum length: 60 characters", + "type" : "string" + }, + "subMerchant.subSeller[subSellerNr].taxId" : { + "description" : "Required for transactions performed by registered payment facilitators. The tax ID of the sub-merchant.\n* Format: Numeric\n* Fixed length: 11 digits for the CPF or 14 digits for the CNPJ", + "type" : "string" + } + } + }, + "AdditionalDataTemporaryServices" : { + "properties" : { + "enhancedSchemeData.customerReference" : { + "description" : "Customer code, if supplied by a customer.\n* Encoding: ASCII\n* maxLength: 25", + "type" : "string" + }, + "enhancedSchemeData.employeeName" : { + "description" : "Name or ID associated with the individual working in a temporary capacity.\n* maxLength: 40", + "type" : "string" + }, + "enhancedSchemeData.jobDescription" : { + "description" : "Description of the job or task of the individual working in a temporary capacity.\n* maxLength: 40", + "type" : "string" + }, + "enhancedSchemeData.regularHoursRate" : { + "description" : "Amount paid per regular hours worked, minor units.\n* maxLength: 7", + "type" : "string" + }, + "enhancedSchemeData.regularHoursWorked" : { + "description" : "Amount of time worked during a normal operation for the task or job.\n* maxLength: 7", + "type" : "string" + }, + "enhancedSchemeData.requestName" : { + "description" : "Name of the individual requesting temporary services.\n* maxLength: 40", + "type" : "string" + }, + "enhancedSchemeData.tempStartDate" : { + "description" : "Date for the beginning of the pay period.\n* Format: ddMMyy\n* maxLength: 6", + "type" : "string" + }, + "enhancedSchemeData.tempWeekEnding" : { + "description" : "Date of the end of the billing cycle.\n* Format: ddMMyy\n* maxLength: 6", + "type" : "string" + }, + "enhancedSchemeData.totalTaxAmount" : { + "description" : "Total tax amount, in minor units. For example, 2000 means USD 20.00\n* maxLength: 12", + "type" : "string" + } + } + }, + "AdditionalDataWallets" : { + "properties" : { + "androidpay.token" : { + "description" : "The Android Pay token retrieved from the SDK.", + "type" : "string" + }, + "masterpass.transactionId" : { + "description" : "The Mastercard Masterpass Transaction ID retrieved from the SDK.", + "type" : "string" + }, + "payment.token" : { + "description" : "The Apple Pay token retrieved from the SDK.", + "type" : "string" + }, + "paywithgoogle.token" : { + "description" : "The Google Pay token retrieved from the SDK.", + "type" : "string" + }, + "samsungpay.token" : { + "description" : "The Samsung Pay token retrieved from the SDK.", + "type" : "string" + }, + "visacheckout.callId" : { + "description" : "The Visa Checkout Call ID retrieved from the SDK.", + "type" : "string" + } + } + }, + "Address" : { + "properties" : { + "city" : { + "description" : "The name of the city. Maximum length: 3000 characters.", + "maxLength" : 3000, + "type" : "string" + }, + "country" : { + "description" : "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.\n> If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.", + "type" : "string" + }, + "houseNumberOrName" : { + "description" : "The number or name of the house. Maximum length: 3000 characters.", + "maxLength" : 3000, + "type" : "string" + }, + "postalCode" : { + "description" : "A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries.", + "type" : "string" + }, + "stateOrProvince" : { + "description" : "The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.", + "type" : "string" + }, + "street" : { + "description" : "The name of the street. Maximum length: 3000 characters.\n> The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.", + "maxLength" : 3000, + "type" : "string" + } + }, + "required" : [ + "street", + "houseNumberOrName", + "city", + "postalCode", + "country" + ] + }, + "AfterpayDetails" : { + "additionalProperties" : false, + "properties" : { + "billingAddress" : { + "description" : "The address where to send the invoice.", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the goods should be delivered.", + "type" : "string" + }, + "personalDetails" : { + "description" : "Shopper name, date of birth, phone number, and email address.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "afterpay_default", + "description" : "**afterpay_default**", + "enum" : [ + "afterpay_default", + "afterpaytouch", + "afterpay_b2b" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "Afterpay" + }, + "AmazonPayDetails" : { + "additionalProperties" : false, + "properties" : { + "amazonPayToken" : { + "description" : "This is the `amazonPayToken` that you obtained from the [Get Checkout Session](https://amazon-pay-acquirer-guide.s3-eu-west-1.amazonaws.com/v1/amazon-pay-api-v2/checkout-session.html#get-checkout-session) response.", + "type" : "string" + }, + "type" : { + "default" : "amazonpay", + "description" : "**amazonpay**", + "enum" : [ + "amazonpay" + ], + "type" : "string" + } + }, + "title" : "Amazon Pay" + }, + "Amount" : { + "properties" : { + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", + "maxLength" : 3, + "minLength" : 3, + "type" : "string" + }, + "value" : { + "description" : "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "value", + "currency" + ] + }, + "AndroidPayDetails" : { + "additionalProperties" : false, + "properties" : { + "type" : { + "default" : "androidpay", + "description" : "**androidpay**", + "enum" : [ + "androidpay" + ], + "type" : "string" + } + }, + "title" : "Android Pay" + }, + "ApplePayDetails" : { + "additionalProperties" : false, + "properties" : { + "applePayToken" : { + "description" : "The stringified and base64 encoded `paymentData` you retrieved from the Apple framework.", + "maxLength" : 10000, + "type" : "string" + }, + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "applepay", + "description" : "**applepay**", + "enum" : [ + "applepay" + ], + "type" : "string" + } + }, + "required" : [ + "applePayToken" + ], + "title" : "Apple Pay" + }, + "ApplicationInfo" : { + "properties" : { + "adyenLibrary" : { + "description" : "Adyen-developed software, such as libraries and plugins, used to interact with the Adyen API. For example, Magento plugin, Java API library, etc.", + "$ref" : "#/components/schemas/CommonField" + }, + "adyenPaymentSource" : { + "description" : "Adyen-developed software to get payment details. For example, Checkout SDK, Secured Fields SDK, etc.", + "$ref" : "#/components/schemas/CommonField" + }, + "externalPlatform" : { + "description" : "Third-party developed platform used to initiate payment requests. For example, Magento, Zuora, etc.", + "$ref" : "#/components/schemas/ExternalPlatform" + }, + "merchantApplication" : { + "description" : "Merchant developed software, such as cashier application, used to interact with the Adyen API.", + "$ref" : "#/components/schemas/CommonField" + }, + "merchantDevice" : { + "description" : "Merchant device information.", + "$ref" : "#/components/schemas/MerchantDevice" + }, + "shopperInteractionDevice" : { + "description" : "Shopper interaction device, such as terminal, mobile device or web browser, to initiate payment requests.", + "$ref" : "#/components/schemas/ShopperInteractionDevice" + } + } + }, + "AuthenticationData" : { + "properties" : { + "attemptAuthentication" : { + "x-addedInVersion" : "69", + "x-enum" : [ + { + "description" : "Perform 3D Secure authentication.", + "value" : "always" + }, + { + "description" : "Don't perform 3D Secure authentication. If PSD2 SCA or other national regulations require authentication, the transaction gets declined.", + "value" : "never" + }, + { + "description" : "Do not perform 3D Secure authentication if not required by PSD2 SCA or other national regulations.", + "value" : "preferNo" + } + ], + "description" : "Indicates when 3D Secure authentication should be attempted. This overrides all other rules, including [Dynamic 3D Secure settings](https://docs.adyen.com/risk-management/dynamic-3d-secure).\n\nPossible values:\n\n* **always**: Perform 3D Secure authentication.\n* **never**: Don't perform 3D Secure authentication. If PSD2 SCA or other national regulations require authentication, the transaction gets declined.\n* **preferNo**: Do not perform 3D Secure authentication if not required by PSD2 SCA or other national regulations.", + "enum" : [ + "always", + "never", + "preferNo" + ], + "type" : "string" + }, + "authenticationOnly" : { + "x-addedInVersion" : "69", + "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.\nDefault: *false**.", + "type" : "boolean" + }, + "threeDSRequestData" : { + "x-addedInVersion" : "69", + "description" : "Object with additional parameters for the 3D Secure authentication flow.", + "$ref" : "#/components/schemas/ThreeDSRequestData" + } + } + }, + "Avs" : { + "properties" : { + "addressEditable" : { + "description" : "Indicates whether the shopper is allowed to modify the billing address for the current payment request.", + "type" : "boolean" + }, + "enabled" : { + "description" : "Specifies whether the shopper should enter their billing address during checkout.\n\nAllowed values:\n* yes — Perform AVS checks for every card payment.\n* automatic — Perform AVS checks only when required to optimize the conversion rate.\n* no — Do not perform AVS checks.", + "enum" : [ + "yes", + "no", + "automatic" + ], + "type" : "string" + } + } + }, + "BacsDirectDebitDetails" : { + "additionalProperties" : false, + "properties" : { + "bankAccountNumber" : { + "x-addedInVersion" : "65", + "description" : "The bank account number (without separators).", + "type" : "string" + }, + "bankLocationId" : { + "x-addedInVersion" : "65", + "description" : "The bank routing number of the account.", + "type" : "string" + }, + "holderName" : { + "x-addedInVersion" : "65", + "description" : "The name of the bank account holder.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "directdebit_GB", + "description" : "**directdebit_GB**", + "enum" : [ + "directdebit_GB" + ], + "type" : "string" + } + }, + "title" : "BACS Direct Debit" + }, + "BankAccount" : { + "properties" : { + "bankAccountNumber" : { + "description" : "The bank account number (without separators).", + "type" : "string" + }, + "bankCity" : { + "x-addedInVersion" : "18", + "description" : "The bank city.", + "type" : "string" + }, + "bankLocationId" : { + "description" : "The location id of the bank. The field value is `nil` in most cases.", + "type" : "string" + }, + "bankName" : { + "description" : "The name of the bank.", + "type" : "string" + }, + "bic" : { + "description" : "The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362) (BIC) is the SWIFT address assigned to a bank. The field value is `nil` in most cases.", + "type" : "string" + }, + "countryCode" : { + "description" : "Country code where the bank is located.\n\nA valid value is an ISO two-character country code (e.g. 'NL').", + "type" : "string" + }, + "iban" : { + "description" : "The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number) (IBAN).", + "type" : "string" + }, + "ownerName" : { + "description" : "The name of the bank account holder.\nIf you submit a name with non-Latin characters, we automatically replace some of them with corresponding Latin characters to meet the FATF recommendations. For example:\n* χ12 is converted to ch12.\n* üA is converted to euA.\n* Peter Møller is converted to Peter Mller, because banks don't accept 'ø'.\nAfter replacement, the ownerName must have at least three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them must be a valid Latin character (A-Z, a-z). For example:\n* John17 - allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n> If provided details don't match the required format, the response returns the error message: 203 'Invalid bank account holder name'.", + "type" : "string" + }, + "taxId" : { + "x-addedInVersion" : "18", + "description" : "The bank account holder's tax ID.", + "type" : "string" + } + } + }, + "BillDeskDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The issuer id of the shopper's selected bank.", + "type" : "string" + }, + "type" : { + "description" : "**billdesk**", + "enum" : [ + "billdesk_online", + "billdesk_wallet", + "onlinebanking_IN", + "wallet_IN" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "issuer" + ], + "title" : "BillDesk" + }, + "BlikDetails" : { + "additionalProperties" : false, + "properties" : { + "blikCode" : { + "description" : "BLIK code consisting of 6 digits.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "description" : "**blik**", + "enum" : [ + "blik" + ], + "type" : "string" + } + }, + "title" : "BLIK" + }, + "BrowserInfo" : { + "properties" : { + "acceptHeader" : { + "description" : "The accept header value of the shopper's browser.", + "maxLength" : 50, + "minLength" : 10, + "type" : "string" + }, + "colorDepth" : { + "x-addedInVersion" : "40", + "description" : "The color depth of the shopper's browser in bits per pixel. This should be obtained by using the browser's `screen.colorDepth` property. Accepted values: 1, 4, 8, 15, 16, 24, 30, 32 or 48 bit color depth.", + "format" : "int32", + "type" : "integer" + }, + "javaEnabled" : { + "x-addedInVersion" : "40", + "description" : "Boolean value indicating if the shopper's browser is able to execute Java.", + "type" : "boolean" + }, + "javaScriptEnabled" : { + "x-addedInVersion" : "40", + "default" : true, + "description" : "Boolean value indicating if the shopper's browser is able to execute JavaScript. A default 'true' value is assumed if the field is not present.", + "type" : "boolean" + }, + "language" : { + "x-addedInVersion" : "40", + "description" : "The `navigator.language` value of the shopper's browser (as defined in IETF BCP 47).", + "type" : "string" + }, + "screenHeight" : { + "x-addedInVersion" : "40", + "description" : "The total height of the shopper's device screen in pixels.", + "format" : "int32", + "type" : "integer" + }, + "screenWidth" : { + "x-addedInVersion" : "40", + "description" : "The total width of the shopper's device screen in pixels.", + "format" : "int32", + "type" : "integer" + }, + "timeZoneOffset" : { + "x-addedInVersion" : "40", + "description" : "Time difference between UTC time and the shopper's browser local time, in minutes.", + "format" : "int32", + "type" : "integer" + }, + "userAgent" : { + "description" : "The user agent value of the shopper's browser.", + "maxLength" : 50, + "minLength" : 10, + "type" : "string" + } + }, + "required" : [ + "userAgent", + "acceptHeader", + "javaEnabled", + "colorDepth", + "screenHeight", + "screenWidth", + "timeZoneOffset", + "language" + ] + }, + "Card" : { + "properties" : { + "cvc" : { + "description" : "The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as:\n* CVV2/CVC2 – length: 3 digits\n* CID – length: 4 digits\n> If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce), the CVC code is present in the encrypted data. You must never post the card details to the server.\n> This field must be always present in a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).\n> When this value is returned in a response, it is always empty because it is not stored.", + "maxLength" : 20, + "minLength" : 1, + "type" : "string" + }, + "expiryMonth" : { + "description" : "The card expiry month.\nFormat: 2 digits, zero-padded for single digits. For example:\n* 03 = March\n* 11 = November", + "maxLength" : 2, + "minLength" : 1, + "type" : "string" + }, + "expiryYear" : { + "description" : "The card expiry year.\nFormat: 4 digits. For example: 2020", + "maxLength" : 4, + "minLength" : 4, + "type" : "string" + }, + "holderName" : { + "description" : "The name of the cardholder, as printed on the card.", + "maxLength" : 50, + "minLength" : 1, + "type" : "string" + }, + "issueNumber" : { + "description" : "The issue number of the card (for some UK debit cards only).", + "maxLength" : 2, + "minLength" : 1, + "type" : "string" + }, + "number" : { + "description" : "The card number (4-19 characters). Do not use any separators.\nWhen this value is returned in a response, only the last 4 digits of the card number are returned.", + "maxLength" : 19, + "minLength" : 4, + "type" : "string" + }, + "startMonth" : { + "description" : "The month component of the start date (for some UK debit cards only).", + "maxLength" : 2, + "minLength" : 1, + "type" : "string" + }, + "startYear" : { + "description" : "The year component of the start date (for some UK debit cards only).", + "maxLength" : 4, + "minLength" : 4, + "type" : "string" + } + }, + "required" : [ + "number", + "expiryMonth", + "expiryYear", + "holderName" + ] + }, + "CardBrandDetails" : { + "properties" : { + "supported" : { + "description" : "Indicates if you support the card brand.", + "type" : "boolean" + }, + "type" : { + "description" : "The name of the card brand.", + "type" : "string" + } + } + }, + "CardDetails" : { + "additionalProperties" : false, + "properties" : { + "brand" : { + "description" : "Secondary brand of the card. For example: **plastix**, **hmclub**.", + "type" : "string" + }, + "cupsecureplus.smscode" : { + "deprecated" : true, + "type" : "string" + }, + "cvc" : { + "description" : "The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", + "type" : "string" + }, + "encryptedCardNumber" : { + "description" : "The encrypted card number.", + "maxLength" : 10000, + "type" : "string" + }, + "encryptedExpiryMonth" : { + "description" : "The encrypted card expiry month.", + "maxLength" : 10000, + "type" : "string" + }, + "encryptedExpiryYear" : { + "description" : "The encrypted card expiry year.", + "maxLength" : 10000, + "type" : "string" + }, + "encryptedSecurityCode" : { + "description" : "The encrypted card verification code.", + "maxLength" : 10000, + "type" : "string" + }, + "expiryMonth" : { + "description" : "The card expiry month. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", + "type" : "string" + }, + "expiryYear" : { + "description" : "The card expiry year. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", + "type" : "string" + }, + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "holderName" : { + "description" : "The name of the card holder.", + "type" : "string" + }, + "networkPaymentReference" : { + "description" : "The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment.", + "type" : "string" + }, + "number" : { + "description" : "The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide).", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "shopperNotificationReference" : { + "description" : "The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used only for recurring payments in India.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "threeDS2SdkVersion" : { + "description" : "Version of the 3D Secure 2 mobile SDK.", + "maxLength" : 12, + "type" : "string" + }, + "type" : { + "default" : "scheme", + "description" : "Default payment method details. Common for scheme payment methods, and for simple payment method details.", + "enum" : [ + "scheme", + "networkToken", + "giftcard", + "alliancedata", + "card", + "qiwiwallet", + "lianlianpay_ebanking_enterprise", + "lianlianpay_ebanking_credit", + "lianlianpay_ebanking_debit", + "entercash" + ], + "type" : "string" + } + }, + "required" : [ + "encryptedCardNumber", + "encryptedExpiryMonth", + "encryptedExpiryYear" + ], + "title" : "Card" + }, + "CardDetailsRequest" : { + "properties" : { + "cardNumber" : { + "description" : "A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. \n\nYou must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "supportedBrands" : { + "description" : "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. \n\nIf not included, our API uses the ones configured for your merchant account and, if provided, the country code.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "cardNumber", + "merchantAccount" + ] + }, + "CardDetailsResponse" : { + "properties" : { + "brands" : { + "description" : "The list of brands identified for the card.", + "items" : { + "$ref" : "#/components/schemas/CardBrandDetails" + }, + "type" : "array" + } + } + }, + "CellulantDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The Cellulant issuer.", + "type" : "string" + }, + "type" : { + "default" : "cellulant", + "description" : "**Cellulant**", + "enum" : [ + "cellulant" + ], + "type" : "string" + } + }, + "title" : "Cellulant" + }, + "CheckoutAwaitAction" : { + "additionalProperties" : false, + "properties" : { + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "type" : { + "description" : "**await**", + "enum" : [ + "await" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutBalanceCheckRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalAmount" : { + "description" : "If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification).\nRequired to be in the same currency as the `amount`. ", + "$ref" : "#/components/schemas/Amount" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "paymentMethod" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "The collection that contains the type of the payment method and its specific information.", + "type" : "object" + }, + "recurring" : { + "description" : "The recurring settings for the payment. Use this property when you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments).", + "$ref" : "#/components/schemas/Recurring" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "selectedBrand" : { + "description" : "Some payment methods require defining a value for this field to specify how to process the transaction.\n\nFor the Bancontact payment method, it can be set to:\n* `maestro` (default), to be processed like a Maestro card, or\n* `bcmc`, to be processed like a Bancontact card.", + "type" : "string" + }, + "selectedRecurringDetailReference" : { + "description" : "The `recurringDetailReference` you want to use for this payment. The value `LATEST` can be used to select the most recently stored recurring detail.", + "type" : "string" + }, + "sessionId" : { + "description" : "A session ID used to identify a payment session.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.authenticationOnly` 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" + }, + "totalsGroup" : { + "x-addedInVersion" : "23", + "description" : "The reference value to aggregate sales totals in reporting. When not specified, the store field is used (if available).", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "paymentMethod" + ] + }, + "CheckoutBalanceCheckResponse" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCard" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataSepa" + } + ], + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**.", + "type" : "object" + }, + "balance" : { + "description" : "The balance for the payment method.", + "$ref" : "#/components/schemas/Amount" + }, + "fraudResult" : { + "description" : "The fraud result properties of the payment.", + "$ref" : "#/components/schemas/FraudResult" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", + "type" : "string" + }, + "refusalReason" : { + "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the cancellation request.\n\nPossible values:\n\n* **Success** – Indicates that the balance check was successful.\n* **NotEnoughBalance** – Commonly indicates that the card did not have enough balance to pay the amount in the request, or that the currency of the balance on the card did not match the currency of the requested amount.\n* **Failed** – Indicates that the balance check failed.", + "enum" : [ + "Success", + "NotEnoughBalance", + "Failed" + ], + "type" : "string" + }, + "transactionLimit" : { + "x-addedInVersion" : "65", + "description" : "The maximum spendable balance for a single transaction. Applicable to some gift cards.", + "$ref" : "#/components/schemas/Amount" + } + }, + "required" : [ + "balance", + "resultCode" + ] + }, + "CheckoutBankTransferAction" : { + "additionalProperties" : false, + "properties" : { + "beneficiary" : { + "description" : "The name of the account holder.", + "type" : "string" + }, + "bic" : { + "description" : "The BIC of the IBAN.", + "type" : "string" + }, + "downloadUrl" : { + "description" : "The url to download payment details with.", + "type" : "string" + }, + "iban" : { + "description" : "The IBAN of the bank transfer.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "reference" : { + "description" : "The transfer reference.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The e-mail of the shopper, included if an e-mail was sent to the shopper.", + "type" : "string" + }, + "totalAmount" : { + "description" : "The amount of the bank transfer.", + "$ref" : "#/components/schemas/Amount" + }, + "type" : { + "description" : "The type of the action.", + "enum" : [ + "bankTransfer" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutCancelOrderRequest" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account identifier that orderData belongs to.", + "type" : "string" + }, + "order" : { + "description" : "The order request object that contains a pspReference that represents the order and the matching encrypted order data.", + "$ref" : "#/components/schemas/CheckoutOrder" + } + }, + "required" : [ + "order", + "merchantAccount" + ] + }, + "CheckoutCancelOrderResponse" : { + "properties" : { + "pspReference" : { + "description" : "A unique reference of the cancellation request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the cancellation request.\n\nPossible values:\n\n* **Received** – Indicates the cancellation has successfully been received by Adyen, and will be processed.", + "enum" : [ + "Received" + ], + "type" : "string" + } + }, + "required" : [ + "pspReference", + "resultCode" + ] + }, + "CheckoutCreateOrderRequest" : { + "properties" : { + "amount" : { + "description" : "The total amount of the order.", + "$ref" : "#/components/schemas/Amount" + }, + "expiresAt" : { + "description" : "The date that order expires; e.g. 2019-03-23T12:25:28Z. If not provided, the default expiry duration is 1 day.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the order.", + "type" : "string" + }, + "reference" : { + "description" : "A custom reference identifying the order.", + "type" : "string" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount" + ] + }, + "CheckoutCreateOrderResponse" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCard" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataSepa" + } + ], + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**.", + "type" : "object" + }, + "amount" : { + "x-addedInVersion" : "68", + "description" : "The initial amount of the order.", + "$ref" : "#/components/schemas/Amount" + }, + "expiresAt" : { + "description" : "The date that the order will expire.", + "type" : "string" + }, + "fraudResult" : { + "description" : "The fraud result properties of the payment.", + "$ref" : "#/components/schemas/FraudResult" + }, + "orderData" : { + "description" : "The encrypted data that will be used by merchant for adding payments to the order.", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", + "type" : "string" + }, + "reference" : { + "description" : "The reference provided by merchant for creating the order.", + "type" : "string" + }, + "refusalReason" : { + "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "remainingAmount" : { + "description" : "The remaining amount in the order.", + "$ref" : "#/components/schemas/Amount" + }, + "resultCode" : { + "description" : "The result of the order creation request.\n The value is always **Success**.", + "enum" : [ + "Success" + ], + "type" : "string" + } + }, + "required" : [ + "amount", + "remainingAmount", + "expiresAt", + "orderData", + "resultCode" + ] + }, + "CheckoutDonationAction" : { + "additionalProperties" : false, + "properties" : { + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "type" : { + "description" : "The type of the action.", + "enum" : [ + "donate" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutOneTimePasscodeAction" : { + "additionalProperties" : false, + "properties" : { + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "redirect" : { + "description" : "When the payment flow requires a redirect as fallback, this object contains information about the redirect.", + "$ref" : "#/components/schemas/Redirect" + }, + "resendInterval" : { + "description" : "The interval in second between OTP resend.", + "format" : "int32", + "type" : "integer" + }, + "resendMaxAttempts" : { + "description" : "The maximum number of OTP resend attempts.", + "format" : "int32", + "type" : "integer" + }, + "resendUrl" : { + "description" : "The URL, to which you make POST request to trigger OTP resend.", + "type" : "string" + }, + "type" : { + "description" : "The type of the action.", + "enum" : [ + "oneTimePasscode" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutOrder" : { + "properties" : { + "orderData" : { + "description" : "The encrypted order data.", + "type" : "string" + }, + "pspReference" : { + "description" : "The `pspReference` that belongs to the order.", + "type" : "string" + } + }, + "required" : [ + "pspReference", + "orderData" + ] + }, + "CheckoutOrderResponse" : { + "properties" : { + "amount" : { + "description" : "The initial amount of the order.", + "$ref" : "#/components/schemas/Amount" + }, + "expiresAt" : { + "description" : "The expiry date for the order.", + "type" : "string" + }, + "orderData" : { + "description" : "The encrypted order data.", + "type" : "string" + }, + "pspReference" : { + "description" : "The `pspReference` that belongs to the order.", + "type" : "string" + }, + "reference" : { + "description" : "The merchant reference for the order.", + "type" : "string" + }, + "remainingAmount" : { + "description" : "The updated remaining amount.", + "$ref" : "#/components/schemas/Amount" + } + }, + "required" : [ + "pspReference" + ] + }, + "CheckoutQrCodeAction" : { + "additionalProperties" : false, + "properties" : { + "expiresAt" : { + "x-addedInVersion" : "68", + "description" : "Expiry time of the QR code.", + "type" : "string" + }, + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "qrCodeData" : { + "description" : "The contents of the QR code as a UTF8 string.", + "type" : "string" + }, + "type" : { + "description" : "**qrCode**", + "enum" : [ + "qrCode" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutRedirectAction" : { + "additionalProperties" : false, + "properties" : { + "data" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "When the redirect URL must be accessed via POST, use this data to post to the redirect URL.", + "type" : "object" + }, + "method" : { + "description" : "Specifies the HTTP method, for example GET or POST.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "type" : { + "description" : "**redirect**", + "enum" : [ + "redirect" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutSDKAction" : { + "additionalProperties" : false, + "properties" : { + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "sdkData" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "The data to pass to the SDK.", + "type" : "object" + }, + "type" : { + "description" : "The type of the action.", + "enum" : [ + "sdk", + "wechatpaySDK" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutThreeDS2Action" : { + "additionalProperties" : false, + "properties" : { + "authorisationToken" : { + "description" : "A token needed to authorise a payment.", + "type" : "string" + }, + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "subtype" : { + "description" : "A subtype of the token.", + "type" : "string" + }, + "token" : { + "description" : "A token to pass to the 3DS2 Component to get the fingerprint.", + "type" : "string" + }, + "type" : { + "description" : "**threeDS2**", + "enum" : [ + "threeDS2" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CheckoutUtilityRequest" : { + "properties" : { + "originDomains" : { + "description" : "The list of origin domains, for which origin keys are requested.", + "items" : { + "type" : "string" + }, + "type" : "array" + } + }, + "required" : [ + "originDomains" + ] + }, + "CheckoutUtilityResponse" : { + "properties" : { + "originKeys" : { + "x-addedInVersion" : "1", + "additionalProperties" : { + "type" : "string" + }, + "description" : "The list of origin keys for all requested domains. For each list item, the key is the domain and the value is the origin key.", + "type" : "object" + } + } + }, + "CheckoutVoucherAction" : { + "additionalProperties" : false, + "properties" : { + "alternativeReference" : { + "description" : "The voucher alternative reference code.", + "type" : "string" + }, + "collectionInstitutionNumber" : { + "description" : "A collection institution number (store number) for Econtext Pay-Easy ATM.", + "type" : "string" + }, + "downloadUrl" : { + "description" : "The URL to download the voucher.", + "type" : "string" + }, + "entity" : { + "description" : "An entity number of Multibanco.", + "type" : "string" + }, + "expiresAt" : { + "description" : "The date time of the voucher expiry.", + "type" : "string" + }, + "initialAmount" : { + "description" : "The initial amount.", + "$ref" : "#/components/schemas/Amount" + }, + "instructionsUrl" : { + "description" : "The URL to the detailed instructions to make payment using the voucher.", + "type" : "string" + }, + "issuer" : { + "description" : "The issuer of the voucher.", + "type" : "string" + }, + "maskedTelephoneNumber" : { + "description" : "The shopper telephone number (partially masked).", + "type" : "string" + }, + "merchantName" : { + "description" : "The merchant name.", + "type" : "string" + }, + "merchantReference" : { + "description" : "The merchant reference.", + "type" : "string" + }, + "paymentData" : { + "description" : "A value that must be submitted to the `/payments/details` endpoint to verify this payment.", + "type" : "string" + }, + "paymentMethodType" : { + "description" : "Specifies the payment method.", + "type" : "string" + }, + "reference" : { + "description" : "The voucher reference code.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper email.", + "type" : "string" + }, + "shopperName" : { + "description" : "The shopper name.", + "type" : "string" + }, + "surcharge" : { + "description" : "The surcharge amount.", + "$ref" : "#/components/schemas/Amount" + }, + "totalAmount" : { + "description" : "The total amount (initial plus surcharge amount).", + "$ref" : "#/components/schemas/Amount" + }, + "type" : { + "description" : "**voucher**", + "enum" : [ + "voucher" + ], + "type" : "string" + }, + "url" : { + "description" : "Specifies the URL to redirect to.", + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "CommonField" : { + "properties" : { + "name" : { + "description" : "Name of the field. For example, Name of External Platform.", + "type" : "string" + }, + "version" : { + "description" : "Version of the field. For example, Version of External Platform.", + "type" : "string" + } + } + }, + "Company" : { + "properties" : { + "homepage" : { + "description" : "The company website's home page.", + "type" : "string" + }, + "name" : { + "description" : "The company name.", + "type" : "string" + }, + "registrationNumber" : { + "description" : "Registration number of the company.", + "type" : "string" + }, + "registryLocation" : { + "description" : "Registry location of the company.", + "type" : "string" + }, + "taxId" : { + "description" : "Tax ID of the company.", + "type" : "string" + }, + "type" : { + "description" : "The company type.", + "type" : "string" + } + } + }, + "Configuration" : { + "properties" : { + "avs" : { + "description" : "Describes the configuration for AVS ([Address Verification System](https://en.wikipedia.org/wiki/Address_Verification_System)).", + "$ref" : "#/components/schemas/Avs" + }, + "cardHolderName" : { + "x-addedInVersion" : "37", + "description" : "Determines whether the cardholder name should be provided or not.\n\nPermitted values:\n* NONE\n* OPTIONAL\n* REQUIRED", + "enum" : [ + "NONE", + "OPTIONAL", + "REQUIRED" + ], + "type" : "string" + }, + "installments" : { + "description" : "Describes the configuration for [installment payments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/InstallmentsNumber" + }, + "shopperInput" : { + "x-addedInVersion" : "37", + "description" : "Determines how to display the details fields.", + "$ref" : "#/components/schemas/ShopperInput" + } + } + }, + "CreateCheckoutSessionRequest" : { + "properties" : { + "accountInfo" : { + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalAmount" : { + "description" : "If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification).\nRequired to be in the same currency as the `amount`. ", + "$ref" : "#/components/schemas/Amount" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "allowedPaymentMethods" : { + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The amount of the payment.", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "authenticationData" : { + "x-addedInVersion" : "69", + "description" : "Configuration data for 3DS payments.", + "$ref" : "#/components/schemas/AuthenticationData" + }, + "billingAddress" : { + "description" : "The address where to send the invoice.", + "$ref" : "#/components/schemas/Address" + }, + "blockedPaymentMethods" : { + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "captureDelayHours" : { + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* **iOS**\n* **Android**\n* **Web**\n\n", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper's two-letter country code.", + "type" : "string" + }, + "dateOfBirth" : { + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "enableOneClick" : { + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "expiresAt" : { + "description" : "The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. When not specified, the expiry date is set to 1 hour after session creation. You cannot set the session expiry to more than 24 hours after session creation.", + "format" : "date-time", + "type" : "string" + }, + "lineItems" : { + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to when a redirect payment is completed.", + "type" : "string" + }, + "riskData" : { + "description" : "Any risk-related settings to apply to the payment.", + "$ref" : "#/components/schemas/RiskData" + }, + "shopperEmail" : { + "description" : "The shopper's email address.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "description" : "The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splitCardFundingSources" : { + "default" : false, + "description" : "Boolean value indicating whether the card payment method should be split into separate debit and credit options.", + "type" : "boolean" + }, + "splits" : { + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "description" : "The ecommerce or point-of-sale store that is processing the payment.", + "type" : "string" + }, + "storePaymentMethod" : { + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDSAuthenticationOnly" : { + "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" + }, + "trustedShopper" : { + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "amount", + "reference", + "returnUrl", + "merchantAccount" + ] + }, + "CreateCheckoutSessionResponse" : { + "properties" : { + "accountInfo" : { + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalAmount" : { + "description" : "If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification).\nRequired to be in the same currency as the `amount`. ", + "$ref" : "#/components/schemas/Amount" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "allowedPaymentMethods" : { + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The amount of the payment.", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "authenticationData" : { + "x-addedInVersion" : "69", + "description" : "Configuration data for 3DS payments.", + "$ref" : "#/components/schemas/AuthenticationData" + }, + "billingAddress" : { + "description" : "The address where to send the invoice.", + "$ref" : "#/components/schemas/Address" + }, + "blockedPaymentMethods" : { + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "captureDelayHours" : { + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* **iOS**\n* **Android**\n* **Web**\n\n", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "company" : { + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "countryCode" : { + "description" : "The shopper's two-letter country code.", + "type" : "string" + }, + "dateOfBirth" : { + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "enableOneClick" : { + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "expiresAt" : { + "description" : "The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. When not specified, the expiry date is set to 1 hour after session creation. You cannot set the session expiry to more than 24 hours after session creation.", + "format" : "date-time", + "type" : "string" + }, + "id" : { + "description" : "A unique identifier of the session.", + "readOnly" : true, + "type" : "string" + }, + "lineItems" : { + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request.\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to when a redirect payment is completed.", + "type" : "string" + }, + "riskData" : { + "description" : "Any risk-related settings to apply to the payment.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionData" : { + "description" : "The payment session data you need to pass to your front end.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "description" : "The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splitCardFundingSources" : { + "default" : false, + "description" : "Boolean value indicating whether the card payment method should be split into separate debit and credit options.", + "type" : "boolean" + }, + "splits" : { + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "description" : "The ecommerce or point-of-sale store that is processing the payment.", + "type" : "string" + }, + "storePaymentMethod" : { + "description" : "When this is set to **true** and the `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDSAuthenticationOnly" : { + "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" + }, + "trustedShopper" : { + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "id", + "amount", + "reference", + "returnUrl", + "expiresAt", + "merchantAccount" + ] + }, + "CreatePaymentAmountUpdateRequest" : { + "properties" : { + "amount" : { + "description" : "The updated amount. The `currency` must match the currency used in authorisation.", + "$ref" : "#/components/schemas/Amount" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "reason" : { + "description" : "The reason for the amount update. Possible values: \n* **delayedCharge** \n* **noShow**", + "enum" : [ + "delayedCharge", + "noShow" + ], + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the amount update request. Maximum length: 80 characters.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + } + }, + "required" : [ + "merchantAccount", + "amount" + ] + }, + "CreatePaymentCancelRequest" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the cancel request. Maximum length: 80 characters.", + "type" : "string" + } + }, + "required" : [ + "merchantAccount" + ] + }, + "CreatePaymentCaptureRequest" : { + "properties" : { + "amount" : { + "description" : "The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", + "$ref" : "#/components/schemas/Amount" + }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the capture request. Maximum length: 80 characters.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + } + }, + "required" : [ + "merchantAccount", + "amount" + ] + }, + "CreatePaymentLinkRequest" : { + "properties" : { + "allowedPaymentMethods" : { + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The payment amount and currency.", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "description" : "The address where to send the invoice.", + "$ref" : "#/components/schemas/Address" + }, + "blockedPaymentMethods" : { + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "captureDelayHours" : { + "x-addedInVersion" : "69", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "countryCode" : { + "description" : "The shopper's two-letter country code.", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "69", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "description" : { + "description" : "A short description visible on the payment page.\nMaximum length: 280 characters.", + "type" : "string" + }, + "expiresAt" : { + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", + "type" : "string" + }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, + "lineItems" : { + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mcc" : { + "x-addedInVersion" : "69", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier for which the payment link is created.", + "type" : "string" + }, + "merchantOrderReference" : { + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, + "recurringProcessingModel" : { + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "reference" : { + "description" : "A reference that is used to uniquely identify the payment in future communications about the payment status.", + "type" : "string" + }, + "requiredShopperFields" : { + "x-addedInVersion" : "67", + "description" : "List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\nPossible values:\n* **billingAddress** – The address where to send the invoice.\n* **deliveryAddress** – The address where the purchased goods should be delivered.\n* **shopperEmail** – The shopper's email address.\n* **shopperName** – The shopper's full name.\n* **telephoneNumber** – The shopper's phone number.\n", + "items" : { + "enum" : [ + "billingAddress", + "deliveryAddress", + "shopperEmail", + "shopperName", + "telephoneNumber" + ], + "type" : "string" + }, + "type" : "array" + }, + "returnUrl" : { + "description" : "Website URL used for redirection after payment is completed.\nIf provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.", + "type" : "string" + }, + "reusable" : { + "description" : "Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only.", + "type" : "boolean" + }, + "riskData" : { + "x-addedInVersion" : "65", + "description" : "Any risk-related settings to apply to the payment.", + "$ref" : "#/components/schemas/RiskData" + }, + "shopperEmail" : { + "description" : "The shopper's email address.", + "type" : "string" + }, + "shopperLocale" : { + "description" : "The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`.\n\nFor a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization).", + "type" : "string" + }, + "shopperName" : { + "description" : "The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "x-addedInVersion" : "69", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "69", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splitCardFundingSources" : { + "x-addedInVersion" : "69", + "default" : false, + "description" : "Boolean value indicating whether the card payment method should be split into separate debit and credit options.", + "type" : "boolean" + }, + "splits" : { + "description" : "An array of objects specifying how the payment should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "description" : "The physical store, for which this payment is processed.", + "type" : "string" + }, + "storePaymentMethodMode" : { + "x-addedInVersion" : "68", + "description" : "Indicates if the details of the payment method will be stored for the shopper. Possible values:\n* **disabled** – No details will be stored (default).\n* **askForConsent** – If the `shopperReference` is provided, the UI lets the shopper choose if they want their payment details to be stored.\n* **enabled** – If the `shopperReference` is provided, the details will be stored without asking the shopper for consent.", + "enum" : [ + "askForConsent", + "disabled", + "enabled" + ], + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "68", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "themeId" : { + "x-addedInVersion" : "67", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", + "type" : "string" + } + }, + "required" : [ + "amount", + "reference", + "merchantAccount" + ] + }, + "CreatePaymentRefundRequest" : { + "properties" : { + "amount" : { + "description" : "The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", + "$ref" : "#/components/schemas/Amount" + }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the refund request. Maximum length: 80 characters.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + } + }, + "required" : [ + "merchantAccount", + "amount" + ] + }, + "CreatePaymentReversalRequest" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the reversal request. Maximum length: 80 characters.", + "type" : "string" + } + }, + "required" : [ + "merchantAccount" + ] + }, + "CreateStandalonePaymentCancelRequest" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentReference" : { + "description" : "The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment that you want to cancel.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the cancel request. Maximum length: 80 characters.", + "type" : "string" + } + }, + "required" : [ + "merchantAccount", + "paymentReference" + ] + }, + "DetailsRequest" : { + "properties" : { + "details" : { + "description" : "Use this collection to submit the details that were returned as a result of the `/payments` call.", + "$ref" : "#/components/schemas/PaymentCompletionDetails" + }, + "paymentData" : { + "description" : "The `paymentData` value from the `/payments` response. Required if the `/payments` response returns this value. ", + "maxLength" : 100000, + "type" : "string" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "40", + "description" : "Change the `authenticationOnly` indicator originally set in the `/payments` request. Only needs to be set if you want to modify the value set previously.", + "type" : "boolean" + } + }, + "required" : [ + "details" + ] + }, + "DeviceRenderOptions" : { + "properties" : { + "sdkInterface" : { + "default" : "both", + "description" : "Supported SDK interface types.\nAllowed values:\n* native\n* html\n* both", + "enum" : [ + "native", + "html", + "both" + ], + "type" : "string" + }, + "sdkUiType" : { + "description" : "UI types supported for displaying specific challenges.\nAllowed values:\n* text\n* singleSelect\n* outOfBand\n* otherHtml\n* multiSelect", + "items" : { + "enum" : [ + "multiSelect", + "otherHtml", + "outOfBand", + "singleSelect", + "text" + ], + "type" : "string" + }, + "type" : "array" + } + } + }, + "DokuDetails" : { + "additionalProperties" : false, + "properties" : { + "firstName" : { + "description" : "The shopper's first name.", + "type" : "string" + }, + "lastName" : { + "description" : "The shopper's last name.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email.", + "type" : "string" + }, + "type" : { + "description" : "**doku**", + "enum" : [ + "doku_mandiri_va", + "doku_cimb_va", + "doku_danamon_va", + "doku_bni_va", + "doku_permata_lite_atm", + "doku_bri_va", + "doku_bca_va", + "doku_alfamart", + "doku_indomaret" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "firstName", + "lastName", + "shopperEmail" + ], + "title" : "Doku" + }, + "DonationResponse" : { + "properties" : { + "amount" : { + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationAccount" : { + "description" : "The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding).", + "type" : "string" + }, + "id" : { + "description" : "Your unique resource identifier.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "payment" : { + "description" : "Action to be taken for completing the payment.", + "$ref" : "#/components/schemas/PaymentResponse" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.", + "type" : "string" + }, + "status" : { + "description" : "The status of the donation transaction.\n\nPossible values:\n* **completed**\n* **pending**\n* **refused**", + "enum" : [ + "completed", + "pending", + "refused" + ], + "type" : "string" + } + } + }, + "DotpayDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The Dotpay issuer value of the shopper's selected bank. Set this to an **id** of a Dotpay issuer to preselect it.", + "type" : "string" + }, + "type" : { + "default" : "dotpay", + "description" : "**dotpay**", + "enum" : [ + "dotpay" + ], + "type" : "string" + } + }, + "required" : [ + "issuer" + ], + "title" : "Dotpay" + }, + "DragonpayDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper’s email address.", + "type" : "string" + }, + "type" : { + "description" : "**dragonpay**", + "enum" : [ + "dragonpay_ebanking", + "dragonpay_otc_banking", + "dragonpay_otc_non_banking", + "dragonpay_otc_philippines" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "issuer" + ], + "title" : "Dragonpay" + }, + "EcontextVoucherDetails" : { + "additionalProperties" : false, + "properties" : { + "firstName" : { + "description" : "The shopper's first name.", + "type" : "string" + }, + "lastName" : { + "description" : "The shopper's last name.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email.", + "type" : "string" + }, + "telephoneNumber" : { + "description" : "The shopper's contact number. It must have an international number format, for example **+31 20 779 1846**. Formats like **+31 (0)20 779 1846** or **0031 20 779 1846** are not accepted.", + "type" : "string" + }, + "type" : { + "description" : "**econtextvoucher**", + "enum" : [ + "econtext_seveneleven", + "econtext_stores" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "firstName", + "lastName", + "shopperEmail", + "telephoneNumber" + ], + "title" : "Voucher" + }, + "ExternalPlatform" : { + "properties" : { + "integrator" : { + "description" : "External platform integrator.", + "type" : "string" + }, + "name" : { + "description" : "Name of the field. For example, Name of External Platform.", + "type" : "string" + }, + "version" : { + "description" : "Version of the field. For example, Version of External Platform.", + "type" : "string" + } + } + }, + "ForexQuote" : { + "properties" : { + "account" : { + "description" : "The account name.", + "type" : "string" + }, + "accountType" : { + "description" : "The account type.", + "type" : "string" + }, + "baseAmount" : { + "description" : "The base amount.", + "$ref" : "#/components/schemas/Amount" + }, + "basePoints" : { + "description" : "The base points.", + "format" : "int32", + "type" : "integer" + }, + "buy" : { + "description" : "The buy rate.", + "$ref" : "#/components/schemas/Amount" + }, + "interbank" : { + "description" : "The interbank amount.", + "$ref" : "#/components/schemas/Amount" + }, + "reference" : { + "description" : "The reference assigned to the forex quote request.", + "type" : "string" + }, + "sell" : { + "description" : "The sell rate.", + "$ref" : "#/components/schemas/Amount" + }, + "signature" : { + "description" : "The signature to validate the integrity.", + "type" : "string" + }, + "source" : { + "description" : "The source of the forex quote.", + "type" : "string" + }, + "type" : { + "description" : "The type of forex.", + "type" : "string" + }, + "validTill" : { + "description" : "The date until which the forex quote is valid.", + "format" : "date-time", + "type" : "string" + } + }, + "required" : [ + "validTill", + "basePoints" + ] + }, + "FraudCheckResult" : { + "properties" : { + "accountScore" : { + "description" : "The fraud score generated by the risk check.", + "format" : "int32", + "type" : "integer" + }, + "checkId" : { + "description" : "The ID of the risk check.", + "format" : "int32", + "type" : "integer" + }, + "name" : { + "description" : "The name of the risk check.", + "type" : "string" + } + }, + "required" : [ + "checkId", + "name", + "accountScore" + ] + }, + "FraudResult" : { + "properties" : { + "accountScore" : { + "description" : "The total fraud score generated by the risk checks.", + "format" : "int32", + "type" : "integer" + }, + "results" : { + "description" : "The result of the individual risk checks.", + "items" : { + "$ref" : "#/components/schemas/FraudCheckResult" + }, + "type" : "array" + } + }, + "required" : [ + "accountScore" + ] + }, + "GenericIssuerPaymentMethodDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The issuer id of the shopper's selected bank.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "description" : "**genericissuer**", + "enum" : [ + "eps", + "onlineBanking_SK", + "onlineBanking_CZ" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "issuer" + ], + "title" : "Stored Payment Method" + }, + "GiropayDetails" : { + "additionalProperties" : false, + "properties" : { + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "giropay", + "description" : "**giropay**", + "enum" : [ + "giropay" + ], + "type" : "string" + } + }, + "title" : "Giropay" + }, + "GooglePayDetails" : { + "additionalProperties" : false, + "properties" : { + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "googlePayToken" : { + "description" : "The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "googlepay", + "description" : "**googlepay**, **paywithgoogle**", + "enum" : [ + "googlepay" + ], + "type" : "string" + } + }, + "required" : [ + "googlePayToken" + ], + "title" : "Google Pay" + }, + "IdealDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The iDEAL issuer value of the shopper's selected bank. Set this to an **id** of an iDEAL issuer to preselect it.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "ideal", + "description" : "**ideal**", + "enum" : [ + "ideal" + ], + "type" : "string" + } + }, + "required" : [ + "issuer" + ], + "title" : "iDEAL" + }, + "InputDetail" : { + "properties" : { + "configuration" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Configuration parameters for the required input.", + "type" : "object" + }, + "details" : { + "description" : "Input details can also be provided recursively.", + "items" : { + "$ref" : "#/components/schemas/SubInputDetail" + }, + "type" : "array" + }, + "inputDetails" : { + "deprecated" : true, + "description" : "Input details can also be provided recursively (deprecated).", + "items" : { + "$ref" : "#/components/schemas/SubInputDetail" + }, + "type" : "array" + }, + "itemSearchUrl" : { + "description" : "In case of a select, the URL from which to query the items.", + "type" : "string" + }, + "items" : { + "description" : "In case of a select, the items to choose from.", + "items" : { + "$ref" : "#/components/schemas/Item" + }, + "type" : "array" + }, + "key" : { + "description" : "The value to provide in the result.", + "type" : "string" + }, + "optional" : { + "description" : "True if this input value is optional.", + "type" : "boolean" + }, + "type" : { + "description" : "The type of the required input.", + "type" : "string" + }, + "value" : { + "description" : "The value can be pre-filled, if available.", + "type" : "string" + } + } + }, + "InstallmentOption" : { + "properties" : { + "maxValue" : { + "description" : "The maximum number of installments offered for this payment method.", + "format" : "int32", + "type" : "integer" + }, + "plans" : { + "x-addedInVersion" : "64", + "description" : "Defines the type of installment plan. If not set, defaults to **regular**.\n\nPossible values:\n* **regular**\n* **revolving**", + "items" : { + "enum" : [ + "regular", + "revolving" + ], + "type" : "string" + }, + "type" : "array" + }, + "preselectedValue" : { + "x-addedInVersion" : "64", + "description" : "Preselected number of installments offered for this payment method.", + "format" : "int32", + "type" : "integer" + }, + "values" : { + "x-addedInVersion" : "64", + "description" : "An array of the number of installments that the shopper can choose from. For example, **[2,3,5]**. This cannot be specified simultaneously with `maxValue`.", + "items" : { + "format" : "int32", + "type" : "integer" + }, + "type" : "array" + } + } + }, + "Installments" : { + "properties" : { + "plan" : { + "x-addedInVersion" : "64", + "description" : "The installment plan, used for [card installments in Japan](https://docs.adyen.com/payment-methods/cards/credit-card-installments#make-a-payment-japan). By default, this is set to **regular**. Possible values:\n* **regular**\n* **revolving**\n", + "enum" : [ + "regular", + "revolving" + ], + "type" : "string" + }, + "value" : { + "description" : "Defines the number of installments. Its value needs to be greater than zero.\n\nUsually, the maximum allowed number of installments is capped. For example, it may not be possible to split a payment in more than 24 installments. The acquirer sets this upper limit, so its value may vary.", + "format" : "int32", + "type" : "integer" + } + }, + "required" : [ + "value" + ] + }, + "InstallmentsNumber" : { + "properties" : { + "maxNumberOfInstallments" : { + "description" : "Maximum number of installments", + "format" : "int32", + "type" : "integer" + } + }, + "required" : [ + "maxNumberOfInstallments" + ] + }, + "Item" : { + "properties" : { + "id" : { + "description" : "The value to provide in the result.", + "type" : "string" + }, + "name" : { + "description" : "The display name.", + "type" : "string" + } + } + }, + "KlarnaDetails" : { + "additionalProperties" : false, + "properties" : { + "billingAddress" : { + "description" : "The address where to send the invoice.", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the goods should be delivered.", + "type" : "string" + }, + "personalDetails" : { + "description" : "Shopper name, date of birth, phone number, and email address.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "klarna", + "description" : "**klarna**", + "enum" : [ + "klarna", + "klarnapayments", + "klarnapayments_account", + "klarnapayments_b2b", + "klarna_paynow", + "klarna_account", + "klarna_b2b" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "Klarna" + }, + "LineItem" : { + "properties" : { + "amountExcludingTax" : { + "description" : "Item amount excluding the tax, in minor units.", + "format" : "int64", + "type" : "integer" + }, + "amountIncludingTax" : { + "description" : "Item amount including the tax, in minor units.", + "format" : "int64", + "type" : "integer" + }, + "description" : { + "description" : "Description of the line item.", + "type" : "string" + }, + "id" : { + "description" : "ID of the line item.", + "type" : "string" + }, + "imageUrl" : { + "description" : "Link to the picture of the purchased item.", + "type" : "string" + }, + "itemCategory" : { + "description" : "Item category, used by the RatePay payment method.", + "type" : "string" + }, + "productUrl" : { + "description" : "Link to the purchased item.", + "type" : "string" + }, + "quantity" : { + "description" : "Number of items.", + "format" : "int64", + "type" : "integer" + }, + "taxAmount" : { + "description" : "Tax amount, in minor units.", + "format" : "int64", + "type" : "integer" + }, + "taxPercentage" : { + "description" : "Tax percentage, in minor units.", + "format" : "int64", + "type" : "integer" + } + } + }, + "Mandate" : { + "properties" : { + "amount" : { + "description" : "The billing amount (in minor units) of the recurring transactions.", + "type" : "string" + }, + "amountRule" : { + "description" : "The limitation rule of the billing amount.\n\nPossible values:\n * **max**: The transaction amount can not exceed the `amount`.\n\n * **exact**: The transaction amount should be the same as the `amount`.\n\n", + "enum" : [ + "max", + "exact" + ], + "type" : "string" + }, + "billingAttemptsRule" : { + "description" : "The rule to specify the period, within which the recurring debit can happen, relative to the mandate recurring date.\n\nPossible values:\n\n * **on**: On a specific date.\n\n * **before**: Before and on a specific date.\n\n * **after**: On and after a specific date.\n\n", + "enum" : [ + "on", + "before", + "after" + ], + "type" : "string" + }, + "billingDay" : { + "description" : "The number of the day, on which the recurring debit can happen. Should be within the same calendar month as the mandate recurring date.\n\nPossible values: 1-31 based on the `frequency`.", + "type" : "string" + }, + "endsAt" : { + "description" : "End date of the billing plan, in YYYY-MM-DD format.", + "type" : "string" + }, + "frequency" : { + "description" : "The frequency with which a shopper should be charged.\n\nPossible values: **daily**, **weekly**, **biWeekly**, **monthly**, **quarterly**, **halfYearly**, **yearly**.", + "enum" : [ + "adhoc", + "daily", + "weekly", + "biWeekly", + "monthly", + "quarterly", + "halfYearly", + "yearly" + ], + "type" : "string" + }, + "remarks" : { + "description" : "The message shown by UPI to the shopper on the approval screen.", + "type" : "string" + }, + "startsAt" : { + "description" : "Start date of the billing plan, in YYYY-MM-DD format. By default, the transaction date.", + "type" : "string" + } + }, + "required" : [ + "frequency", + "amount", + "endsAt" + ] + }, + "MasterpassDetails" : { + "additionalProperties" : false, + "properties" : { + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "masterpassTransactionId" : { + "description" : "The Masterpass transaction ID.", + "type" : "string" + }, + "type" : { + "default" : "masterpass", + "description" : "**masterpass**", + "enum" : [ + "masterpass" + ], + "type" : "string" + } + }, + "required" : [ + "masterpassTransactionId" + ], + "title" : "Masterpass" + }, + "MbwayDetails" : { + "additionalProperties" : false, + "properties" : { + "shopperEmail" : { + "description" : "", + "type" : "string" + }, + "telephoneNumber" : { + "description" : "", + "type" : "string" + }, + "type" : { + "default" : "mbway", + "description" : "**mbway**", + "enum" : [ + "mbway" + ], + "type" : "string" + } + }, + "required" : [ + "telephoneNumber", + "shopperEmail" + ], + "title" : "MBWay" + }, + "MerchantDevice" : { + "properties" : { + "os" : { + "description" : "Operating system running on the merchant device.", + "type" : "string" + }, + "osVersion" : { + "description" : "Version of the operating system on the merchant device.", + "type" : "string" + }, + "reference" : { + "description" : "Merchant device reference.", + "type" : "string" + } + } + }, + "MerchantRiskIndicator" : { + "properties" : { + "addressMatch" : { + "description" : "Whether the chosen delivery address is identical to the billing address.", + "type" : "boolean" + }, + "deliveryAddressIndicator" : { + "description" : "Indicator regarding the delivery address.\nAllowed values:\n* `shipToBillingAddress`\n* `shipToVerifiedAddress`\n* `shipToNewAddress`\n* `shipToStore`\n* `digitalGoods`\n* `goodsNotShipped`\n* `other`", + "enum" : [ + "shipToBillingAddress", + "shipToVerifiedAddress", + "shipToNewAddress", + "shipToStore", + "digitalGoods", + "goodsNotShipped", + "other" + ], + "type" : "string" + }, + "deliveryEmail" : { + "deprecated" : true, + "x-deprecatedInVersion" : "68", + "x-deprecatedMessage" : "Use `deliveryEmailAddress` instead.", + "description" : "The delivery email address (for digital goods).", + "type" : "string" + }, + "deliveryEmailAddress" : { + "x-addedInVersion" : "68", + "description" : "For Electronic delivery, the email address to which the merchandise was delivered. Maximum length: 254 characters.", + "maxLength" : 254, + "type" : "string" + }, + "deliveryTimeframe" : { + "description" : "The estimated delivery time for the shopper to receive the goods.\nAllowed values:\n* `electronicDelivery`\n* `sameDayShipping`\n* `overnightShipping`\n* `twoOrMoreDaysShipping`", + "enum" : [ + "electronicDelivery", + "sameDayShipping", + "overnightShipping", + "twoOrMoreDaysShipping" + ], + "type" : "string" + }, + "giftCardAmount" : { + "description" : "For prepaid or gift card purchase, the purchase amount total of prepaid or gift card(s).", + "$ref" : "#/components/schemas/Amount" + }, + "giftCardCount" : { + "description" : "For prepaid or gift card purchase, total count of individual prepaid or gift cards/codes purchased.", + "format" : "int32", + "type" : "integer" + }, + "giftCardCurr" : { + "x-addedInVersion" : "68", + "description" : "For prepaid or gift card purchase, [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) three-digit currency code of the gift card, other than those listed in Table A.5 of the EMVCo 3D Secure Protocol and Core Functions Specification.", + "type" : "string" + }, + "preOrderDate" : { + "description" : "For pre-order purchases, the expected date this product will be available to the shopper.", + "format" : "date-time", + "type" : "string" + }, + "preOrderPurchase" : { + "description" : "Indicator for whether this transaction is for pre-ordering a product.", + "type" : "boolean" + }, + "preOrderPurchaseInd" : { + "x-addedInVersion" : "68", + "description" : "Indicates whether Cardholder is placing an order for merchandise with a future availability or release date.", + "type" : "string" + }, + "reorderItems" : { + "description" : "Indicator for whether the shopper has already purchased the same items in the past.", + "type" : "boolean" + }, + "reorderItemsInd" : { + "x-addedInVersion" : "68", + "description" : "Indicates whether the cardholder is reordering previously purchased merchandise.", + "type" : "string" + }, + "shipIndicator" : { + "x-addedInVersion" : "68", + "description" : "Indicates shipping method chosen for the transaction.", + "type" : "string" + } + } + }, + "MobilePayDetails" : { + "additionalProperties" : false, + "properties" : { + "type" : { + "default" : "mobilepay", + "description" : "**mobilepay**", + "enum" : [ + "mobilepay" + ], + "type" : "string" + } + }, + "title" : "MobilePay" + }, + "MolPayDetails" : { + "additionalProperties" : false, + "properties" : { + "issuer" : { + "description" : "The shopper's bank. Specify this with the issuer value that corresponds to this bank.", + "type" : "string" + }, + "type" : { + "description" : "**molpay**", + "enum" : [ + "molpay_ebanking_fpx_MY", + "molpay_ebanking_TH" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "issuer" + ], + "title" : "MOLPay" + }, + "Name" : { + "properties" : { + "firstName" : { + "description" : "The first name.", + "type" : "string" + }, + "lastName" : { + "description" : "The last name.", + "type" : "string" + } + }, + "required" : [ + "firstName", + "lastName" + ] + }, + "OpenInvoiceDetails" : { + "additionalProperties" : false, + "properties" : { + "billingAddress" : { + "description" : "The address where to send the invoice.", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the goods should be delivered.", + "type" : "string" + }, + "personalDetails" : { + "description" : "Shopper name, date of birth, phone number, and email address.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "openinvoice", + "description" : "**openinvoice**", + "enum" : [ + "openinvoice", + "afterpay_directdebit", + "atome_pos" + ], + "type" : "string" + } + }, + "title" : "Open Invoice" + }, + "PayPalDetails" : { + "additionalProperties" : false, + "properties" : { + "orderID" : { + "description" : "The unique ID associated with the order.", + "type" : "string" + }, + "payerID" : { + "description" : "The unique ID associated with the payer.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "subtype" : { + "description" : "The type of flow to initiate.", + "enum" : [ + "redirect", + "sdk" + ], + "type" : "string" + }, + "type" : { + "default" : "paypal", + "description" : "**paypal**", + "enum" : [ + "paypal" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "PayPal" + }, + "PayUUpiDetails" : { + "additionalProperties" : false, + "properties" : { + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "shopperNotificationReference" : { + "description" : "The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "payu_IN_upi", + "description" : "**payu_IN_upi**", + "enum" : [ + "payu_IN_upi" + ], + "type" : "string" + }, + "virtualPaymentAddress" : { + "description" : "The virtual payment address for UPI.", + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "PayU" + }, + "PayWithGoogleDetails" : { + "additionalProperties" : false, + "properties" : { + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "googlePayToken" : { + "description" : "The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "paywithgoogle", + "description" : "**paywithgoogle**", + "enum" : [ + "paywithgoogle" + ], + "type" : "string" + } + }, + "required" : [ + "googlePayToken" + ], + "title" : "Google Pay" + }, + "PaymentAmountUpdateResource" : { + "properties" : { + "amount" : { + "description" : "The updated amount.", + "$ref" : "#/components/schemas/Amount" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to update. ", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the amount update request.", + "type" : "string" + }, + "reason" : { + "description" : "The reason for the amount update. Possible values: \n* **DelayedCharge** \n* **NoShow**", + "enum" : [ + "delayedCharge", + "noShow" + ], + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the amount update request. Maximum length: 80 characters.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "amount", + "reference", + "pspReference", + "paymentPspReference" + ] + }, + "PaymentCancelResource" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to cancel. ", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the cancel request.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the cancel request.", + "type" : "string" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "paymentPspReference", + "pspReference" + ] + }, + "PaymentCaptureResource" : { + "properties" : { + "amount" : { + "description" : "The captured amount.", + "$ref" : "#/components/schemas/Amount" + }, + "lineItems" : { + "description" : "Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture).\n> This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to capture. ", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the capture request.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the capture request.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "amount", + "pspReference", + "paymentPspReference" + ] + }, + "PaymentCompletionDetails" : { + "properties" : { + "MD" : { + "description" : "A payment session identifier returned by the card issuer.", + "maxLength" : 20000, + "type" : "string" + }, + "PaReq" : { + "description" : "(3D) Payment Authentication Request data for the card issuer.", + "type" : "string" + }, + "PaRes" : { + "description" : "(3D) Payment Authentication Response data by the card issuer.", + "maxLength" : 20000, + "type" : "string" + }, + "billingToken" : { + "description" : "PayPal-generated token for recurring payments.", + "type" : "string" + }, + "cupsecureplus.smscode" : { + "description" : "The SMS verification code collected from the shopper.", + "type" : "string" + }, + "facilitatorAccessToken" : { + "description" : "PayPal-generated third party access token.", + "type" : "string" + }, + "oneTimePasscode" : { + "description" : "A random number sent to the mobile phone number of the shopper to verify the payment.", + "type" : "string" + }, + "orderID" : { + "description" : "PayPal-assigned ID for the order.", + "type" : "string" + }, + "payerID" : { + "description" : "PayPal-assigned ID for the payer (shopper).", + "type" : "string" + }, + "payload" : { + "description" : "Payload appended to the `returnURL` as a result of the redirect.", + "maxLength" : 20000, + "type" : "string" + }, + "paymentID" : { + "description" : "PayPal-generated ID for the payment.", + "type" : "string" + }, + "paymentStatus" : { + "description" : "Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.", + "type" : "string" + }, + "redirectResult" : { + "description" : "The result of the redirect as appended to the `returnURL`.", + "maxLength" : 20000, + "type" : "string" + }, + "threeDSResult" : { + "description" : "Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.", + "maxLength" : 50000, + "type" : "string" + }, + "threeds2.challengeResult" : { + "description" : "Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.", + "maxLength" : 50000, + "type" : "string" + }, + "threeds2.fingerprint" : { + "description" : "Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.", + "maxLength" : 100000, + "type" : "string" + } + } + }, + "PaymentDetails" : { + "additionalProperties" : false, + "properties" : { + "type" : { + "description" : "The payment method type.", + "enum" : [ + "alipay", + "multibanco", + "bankTransfer_IBAN", + "paybright", + "affirm", + "affirm_pos", + "trustlyvector", + "oney", + "facilypay", + "facilypay_3x", + "facilypay_4x", + "facilypay_6x", + "facilypay_10x", + "facilypay_12x", + "unionpay", + "kcp_banktransfer", + "kcp_payco", + "kcp_creditcard", + "wechatpaySDK", + "wechatpayQR", + "wechatpayWeb", + "wallet_IN", + "payu_IN_cashcard", + "payu_IN_nb", + "upi_qr", + "paytm", + "molpay_ebanking_VN", + "openbanking_UK", + "ebanking_FI", + "molpay_ebanking_MY", + "molpay_ebanking_direct_MY", + "swish", + "twint", + "pix", + "walley", + "walley_b2b", + "molpay_fpx", + "konbini", + "directEbanking", + "boletobancario", + "neteller", + "dana", + "paysafecard", + "cashticket", + "isracard", + "ikano", + "karenmillen", + "oasis", + "warehouse", + "primeiropay_boleto", + "mada", + "benefit", + "knet", + "omannet", + "gopay_wallet", + "poli", + "kcp_naverpay", + "onlinebanking_IN", + "fawry", + "atome", + "moneybookers", + "naps", + "nordea", + "boletobancario_bradesco", + "boletobancario_itau", + "boletobancario_santander", + "boletobancario_bancodobrasil", + "boletobancario_hsbc", + "molpay_maybank2u", + "molpay_cimb", + "molpay_rhb", + "molpay_amb", + "molpay_hlb", + "molpay_affin_epg", + "molpay_bankislam", + "molpay_publicbank", + "fpx_agrobank", + "touchngo", + "maybank2u_mae", + "duitnow", + "twint_pos", + "alipay_hk", + "alipay_hk_web", + "alipay_hk_wap", + "alipay_wap" + ], + "type" : "string" + } + }, + "title" : "Payment Details" + }, + "PaymentDetailsResponse" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCard" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataSepa" + } + ], + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**.", + "type" : "object" + }, + "amount" : { + "x-addedInVersion" : "52", + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationToken" : { + "x-addedInVersion" : "66", + "description" : "Donation Token containing payment details for Adyen Giving.", + "type" : "string" + }, + "fraudResult" : { + "description" : "The fraud result properties of the payment.", + "$ref" : "#/components/schemas/FraudResult" + }, + "merchantReference" : { + "x-addedInVersion" : "49", + "description" : "The reference used during the /payments request.", + "type" : "string" + }, + "order" : { + "description" : "Contains updated information regarding the order in case order information was provided in the request.", + "$ref" : "#/components/schemas/CheckoutOrderResponse" + }, + "paymentMethod" : { + "x-addedInVersion" : "69", + "description" : "The payment method used in the transaction. Only returned for successful payments.\n", + "$ref" : "#/components/schemas/ResponsePaymentMethod" + }, + "pspReference" : { + "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", + "type" : "string" + }, + "refusalReason" : { + "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "refusalReasonCode" : { + "x-addedInVersion" : "37", + "description" : "Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\nPossible values:\n\n* **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n* **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state.\n* **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state.\n* **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state.\n* **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment.\n* **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment.\n* **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments.\n* **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation.\n* **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state.", + "enum" : [ + "AuthenticationFinished", + "Authorised", + "Cancelled", + "ChallengeShopper", + "Error", + "IdentifyShopper", + "Pending", + "PresentToShopper", + "Received", + "RedirectShopper", + "Refused", + "Success" + ], + "type" : "string" + }, + "shopperLocale" : { + "description" : "The shopperLocale.", + "type" : "string" + }, + "threeDS2ResponseData" : { + "x-addedInVersion" : "67", + "description" : "Response of the 3D Secure 2 authentication.", + "$ref" : "#/components/schemas/ThreeDS2ResponseData" + }, + "threeDS2Result" : { + "x-addedInVersion" : "41", + "description" : "Result of the 3D Secure 2 authentication.", + "$ref" : "#/components/schemas/ThreeDS2Result" + }, + "threeDSPaymentData" : { + "x-addedInVersion" : "67", + "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint as `paymentData`.", + "type" : "string" + } + } + }, + "PaymentDonationRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "authenticationData" : { + "x-addedInVersion" : "69", + "description" : "Data for 3DS authentication.", + "$ref" : "#/components/schemas/AuthenticationData" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "checkoutAttemptId" : { + "x-addedInVersion" : "68", + "description" : "Checkout attempt ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "donationAccount" : { + "description" : "Donation account to which the transaction is credited.", + "type" : "string" + }, + "donationOriginalPspReference" : { + "description" : "PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.", + "type" : "string" + }, + "donationToken" : { + "description" : "Donation token received in the `/payments` call.", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.authenticationOnly` 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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod", + "donationAccount" + ] + }, + "PaymentLinkResponse" : { + "properties" : { + "allowedPaymentMethods" : { + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The payment amount and currency.", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "description" : "The address where to send the invoice.", + "$ref" : "#/components/schemas/Address" + }, + "blockedPaymentMethods" : { + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "captureDelayHours" : { + "x-addedInVersion" : "69", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "countryCode" : { + "description" : "The shopper's two-letter country code.", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "69", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "deliverAt" : { + "description" : "The date and time when the purchased goods should be delivered.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.", + "format" : "date-time", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "description" : { + "description" : "A short description visible on the payment page.\nMaximum length: 280 characters.", + "type" : "string" + }, + "expiresAt" : { + "description" : "The date when the payment link expires.\n\n[ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.\n\nThe maximum expiry date is 70 days after the payment link is created.\n\nIf not provided, the payment link expires 24 hours after it was created.", + "type" : "string" + }, + "id" : { + "x-addedInVersion" : "51", + "description" : "A unique identifier of the payment link.", + "readOnly" : true, + "type" : "string" + }, + "installmentOptions" : { + "additionalProperties" : { + "$ref" : "#/components/schemas/InstallmentOption" + }, + "description" : "A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options.", + "type" : "object" + }, + "lineItems" : { + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\nThis parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mcc" : { + "x-addedInVersion" : "69", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier for which the payment link is created.", + "type" : "string" + }, + "merchantOrderReference" : { + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimitations:\n* Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\"\n* Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\"\n* A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.", + "type" : "object" + }, + "recurringProcessingModel" : { + "description" : "Defines a recurring payment type.\nPossible values:\n* **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "reference" : { + "description" : "A reference that is used to uniquely identify the payment in future communications about the payment status.", + "type" : "string" + }, + "requiredShopperFields" : { + "x-addedInVersion" : "67", + "description" : "List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\nPossible values:\n* **billingAddress** – The address where to send the invoice.\n* **deliveryAddress** – The address where the purchased goods should be delivered.\n* **shopperEmail** – The shopper's email address.\n* **shopperName** – The shopper's full name.\n* **telephoneNumber** – The shopper's phone number.\n", + "items" : { + "enum" : [ + "billingAddress", + "deliveryAddress", + "shopperEmail", + "shopperName", + "telephoneNumber" + ], + "type" : "string" + }, + "type" : "array" + }, + "returnUrl" : { + "description" : "Website URL used for redirection after payment is completed.\nIf provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.", + "type" : "string" + }, + "reusable" : { + "description" : "Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only.", + "type" : "boolean" + }, + "riskData" : { + "x-addedInVersion" : "65", + "description" : "Any risk-related settings to apply to the payment.", + "$ref" : "#/components/schemas/RiskData" + }, + "shopperEmail" : { + "description" : "The shopper's email address.", + "type" : "string" + }, + "shopperLocale" : { + "description" : "The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`.\n\nFor a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization).", + "type" : "string" + }, + "shopperName" : { + "description" : "The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "x-addedInVersion" : "69", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "69", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splitCardFundingSources" : { + "x-addedInVersion" : "69", + "default" : false, + "description" : "Boolean value indicating whether the card payment method should be split into separate debit and credit options.", + "type" : "boolean" + }, + "splits" : { + "description" : "An array of objects specifying how the payment should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **active**: The link can be used to make payments.\n* **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.\n* **completed**: The shopper completed the payment.\n* **paymentPending**: The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.", + "enum" : [ + "active", + "completed", + "expired", + "paid", + "paymentPending" + ], + "type" : "string" + }, + "store" : { + "description" : "The physical store, for which this payment is processed.", + "type" : "string" + }, + "storePaymentMethodMode" : { + "x-addedInVersion" : "68", + "description" : "Indicates if the details of the payment method will be stored for the shopper. Possible values:\n* **disabled** – No details will be stored (default).\n* **askForConsent** – If the `shopperReference` is provided, the UI lets the shopper choose if they want their payment details to be stored.\n* **enabled** – If the `shopperReference` is provided, the details will be stored without asking the shopper for consent.", + "enum" : [ + "askForConsent", + "disabled", + "enabled" + ], + "type" : "string" + }, + "telephoneNumber" : { + "x-addedInVersion" : "68", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "themeId" : { + "x-addedInVersion" : "67", + "description" : "A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area.", + "type" : "string" + }, + "url" : { + "description" : "The URL at which the shopper can complete the payment.", + "readOnly" : true, + "type" : "string" + } + }, + "required" : [ + "amount", + "reference", + "merchantAccount", + "id", + "url", + "status" + ] + }, + "PaymentMethod" : { + "properties" : { + "brand" : { + "x-addedInVersion" : "65", + "description" : "Brand for the selected gift card. For example: plastix, hmclub.", + "type" : "string" + }, + "brands" : { + "x-addedInVersion" : "49", + "description" : "List of possible brands. For example: visa, mc.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "configuration" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "The configuration of the payment method.", + "type" : "object" + }, + "fundingSource" : { + "x-addedInVersion" : "53", + "description" : "The funding source of the payment method.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "group" : { + "description" : "The group where this payment method belongs to.", + "$ref" : "#/components/schemas/PaymentMethodGroup" + }, + "inputDetails" : { + "deprecated" : true, + "description" : "All input details to be provided to complete the payment with this payment method.", + "items" : { + "$ref" : "#/components/schemas/InputDetail" + }, + "type" : "array" + }, + "issuers" : { + "x-addedInVersion" : "68", + "description" : "A list of issuers for this payment method.", + "items" : { + "$ref" : "#/components/schemas/PaymentMethodIssuer" + }, + "type" : "array" + }, + "name" : { + "description" : "The displayable name of this payment method.", + "type" : "string" + }, + "type" : { + "description" : "The unique payment method code.", + "type" : "string" + } + } + }, + "PaymentMethodGroup" : { + "properties" : { + "name" : { + "description" : "The name of the group.", + "type" : "string" + }, + "paymentMethodData" : { + "description" : "Echo data to be used if the payment method is displayed as part of this group.", + "type" : "string" + }, + "type" : { + "description" : "The unique code of the group.", + "type" : "string" + } + } + }, + "PaymentMethodIssuer" : { + "properties" : { + "disabled" : { + "default" : false, + "description" : "A boolean value indicating whether this issuer is unavailable. Can be `true` whenever the issuer is offline.", + "type" : "boolean" + }, + "id" : { + "description" : "The unique identifier of this issuer, to submit in requests to /payments.", + "type" : "string" + }, + "name" : { + "description" : "A localized name of the issuer.", + "type" : "string" + } + }, + "required" : [ + "id", + "name" + ] + }, + "PaymentMethodsRequest" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "allowedPaymentMethods" : { + "x-addedInVersion" : "33", + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "blockedPaymentMethods" : { + "x-addedInVersion" : "33", + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field can be used for filtering out payment methods that are only available on specific platforms. Possible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper's country code.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "order" : { + "x-addedInVersion" : "64", + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "splitCardFundingSources" : { + "x-addedInVersion" : "53", + "default" : false, + "description" : "Boolean value indicating whether the card payment method should be split into separate debit and credit options.", + "type" : "boolean" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + } + }, + "required" : [ + "merchantAccount" + ] + }, + "PaymentMethodsResponse" : { + "properties" : { + "paymentMethods" : { + "description" : "Detailed list of payment methods required to generate payment forms.", + "items" : { + "$ref" : "#/components/schemas/PaymentMethod" + }, + "type" : "array" + }, + "storedPaymentMethods" : { + "x-addedInVersion" : "49", + "description" : "List of all stored payment methods.", + "items" : { + "$ref" : "#/components/schemas/StoredPaymentMethod" + }, + "type" : "array" + } + } + }, + "PaymentRefundResource" : { + "properties" : { + "amount" : { + "description" : "The refund amount.", + "$ref" : "#/components/schemas/Amount" + }, + "lineItems" : { + "description" : "Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment).\n> This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to refund. ", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the refund request.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the refund request.", + "type" : "string" + }, + "splits" : { + "description" : "An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "amount", + "pspReference", + "paymentPspReference" + ] + }, + "PaymentRequest" : { + "properties" : { + "accountInfo" : { + "x-addedInVersion" : "40", + "description" : "Shopper account information for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/AccountInfo" + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "authenticationData" : { + "x-addedInVersion" : "69", + "description" : "Data for 3DS authentication.", + "$ref" : "#/components/schemas/AuthenticationData" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "browserInfo" : { + "description" : "The shopper's browser information.\n> For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.", + "$ref" : "#/components/schemas/BrowserInfo" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "checkoutAttemptId" : { + "x-addedInVersion" : "68", + "description" : "Checkout attempt ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "deviceFingerprint" : { + "x-addedInVersion" : "2", + "description" : "A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).", + "maxLength" : 5000, + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "merchantRiskIndicator" : { + "x-addedInVersion" : "40", + "description" : "Additional risk fields for 3D Secure 2.\n> For 3D Secure 2 transactions, we recommend that you include this object to increase the chances of achieving a frictionless flow.", + "$ref" : "#/components/schemas/MerchantRiskIndicator" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "mpiData" : { + "description" : "Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires).", + "$ref" : "#/components/schemas/ThreeDSecureData" + }, + "order" : { + "description" : "The order information required for partial payments.", + "$ref" : "#/components/schemas/CheckoutOrder" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "x-addedInVersion" : "40", + "description" : "Required for the 3D Secure 2 `channel` **Web** integration.\n\nSet this parameter to the origin URL of the page that you are loading the 3D Secure Component from.", + "maxLength" : 8000, + "type" : "string" + }, + "paymentMethod" : { + "description" : "The type and required details of a payment method to use.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/AchDetails" + }, + { + "$ref" : "#/components/schemas/AfterpayDetails" + }, + { + "$ref" : "#/components/schemas/AmazonPayDetails" + }, + { + "$ref" : "#/components/schemas/AndroidPayDetails" + }, + { + "$ref" : "#/components/schemas/ApplePayDetails" + }, + { + "$ref" : "#/components/schemas/BacsDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/BillDeskDetails" + }, + { + "$ref" : "#/components/schemas/BlikDetails" + }, + { + "$ref" : "#/components/schemas/CardDetails" + }, + { + "$ref" : "#/components/schemas/CellulantDetails" + }, + { + "$ref" : "#/components/schemas/DokuDetails" + }, + { + "$ref" : "#/components/schemas/DotpayDetails" + }, + { + "$ref" : "#/components/schemas/DragonpayDetails" + }, + { + "$ref" : "#/components/schemas/EcontextVoucherDetails" + }, + { + "$ref" : "#/components/schemas/GenericIssuerPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/GiropayDetails" + }, + { + "$ref" : "#/components/schemas/GooglePayDetails" + }, + { + "$ref" : "#/components/schemas/IdealDetails" + }, + { + "$ref" : "#/components/schemas/KlarnaDetails" + }, + { + "$ref" : "#/components/schemas/MasterpassDetails" + }, + { + "$ref" : "#/components/schemas/MbwayDetails" + }, + { + "$ref" : "#/components/schemas/MobilePayDetails" + }, + { + "$ref" : "#/components/schemas/MolPayDetails" + }, + { + "$ref" : "#/components/schemas/OpenInvoiceDetails" + }, + { + "$ref" : "#/components/schemas/PayPalDetails" + }, + { + "$ref" : "#/components/schemas/PayUUpiDetails" + }, + { + "$ref" : "#/components/schemas/PayWithGoogleDetails" + }, + { + "$ref" : "#/components/schemas/PaymentDetails" + }, + { + "$ref" : "#/components/schemas/RatepayDetails" + }, + { + "$ref" : "#/components/schemas/SamsungPayDetails" + }, + { + "$ref" : "#/components/schemas/SepaDirectDebitDetails" + }, + { + "$ref" : "#/components/schemas/StoredPaymentMethodDetails" + }, + { + "$ref" : "#/components/schemas/UpiCollectDetails" + }, + { + "$ref" : "#/components/schemas/UpiIntentDetails" + }, + { + "$ref" : "#/components/schemas/VippsDetails" + }, + { + "$ref" : "#/components/schemas/VisaCheckoutDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayDetails" + }, + { + "$ref" : "#/components/schemas/WeChatPayMiniProgramDetails" + }, + { + "$ref" : "#/components/schemas/ZipDetails" + } + ] + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "30", + "description" : "Defines a recurring payment type.\nAllowed values:\n* `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule.\n* `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.\n", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "redirectFromIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting back from the issuer.", + "type" : "string" + }, + "redirectToIssuerMethod" : { + "x-addedInVersion" : "32", + "description" : "Specifies the redirect method (GET or POST) when redirecting to the issuer.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDS2RequestData" : { + "x-addedInVersion" : "40", + "description" : "Request fields for 3D Secure 2. To check if any of the following fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) or [Classic integration](https://docs.adyen.com/classic-integration) documentation.", + "$ref" : "#/components/schemas/ThreeDS2RequestData" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.authenticationOnly` 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" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "paymentMethod" + ] + }, + "PaymentResponse" : { + "properties" : { + "action" : { + "x-addedInVersion" : "49", + "description" : "Action to be taken for completing the payment.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/CheckoutAwaitAction" + }, + { + "$ref" : "#/components/schemas/CheckoutBankTransferAction" + }, + { + "$ref" : "#/components/schemas/CheckoutDonationAction" + }, + { + "$ref" : "#/components/schemas/CheckoutOneTimePasscodeAction" + }, + { + "$ref" : "#/components/schemas/CheckoutQrCodeAction" + }, + { + "$ref" : "#/components/schemas/CheckoutRedirectAction" + }, + { + "$ref" : "#/components/schemas/CheckoutSDKAction" + }, + { + "$ref" : "#/components/schemas/CheckoutThreeDS2Action" + }, + { + "$ref" : "#/components/schemas/CheckoutVoucherAction" + } + ] + }, + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCard" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataSepa" + } + ], + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**.", + "type" : "object" + }, + "amount" : { + "x-addedInVersion" : "52", + "description" : "Authorised amount in the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "donationToken" : { + "x-addedInVersion" : "66", + "description" : "Donation Token containing payment details for Adyen Giving.", + "type" : "string" + }, + "fraudResult" : { + "description" : "The fraud result properties of the payment.", + "$ref" : "#/components/schemas/FraudResult" + }, + "merchantReference" : { + "x-addedInVersion" : "49", + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "order" : { + "description" : "Contains updated information regarding the order in case order information was provided in the request.", + "$ref" : "#/components/schemas/CheckoutOrderResponse" + }, + "paymentMethod" : { + "x-addedInVersion" : "69", + "description" : "The payment method used in the transaction. Only returned for successful payments\n", + "$ref" : "#/components/schemas/ResponsePaymentMethod" + }, + "pspReference" : { + "description" : "Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.\n\n> For payment methods that require a redirect or additional action, you will get this value in the `/payments/details` response.", + "type" : "string" + }, + "refusalReason" : { + "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "refusalReasonCode" : { + "x-addedInVersion" : "37", + "description" : "Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\nPossible values:\n\n* **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n* **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state.\n* **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state.\n* **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state.\n* **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment.\n* **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment.\n* **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments.\n* **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation.\n* **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state.", + "enum" : [ + "AuthenticationFinished", + "Authorised", + "Cancelled", + "ChallengeShopper", + "Error", + "IdentifyShopper", + "Pending", + "PresentToShopper", + "Received", + "RedirectShopper", + "Refused", + "Success" + ], + "type" : "string" + }, + "threeDS2ResponseData" : { + "x-addedInVersion" : "67", + "description" : "Response of the 3D Secure 2 authentication.", + "$ref" : "#/components/schemas/ThreeDS2ResponseData" + }, + "threeDS2Result" : { + "x-addedInVersion" : "41", + "description" : "Result of the 3D Secure 2 authentication.", + "$ref" : "#/components/schemas/ThreeDS2Result" + }, + "threeDSPaymentData" : { + "x-addedInVersion" : "67", + "description" : "When non-empty, contains a value that you must submit to the `/payments/details` endpoint as `paymentData`.", + "type" : "string" + } + } + }, + "PaymentReversalResource" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to reverse. ", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the reversal request.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the reversal request.", + "type" : "string" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "pspReference", + "paymentPspReference" + ] + }, + "PaymentSetupRequest" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/AdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/AdditionalDataAirline" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCarRental" + }, + { + "$ref" : "#/components/schemas/AdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLevel23" + }, + { + "$ref" : "#/components/schemas/AdditionalDataLodging" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpenInvoice" + }, + { + "$ref" : "#/components/schemas/AdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRatepay" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRetry" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRisk" + }, + { + "$ref" : "#/components/schemas/AdditionalDataRiskStandalone" + }, + { + "$ref" : "#/components/schemas/AdditionalDataSubMerchant" + }, + { + "$ref" : "#/components/schemas/AdditionalDataTemporaryServices" + }, + { + "$ref" : "#/components/schemas/AdditionalDataWallets" + } + ], + "description" : "This field contains additional data, which may be required for a particular payment request.\n\nThe `additionalData` object consists of entries, each of which includes the key and value.", + "type" : "object" + }, + "allowedPaymentMethods" : { + "x-addedInVersion" : "33", + "description" : "List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "amount" : { + "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).", + "$ref" : "#/components/schemas/Amount" + }, + "applicationInfo" : { + "x-addedInVersion" : "40", + "description" : "Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).", + "$ref" : "#/components/schemas/ApplicationInfo" + }, + "billingAddress" : { + "x-addedInVersion" : "4", + "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.", + "$ref" : "#/components/schemas/Address" + }, + "blockedPaymentMethods" : { + "x-addedInVersion" : "33", + "description" : "List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods).\n\nExample: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]`", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "captureDelayHours" : { + "x-addedInVersion" : "2", + "description" : "The delay between the authorisation and scheduled auto-capture, specified in hours.", + "format" : "int32", + "type" : "integer" + }, + "channel" : { + "description" : "The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`.\n\nPossible values:\n* iOS\n* Android\n* Web", + "enum" : [ + "iOS", + "Android", + "Web" + ], + "type" : "string" + }, + "checkoutAttemptId" : { + "x-addedInVersion" : "68", + "description" : "Checkout attempt ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "company" : { + "x-addedInVersion" : "32", + "description" : "Information regarding the company.", + "$ref" : "#/components/schemas/Company" + }, + "configuration" : { + "description" : "Specify configurations to enable additional features.", + "$ref" : "#/components/schemas/Configuration" + }, + "conversionId" : { + "x-addedInVersion" : "49", + "description" : "Conversion ID that corresponds to the Id generated for tracking user payment journey.", + "type" : "string" + }, + "countryCode" : { + "description" : "The shopper country.\n\nFormat: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\nExample: NL or DE", + "type" : "string" + }, + "dateOfBirth" : { + "x-addedInVersion" : "7", + "description" : "The shopper's date of birth.\n\nFormat [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD", + "format" : "date-time", + "type" : "string" + }, + "dccQuote" : { + "description" : "The forex quote as returned in the response of the forex service.", + "$ref" : "#/components/schemas/ForexQuote" + }, + "deliveryAddress" : { + "description" : "The address where the purchased goods should be delivered.", + "$ref" : "#/components/schemas/Address" + }, + "deliveryDate" : { + "x-addedInVersion" : "8", + "description" : "The date and time the purchased goods should be delivered.\n\nFormat [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD\n\nExample: 2017-07-17T13:42:40.428+01:00", + "format" : "date-time", + "type" : "string" + }, + "enableOneClick" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments.", + "type" : "boolean" + }, + "enablePayOut" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for payouts.", + "type" : "boolean" + }, + "enableRecurring" : { + "x-addedInVersion" : "32", + "description" : "When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments.", + "type" : "boolean" + }, + "entityType" : { + "x-addedInVersion" : "24", + "description" : "The type of the entity the payment is processed for.", + "enum" : [ + "NaturalPerson", + "CompanyName" + ], + "type" : "string" + }, + "fraudOffset" : { + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "installments" : { + "x-addedInVersion" : "4", + "description" : "Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).", + "$ref" : "#/components/schemas/Installments" + }, + "lineItems" : { + "x-addedInVersion" : "32", + "description" : "Price and product information about the purchased items, to be included on the invoice sent to the shopper.\n> This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.", + "items" : { + "$ref" : "#/components/schemas/LineItem" + }, + "type" : "array" + }, + "mandate" : { + "description" : "The mandate details to initiate recurring transaction.", + "$ref" : "#/components/schemas/Mandate" + }, + "mcc" : { + "x-addedInVersion" : "12", + "description" : "The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant.", + "type" : "string" + }, + "merchantAccount" : { + "description" : "The merchant account identifier, with which you want to process the transaction.", + "type" : "string" + }, + "merchantOrderReference" : { + "x-addedInVersion" : "9", + "description" : "This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle.\nThe same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations.\n> We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.", + "type" : "string" + }, + "metadata" : { + "x-addedInVersion" : "17", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Metadata consists of entries, each of which includes a key and a value.\nLimits:\n* Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\".\n* Maximum 20 characters per key.\n* Maximum 80 characters per value. ", + "type" : "object" + }, + "orderReference" : { + "description" : "When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead.", + "type" : "string" + }, + "origin" : { + "description" : "Required for the Web integration.\n\nSet this parameter to the origin URL of the page that you are loading the SDK from.", + "type" : "string" + }, + "recurringExpiry" : { + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "type" : "string" + }, + "recurringFrequency" : { + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "reference" : { + "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.", + "type" : "string" + }, + "returnUrl" : { + "description" : "The URL to return to in case of a redirection.\nThe format depends on the channel. This URL can have a maximum of 1024 characters.\n* For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n* For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\nExample: `my-app://`\n* For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\nExample: `my-app://your.package.name`", + "maxLength" : 8000, + "type" : "string" + }, + "riskData" : { + "description" : "Contains risk data, such as client-side data, used to identify risk for a transaction.", + "$ref" : "#/components/schemas/RiskData" + }, + "sdkVersion" : { + "x-addedInVersion" : "32", + "description" : "The version of the SDK you are using (for Web SDK integrations only).", + "type" : "string" + }, + "sessionValidity" : { + "description" : "The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format.\n\nFor example: 2020-07-18T15:42:40.428+01:00", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.", + "type" : "string" + }, + "shopperIP" : { + "description" : "The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks).\n> For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations.\nThis field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.", + "enum" : [ + "Ecommerce", + "ContAuth", + "Moto", + "POS" + ], + "type" : "string" + }, + "shopperLocale" : { + "x-addedInVersion" : "7", + "description" : "The combination of a language code and a country code to specify the language to be used in the payment.", + "type" : "string" + }, + "shopperName" : { + "x-addedInVersion" : "7", + "description" : "The shopper's full name.", + "$ref" : "#/components/schemas/Name" + }, + "shopperReference" : { + "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters.\n> Your reference must not include personally identifiable information (PII), for example name or email address.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", + "type" : "string" + }, + "socialSecurityNumber" : { + "x-addedInVersion" : "4", + "description" : "The shopper's social security number.", + "type" : "string" + }, + "splits" : { + "x-addedInVersion" : "37", + "description" : "An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split).", + "items" : { + "$ref" : "#/components/schemas/Split" + }, + "type" : "array" + }, + "store" : { + "x-addedInVersion" : "23", + "description" : "The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms.", + "maxLength" : 16, + "minLength" : 1, + "type" : "string" + }, + "storePaymentMethod" : { + "x-addedInVersion" : "49", + "description" : "When true and `shopperReference` is provided, the payment details will be stored.", + "type" : "boolean" + }, + "telephoneNumber" : { + "x-addedInVersion" : "7", + "description" : "The shopper's telephone number.", + "type" : "string" + }, + "threeDSAuthenticationOnly" : { + "x-addedInVersion" : "50", + "deprecated" : true, + "x-deprecatedInVersion" : "69", + "x-deprecatedMessage" : "Use `authenticationData.authenticationOnly` 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" + }, + "token" : { + "description" : "The token obtained when initializing the SDK.\n\n> This parameter is required for iOS and Android; not required for Web.", + "type" : "string" + }, + "trustedShopper" : { + "x-addedInVersion" : "37", + "description" : "Set to true if the payment should be routed to a trusted MID.", + "type" : "boolean" + } + }, + "required" : [ + "merchantAccount", + "reference", + "amount", + "returnUrl", + "countryCode" + ] + }, + "PaymentSetupResponse" : { + "properties" : { + "paymentSession" : { + "description" : "The encoded payment session that you need to pass to the SDK.", + "type" : "string" + }, + "recurringDetails" : { + "deprecated" : true, + "description" : "The detailed list of stored payment details required to generate payment forms. Will be empty if oneClick is set to false in the request.", + "items" : { + "$ref" : "#/components/schemas/RecurringDetail" + }, + "type" : "array" + } + } + }, + "PaymentVerificationRequest" : { + "properties" : { + "payload" : { + "description" : "Encrypted and signed payment result data. You should receive this value from the Checkout SDK after the shopper completes the payment.", + "maxLength" : 40000, + "type" : "string" + } + }, + "required" : [ + "payload" + ] + }, + "PaymentVerificationResponse" : { + "properties" : { + "additionalData" : { + "additionalProperties" : { + "type" : "string" + }, + "x-anyOf" : [ + { + "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCard" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataOpi" + }, + { + "$ref" : "#/components/schemas/ResponseAdditionalDataSepa" + } + ], + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**.", + "type" : "object" + }, + "fraudResult" : { + "description" : "The fraud result properties of the payment.", + "$ref" : "#/components/schemas/FraudResult" + }, + "merchantReference" : { + "description" : "A unique value that you provided in the initial `/paymentSession` request as a `reference` field.", + "type" : "string" + }, + "order" : { + "description" : "Contains updated information regarding the order in case order information was provided in the request.", + "$ref" : "#/components/schemas/CheckoutOrderResponse" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.", + "type" : "string" + }, + "refusalReason" : { + "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "refusalReasonCode" : { + "x-addedInVersion" : "37", + "description" : "Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).", + "type" : "string" + }, + "resultCode" : { + "description" : "The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\nPossible values:\n\n* **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n* **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state.\n* **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state.\n* **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state.\n* **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment.\n* **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment.\n* **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments.\n* **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation.\n* **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state.", + "enum" : [ + "AuthenticationFinished", + "Authorised", + "Cancelled", + "ChallengeShopper", + "Error", + "IdentifyShopper", + "Pending", + "PresentToShopper", + "Received", + "RedirectShopper", + "Refused", + "Success" + ], + "type" : "string" + }, + "serviceError" : { + "description" : "The type of the error.", + "$ref" : "#/components/schemas/ServiceError2" + }, + "shopperLocale" : { + "description" : "The shopperLocale value provided in the payment request.", + "type" : "string" + } + }, + "required" : [ + "merchantReference", + "shopperLocale" + ] + }, + "Phone" : { + "properties" : { + "cc" : { + "description" : "Country code. Length: 1–3 characters.", + "maxLength" : 3, + "minLength" : 1, + "type" : "string" + }, + "subscriber" : { + "description" : "Subscriber number. Maximum length: 15 characters.", + "maxLength" : 15, + "type" : "string" + } + } + }, + "RatepayDetails" : { + "additionalProperties" : false, + "properties" : { + "billingAddress" : { + "description" : "The address where to send the invoice.", + "type" : "string" + }, + "deliveryAddress" : { + "description" : "The address where the goods should be delivered.", + "type" : "string" + }, + "personalDetails" : { + "description" : "Shopper name, date of birth, phone number, and email address.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "ratepay", + "description" : "**ratepay**", + "enum" : [ + "ratepay", + "ratepay_directdebit" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "Ratepay" + }, + "Recurring" : { + "properties" : { + "contract" : { + "description" : "The type of recurring contract to be used.\nPossible values:\n* `ONECLICK` – Payment details can be used to initiate a one-click payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n* `RECURRING` – Payment details can be used without the card security code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n* `ONECLICK,RECURRING` – Payment details can be used regardless of whether the shopper is on your site or not.\n* `PAYOUT` – Payment details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts).", + "enum" : [ + "ONECLICK", + "RECURRING", + "PAYOUT" + ], + "type" : "string" + }, + "recurringDetailName" : { + "description" : "A descriptive name for this detail.", + "type" : "string" + }, + "recurringExpiry" : { + "x-addedInVersion" : "40", + "description" : "Date after which no further authorisations shall be performed. Only for 3D Secure 2.", + "format" : "date-time", + "type" : "string" + }, + "recurringFrequency" : { + "x-addedInVersion" : "40", + "description" : "Minimum number of days between authorisations. Only for 3D Secure 2.", + "type" : "string" + }, + "tokenService" : { + "x-addedInVersion" : "25", + "description" : "The name of the token service.", + "enum" : [ + "VISATOKENSERVICE", + "MCTOKENSERVICE" + ], + "type" : "string" + } + } + }, + "RecurringDetail" : { + "properties" : { + "brand" : { + "x-addedInVersion" : "65", + "description" : "Brand for the selected gift card. For example: plastix, hmclub.", + "type" : "string" + }, + "brands" : { + "x-addedInVersion" : "49", + "description" : "List of possible brands. For example: visa, mc.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "configuration" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "The configuration of the payment method.", + "type" : "object" + }, + "fundingSource" : { + "x-addedInVersion" : "53", + "description" : "The funding source of the payment method.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "group" : { + "description" : "The group where this payment method belongs to.", + "$ref" : "#/components/schemas/PaymentMethodGroup" + }, + "inputDetails" : { + "deprecated" : true, + "description" : "All input details to be provided to complete the payment with this payment method.", + "items" : { + "$ref" : "#/components/schemas/InputDetail" + }, + "type" : "array" + }, + "issuers" : { + "x-addedInVersion" : "68", + "description" : "A list of issuers for this payment method.", + "items" : { + "$ref" : "#/components/schemas/PaymentMethodIssuer" + }, + "type" : "array" + }, + "name" : { + "description" : "The displayable name of this payment method.", + "type" : "string" + }, + "recurringDetailReference" : { + "description" : "The reference that uniquely identifies the recurring detail.", + "type" : "string" + }, + "storedDetails" : { + "description" : "Contains information on previously stored payment details.", + "$ref" : "#/components/schemas/StoredDetails" + }, + "type" : { + "description" : "The unique payment method code.", + "type" : "string" + } + } + }, + "Redirect" : { + "properties" : { + "data" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "When the redirect URL must be accessed via POST, use this data to post to the redirect URL.", + "type" : "object" + }, + "method" : { + "description" : "The web method that you must use to access the redirect URL.\n\nPossible values: GET, POST.", + "enum" : [ + "GET", + "POST" + ], + "type" : "string" + }, + "url" : { + "description" : "The URL, to which you must redirect a shopper to complete a payment.", + "type" : "string" + } + } + }, + "ResponseAdditionalData3DSecure" : { + "properties" : { + "cardHolderInfo" : { + "description" : "Information provided by the issuer to the cardholder. If this field is present, you need to display this information to the cardholder. ", + "type" : "string" + }, + "cavv" : { + "description" : "The Cardholder Authentication Verification Value (CAVV) for the 3D Secure authentication session, as a Base64-encoded 20-byte array.", + "type" : "string" + }, + "cavvAlgorithm" : { + "description" : "The CAVV algorithm used.", + "type" : "string" + }, + "scaExemptionRequested" : { + "description" : "Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest) that Adyen requested for the payment.\n\n Possible values:\n* **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** ", + "type" : "string" + }, + "threeds2.cardEnrolled" : { + "description" : "Indicates whether a card is enrolled for 3D Secure 2.", + "type" : "boolean" + } + } + }, + "ResponseAdditionalDataBillingAddress" : { + "properties" : { + "billingAddress.city" : { + "description" : "The billing address city passed in the payment request.", + "type" : "string" + }, + "billingAddress.country" : { + "description" : "The billing address country passed in the payment request.\n\nExample: NL", + "type" : "string" + }, + "billingAddress.houseNumberOrName" : { + "description" : "The billing address house number or name passed in the payment request.", + "type" : "string" + }, + "billingAddress.postalCode" : { + "description" : "The billing address postal code passed in the payment request.\n\nExample: 1011 DJ", + "type" : "string" + }, + "billingAddress.stateOrProvince" : { + "description" : "The billing address state or province passed in the payment request.\n\nExample: NH", + "type" : "string" + }, + "billingAddress.street" : { + "description" : "The billing address street passed in the payment request.", + "type" : "string" + } + } + }, + "ResponseAdditionalDataCard" : { + "properties" : { + "cardBin" : { + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", + "type" : "string" + }, + "cardHolderName" : { + "description" : "The cardholder name passed in the payment request.", + "type" : "string" + }, + "cardIssuingBank" : { + "description" : "The bank or the financial institution granting lines of credit through card association branded payment cards. This information can be included when available.", + "type" : "string" + }, + "cardIssuingCountry" : { + "description" : "The country where the card was issued.\n\nExample: US", + "type" : "string" + }, + "cardIssuingCurrency" : { + "description" : "The currency in which the card is issued, if this information is available. Provided as the currency code or currency number from the ISO-4217 standard. \n\nExample: USD", + "type" : "string" + }, + "cardPaymentMethod" : { + "description" : "The card payment method used for the transaction.\n\nExample: amex", + "type" : "string" + }, + "cardSummary" : { + "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", + "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" + } + } + }, + "ResponseAdditionalDataCommon" : { + "properties" : { + "acquirerAccountCode" : { + "description" : "The name of the Adyen acquirer account.\n\nExample: PayPalSandbox_TestAcquirer\n\n> Only relevant for PayPal transactions.", + "type" : "string" + }, + "acquirerCode" : { + "description" : "The name of the acquirer processing the payment request.\n\nExample: TestPmmAcquirer", + "type" : "string" + }, + "acquirerReference" : { + "description" : "The reference number that can be used for reconciliation in case a non-Adyen acquirer is used for settlement.\n\nExample: 7C9N3FNBKT9", + "type" : "string" + }, + "alias" : { + "description" : "The Adyen alias of the card.\n\nExample: H167852639363479", + "type" : "string" + }, + "aliasType" : { + "description" : "The type of the card alias.\n\nExample: Default", + "type" : "string" + }, + "authCode" : { + "description" : "Authorisation code:\n* When the payment is authorised successfully, this field holds the authorisation code for the payment.\n* When the payment is not authorised, this field is empty.\n\nExample: 58747", + "type" : "string" + }, + "authorisationMid" : { + "description" : "Merchant ID known by the acquirer.", + "type" : "string" + }, + "authorisedAmountCurrency" : { + "description" : "The currency of the authorised amount, as a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", + "type" : "string" + }, + "authorisedAmountValue" : { + "description" : "Value of the amount authorised.\n\nThis amount is represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).", + "type" : "string" + }, + "avsResult" : { + "description" : "The AVS result code of the payment, which provides information about the outcome of the AVS check.\n\nFor possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs).", + "type" : "string" + }, + "avsResultRaw" : { + "description" : "Raw AVS result received from the acquirer, where available.\n\nExample: D", + "type" : "string" + }, + "bic" : { + "description" : "BIC of a bank account.\n\nExample: TESTNL01\n\n> Only relevant for SEPA Direct Debit transactions.", + "type" : "string" + }, + "coBrandedWith" : { + "description" : "Includes the co-branded card information.", + "type" : "string" + }, + "cvcResult" : { + "description" : "The result of CVC verification.", + "example" : "1 Matches", + "type" : "string" + }, + "cvcResultRaw" : { + "description" : "The raw result of CVC verification.", + "example" : "M", + "type" : "string" + }, + "dsTransID" : { + "description" : "Supported for 3D Secure 2. The unique transaction identifier assigned by the DS to identify a single transaction.", + "type" : "string" + }, + "eci" : { + "description" : "The Electronic Commerce Indicator returned from the schemes for the 3DS payment session.\n\nExample: 02", + "type" : "string" + }, + "expiryDate" : { + "description" : "The expiry date on the card.\n\nExample: 6/2016\n\n> Returned only in case of a card payment.", + "type" : "string" + }, + "extraCostsCurrency" : { + "description" : "The currency of the extra amount charged due to additional amounts set in the skin used in the HPP payment request.\n\nExample: EUR", + "type" : "string" + }, + "extraCostsValue" : { + "description" : "The value of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. The amount is in minor units.", + "type" : "string" + }, + "fraudCheck-[itemNr]-[FraudCheckname]" : { + "description" : "The fraud score due to a particular fraud check. The fraud check name is found in the key of the key-value pair.", + "type" : "string" + }, + "fraudManualReview" : { + "description" : "Indicates if the payment is sent to manual review.", + "type" : "string" + }, + "fraudResultType" : { + "description" : "The fraud result properties of the payment.", + "enum" : [ + "GREEN", + "FRAUD" + ], + "type" : "string" + }, + "fundingSource" : { + "description" : "Information regarding the funding type of the card. The possible return values are:\n* CHARGE\n* CREDIT\n* DEBIT\n* PREPAID\n* PREPAID_RELOADABLE\n\n* PREPAID_NONRELOADABLE\n* DEFFERED_DEBIT\n\n> This functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team.\n\nFor receiving this field in the notification, enable **Include Funding Source** in **Notifications** > **Additional settings**.", + "type" : "string" + }, + "fundsAvailability" : { + "description" : "Indicates availability of funds.\n\nVisa:\n* \"I\" (fast funds are supported)\n* \"N\" (otherwise)\n\nMastercard:\n* \"I\" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM list)\n* \"N\" (otherwise)\n\n> Returned when you verify a card BIN or estimate costs, and only if payoutEligible is \"Y\" or \"D\".", + "type" : "string" + }, + "inferredRefusalReason" : { + "description" : "Provides the more granular indication of why a transaction was refused. When a transaction fails with either \"Refused\", \"Restricted Card\", \"Transaction Not Permitted\", \"Not supported\" or \"DeclinedNon Generic\" refusalReason from the issuer, Adyen cross references its PSP-wide data for extra insight into the refusal reason. If an inferred refusal reason is available, the `inferredRefusalReason`, field is populated and the `refusalReason`, is set to \"Not Supported\".\n\nPossible values:\n\n* 3D Secure Mandated\n* Closed Account\n* ContAuth Not Supported\n* CVC Mandated\n* Ecommerce Not Allowed\n* Crossborder Not Supported\n* Card Updated\n\n* Low Authrate Bin\n* Non-reloadable prepaid card", + "type" : "string" + }, + "isCardCommercial" : { + "description" : "Indicates if the card is used for business purposes only.", + "type" : "string" + }, + "issuerCountry" : { + "description" : "The issuing country of the card based on the BIN list that Adyen maintains.\n\nExample: JP", + "type" : "string" + }, + "liabilityShift" : { + "description" : "A Boolean value indicating whether a liability shift was offered for this payment.", + "type" : "string" + }, + "mcBankNetReferenceNumber" : { + "description" : "The `mcBankNetReferenceNumber`, is a minimum of six characters and a maximum of nine characters long.\n\n> Contact Support Team to enable this field.", + "type" : "string" + }, + "merchantAdviceCode" : { + "description" : "A code and message that issuers send to provide more details about the payment. This field is especially useful when implementing a retry logic for declined payments.\n\nPossible values:\n\n* **01: New account information available**\n\n* **02: Cannot approve at this time, try again later**\n\n* **03: Do not try again**\n\n* **04: Token requirements not fulfilled for this token type**\n\n* **21: Payment Cancellation** (only for Mastercard)\n\n", + "enum" : [ + "01: New account information available", + "02: Cannot approve at this time, try again later", + "03: Do not try again", + "04: Token requirements not fulfilled for this token type", + "21: Payment Cancellation" + ], + "type" : "string" + }, + "merchantReference" : { + "description" : "The reference provided for the transaction.", + "type" : "string" + }, + "networkTxReference" : { + "description" : "Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa.\n\nThis contains either the Mastercard Trace ID or the Visa Transaction ID.", + "type" : "string" + }, + "ownerName" : { + "description" : "The owner name of a bank account.\n\nOnly relevant for SEPA Direct Debit transactions.", + "type" : "string" + }, + "paymentAccountReference" : { + "description" : "The Payment Account Reference (PAR) value links a network token with the underlying primary account number (PAN). The PAR value consists of 29 uppercase alphanumeric characters.", + "type" : "string" + }, + "paymentMethod" : { + "description" : "The payment method used in the transaction.", + "type" : "string" + }, + "paymentMethodVariant" : { + "description" : "The Adyen sub-variant of the payment method used for the payment request.\n\nFor more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant).\n\nExample: mcpro", + "type" : "string" + }, + "payoutEligible" : { + "description" : "Indicates whether a payout is eligible or not for this card.\n\nVisa:\n* \"Y\"\n* \"N\"\n\nMastercard:\n* \"Y\" (domestic and cross-border)\n\n* \"D\" (only domestic)\n* \"N\" (no MoneySend)\n* \"U\" (unknown)", + "type" : "string" + }, + "realtimeAccountUpdaterStatus" : { + "description" : "The response code from the Real Time Account Updater service.\n\nPossible return values are:\n* CardChanged\n* CardExpiryChanged\n* CloseAccount\n\n* ContactCardAccountHolder", + "type" : "string" + }, + "receiptFreeText" : { + "description" : "Message to be displayed on the terminal.", + "type" : "string" + }, + "recurring.contractTypes" : { + "x-addedInVersion" : "40", + "description" : "The recurring contract types applicable to the transaction.", + "type" : "string" + }, + "recurring.firstPspReference" : { + "description" : "The `pspReference`, of the first recurring payment that created the recurring detail.\n\nThis functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team.", + "type" : "string" + }, + "recurring.recurringDetailReference" : { + "description" : "The reference that uniquely identifies the recurring transaction.", + "type" : "string" + }, + "recurring.shopperReference" : { + "x-addedInVersion" : "40", + "description" : "The provided reference of the shopper for a recurring transaction.", + "type" : "string" + }, + "recurringProcessingModel" : { + "x-addedInVersion" : "40", + "description" : "The processing model used for the recurring transaction.", + "enum" : [ + "CardOnFile", + "Subscription", + "UnscheduledCardOnFile" + ], + "type" : "string" + }, + "referred" : { + "description" : "If the payment is referred, this field is set to true.\n\nThis field is unavailable if the payment is referred and is usually not returned with ecommerce transactions.\n\nExample: true", + "type" : "string" + }, + "refusalReasonRaw" : { + "description" : "Raw refusal reason received from the acquirer, where available.\n\nExample: AUTHORISED", + "type" : "string" + }, + "requestAmount" : { + "description" : "The amount of the payment request.", + "type" : "string" + }, + "requestCurrencyCode" : { + "description" : "The currency of the payment request.", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "The shopper interaction type of the payment request.\n\nExample: Ecommerce", + "type" : "string" + }, + "shopperReference" : { + "description" : "The shopperReference passed in the payment request.\n\nExample: AdyenTestShopperXX", + "type" : "string" + }, + "terminalId" : { + "description" : "The terminal ID used in a point-of-sale payment.\n\nExample: 06022622", + "type" : "string" + }, + "threeDAuthenticated" : { + "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment.\n\nExample: true", + "type" : "string" + }, + "threeDAuthenticatedResponse" : { + "description" : "The raw 3DS authentication result from the card issuer.\n\nExample: N", + "type" : "string" + }, + "threeDOffered" : { + "description" : "A Boolean value indicating whether 3DS was offered for this payment.\n\nExample: true", + "type" : "string" + }, + "threeDOfferedResponse" : { + "description" : "The raw enrollment result from the 3DS directory services of the card schemes.\n\nExample: Y", + "type" : "string" + }, + "threeDSVersion" : { + "description" : "The 3D Secure 2 version.", + "type" : "string" + }, + "visaTransactionId" : { + "description" : "The `visaTransactionId`, has a fixed length of 15 numeric characters.\n\n> Contact Support Team to enable this field.", + "type" : "string" + }, + "xid" : { + "description" : "The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field.\n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA=", + "type" : "string" + } + } + }, + "ResponseAdditionalDataInstallments" : { + "properties" : { + "installmentPaymentData.installmentType" : { + "description" : "Type of installment. The value of `installmentType` should be **IssuerFinanced**.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].annualPercentageRate" : { + "description" : "Annual interest rate.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].firstInstallmentAmount" : { + "description" : "First Installment Amount in minor units.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].installmentFee" : { + "description" : "Installment fee amount in minor units.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].interestRate" : { + "description" : "Interest rate for the installment period.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].maximumNumberOfInstallments" : { + "description" : "Maximum number of installments possible for this payment.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].minimumNumberOfInstallments" : { + "description" : "Minimum number of installments possible for this payment.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].numberOfInstallments" : { + "description" : "Total number of installments possible for this payment.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].subsequentInstallmentAmount" : { + "description" : "Subsequent Installment Amount in minor units.", + "type" : "string" + }, + "installmentPaymentData.option[itemNr].totalAmountDue" : { + "description" : "Total amount in minor units.", + "type" : "string" + }, + "installmentPaymentData.paymentOptions" : { + "description" : "Possible values:\n* PayInInstallmentsOnly\n* PayInFullOnly\n* PayInFullOrInstallments", + "type" : "string" + }, + "installments.value" : { + "description" : "The number of installments that the payment amount should be charged with.\n\nExample: 5\n> Only relevant for card payments in countries that support installments.", + "type" : "string" + } + } + }, + "ResponseAdditionalDataNetworkTokens" : { + "properties" : { + "networkToken.available" : { + "description" : "Indicates whether a network token is available for the specified card.", + "type" : "string" + }, + "networkToken.bin" : { + "description" : "The Bank Identification Number of a tokenized card, which is the first six digits of a card number.", + "type" : "string" + }, + "networkToken.tokenSummary" : { + "description" : "The last four digits of a network token.", + "type" : "string" + } + } + }, + "ResponseAdditionalDataOpi" : { + "properties" : { + "opi.transToken" : { + "description" : "Returned in the response if you included `opi.includeTransToken: true` in an ecommerce payment request. This contains an Oracle Payment Interface token that you can store in your Oracle Opera database to identify tokenized ecommerce transactions. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).", + "type" : "string" + } + } + }, + "ResponseAdditionalDataSepa" : { + "properties" : { + "sepadirectdebit.dateOfSignature" : { + "description" : "The transaction signature date.\n\nFormat: yyyy-MM-dd", + "type" : "string" + }, + "sepadirectdebit.mandateId" : { + "description" : "Its value corresponds to the pspReference value of the transaction.", + "type" : "string" + }, + "sepadirectdebit.sequenceType" : { + "description" : "This field can take one of the following values:\n* OneOff: (OOFF) Direct debit instruction to initiate exactly one direct debit transaction.\n\n* First: (FRST) Initial/first collection in a series of direct debit instructions.\n* Recurring: (RCUR) Direct debit instruction to carry out regular direct debit transactions initiated by the creditor.\n* Final: (FNAL) Last/final collection in a series of direct debit instructions.\n\nExample: OOFF", + "type" : "string" + } + } + }, + "ResponsePaymentMethod" : { + "properties" : { + "brand" : { + "description" : "The card brand. Only returned for card payments.", + "type" : "string" + }, + "type" : { + "description" : "The payment method type.", + "type" : "string" + } + }, + "title" : "paymentResponse" + }, + "RiskData" : { + "properties" : { + "clientData" : { + "description" : "Contains client-side data, like the device fingerprint, cookies, and specific browser settings.", + "type" : "string" + }, + "customFields" : { + "x-addedInVersion" : "65", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Any custom fields used as part of the input to configured risk rules.", + "type" : "object" + }, + "fraudOffset" : { + "x-addedInVersion" : "65", + "description" : "An integer value that is added to the normal fraud score. The value can be either positive or negative.", + "format" : "int32", + "type" : "integer" + }, + "profileReference" : { + "x-addedInVersion" : "65", + "description" : "The risk profile to assign to this payment. When left empty, the merchant-level account's default risk profile will be applied.", + "type" : "string" + } + } + }, + "SDKEphemPubKey" : { + "properties" : { + "crv" : { + "description" : "The `crv` value as received from the 3D Secure 2 SDK.", + "type" : "string" + }, + "kty" : { + "description" : "The `kty` value as received from the 3D Secure 2 SDK.", + "type" : "string" + }, + "x" : { + "description" : "The `x` value as received from the 3D Secure 2 SDK.", + "type" : "string" + }, + "y" : { + "description" : "The `y` value as received from the 3D Secure 2 SDK.", + "type" : "string" + } + } + }, + "SamsungPayDetails" : { + "additionalProperties" : false, + "properties" : { + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "samsungPayToken" : { + "description" : "The payload you received from the Samsung Pay SDK response.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "samsungpay", + "description" : "**samsungpay**", + "enum" : [ + "samsungpay" + ], + "type" : "string" + } + }, + "required" : [ + "samsungPayToken" + ], + "title" : "Samsung Pay" + }, + "SepaDirectDebitDetails" : { + "additionalProperties" : false, + "properties" : { + "iban" : { + "description" : "The International Bank Account Number (IBAN).", + "type" : "string" + }, + "ownerName" : { + "description" : "The name of the bank account holder.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "sepadirectdebit", + "description" : "**sepadirectdebit**", + "enum" : [ + "sepadirectdebit", + "sepadirectdebit_amazonpay" + ], + "type" : "string" + } + }, + "required" : [ + "iban", + "ownerName" + ], + "title" : "SEPA Direct Debit" + }, + "ServiceError" : { + "properties" : { + "additionalData" : { + "x-addedInVersion" : "46", + "additionalProperties" : { + "type" : "string" + }, + "description" : "Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs**.", + "type" : "object" + }, + "errorCode" : { + "description" : "The error code mapped to the error message.", + "type" : "string" + }, + "errorType" : { + "description" : "The category of the error.", + "type" : "string" + }, + "message" : { + "description" : "A short explanation of the issue.", + "type" : "string" + }, + "pspReference" : { + "description" : "The PSP reference of the payment.", + "type" : "string" + }, + "status" : { + "description" : "The HTTP response status.", + "format" : "int32", + "type" : "integer" + } + } + }, + "ServiceError2" : { + "properties" : { + "errorCode" : { + "type" : "string" + }, + "errorType" : { + "type" : "string" + }, + "message" : { + "type" : "string" + }, + "pspReference" : { + "type" : "string" + } + } + }, + "ShopperInput" : { + "properties" : { + "billingAddress" : { + "description" : "Specifies visibility of billing address fields.\n\nPermitted values:\n* editable\n* hidden\n* readOnly", + "enum" : [ + "editable", + "hidden", + "readOnly" + ], + "type" : "string" + }, + "deliveryAddress" : { + "description" : "Specifies visibility of delivery address fields.\n\nPermitted values:\n* editable\n* hidden\n* readOnly", + "enum" : [ + "editable", + "hidden", + "readOnly" + ], + "type" : "string" + }, + "personalDetails" : { + "description" : "Specifies visibility of personal details.\n\nPermitted values:\n* editable\n* hidden\n* readOnly", + "enum" : [ + "editable", + "hidden", + "readOnly" + ], + "type" : "string" + } + } + }, + "ShopperInteractionDevice" : { + "properties" : { + "locale" : { + "description" : "Locale on the shopper interaction device.", + "type" : "string" + }, + "os" : { + "description" : "Operating system running on the shopper interaction device.", + "type" : "string" + }, + "osVersion" : { + "description" : "Version of the operating system on the shopper interaction device.", + "type" : "string" + } + } + }, + "Split" : { + "properties" : { + "account" : { + "description" : "Unique identifier of the account where the split amount should be sent. This is required if `type` is **MarketPlace** or **BalanceAccount**.\n\n", + "type" : "string" + }, + "amount" : { + "description" : "The amount of this split.", + "$ref" : "#/components/schemas/SplitAmount" + }, + "description" : { + "description" : "A description of this split.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the split, which you can use to link the split to other operations such as captures and refunds.\n\nThis is required if `type` is **MarketPlace** or **BalanceAccount**. For the other types, we also recommend sending a reference so you can reconcile the split and the associated payment in the transaction overview and in the reports. If the reference is not provided, the split is reported as part of the aggregated [TransferBalance record type](https://docs.adyen.com/reporting/marketpay-payments-accounting-report) in Adyen for Platforms.", + "type" : "string" + }, + "type" : { + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", + "enum" : [ + "BalanceAccount", + "Commission", + "Default", + "MarketPlace", + "PaymentFee", + "Remainder", + "VAT", + "Verification" + ], + "type" : "string" + } + }, + "required" : [ + "amount", + "type" + ] + }, + "SplitAmount" : { + "properties" : { + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).\n\nIf this value is not provided, the currency in which the payment is made will be used.", + "maxLength" : 3, + "minLength" : 3, + "type" : "string" + }, + "value" : { + "description" : "The amount in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "value" + ] + }, + "StandalonePaymentCancelResource" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account that is used to process the payment.", + "type" : "string" + }, + "paymentReference" : { + "description" : "The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment to cancel.", + "type" : "string" + }, + "pspReference" : { + "description" : "Adyen's 16-character reference associated with the cancel request.", + "type" : "string" + }, + "reference" : { + "description" : "Your reference for the cancel request.", + "type" : "string" + }, + "status" : { + "description" : "The status of your request. This will always have the value **received**.", + "enum" : [ + "received" + ], + "type" : "string" + } + }, + "required" : [ + "status", + "merchantAccount", + "pspReference", + "paymentReference" + ] + }, + "StoredDetails" : { + "properties" : { + "bank" : { + "description" : "The stored bank account.", + "$ref" : "#/components/schemas/BankAccount" + }, + "card" : { + "description" : "The stored card information.", + "$ref" : "#/components/schemas/Card" + }, + "emailAddress" : { + "description" : "The email associated with stored payment details.", + "type" : "string" + } + } + }, + "StoredPaymentMethod" : { + "properties" : { + "brand" : { + "description" : "The brand of the card.", + "type" : "string" + }, + "expiryMonth" : { + "description" : "The month the card expires.", + "type" : "string" + }, + "expiryYear" : { + "description" : "The last two digits of the year the card expires. For example, **22** for the year 2022.", + "type" : "string" + }, + "holderName" : { + "description" : "The unique payment method code.", + "type" : "string" + }, + "iban" : { + "x-addedInVersion" : "67", + "description" : "The IBAN of the bank account.", + "type" : "string" + }, + "id" : { + "description" : "A unique identifier of this stored payment method.", + "type" : "string" + }, + "lastFour" : { + "description" : "The last four digits of the PAN.", + "type" : "string" + }, + "name" : { + "description" : "The display name of the stored payment method.", + "type" : "string" + }, + "networkTxReference" : { + "x-addedInVersion" : "68", + "description" : "Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa.\n\nThis contains either the Mastercard Trace ID or the Visa Transaction ID.", + "type" : "string" + }, + "ownerName" : { + "x-addedInVersion" : "67", + "description" : "The name of the bank account holder.", + "type" : "string" + }, + "shopperEmail" : { + "description" : "The shopper’s email address.", + "type" : "string" + }, + "supportedShopperInteractions" : { + "description" : "The supported shopper interactions for this stored payment method.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "type" : { + "description" : "The type of payment method.", + "type" : "string" + } + } + }, + "StoredPaymentMethodDetails" : { + "additionalProperties" : false, + "properties" : { + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "description" : "The payment method type.", + "enum" : [ + "bcmc_mobile", + "bcmc_mobile_QR", + "bcmc_mobile_app", + "momo_wallet", + "momo_wallet_app", + "paymaya_wallet", + "grabpay_SG", + "grabpay_MY", + "grabpay_TH", + "grabpay_ID", + "grabpay_VN", + "grabpay_PH", + "oxxo", + "gcash", + "kakaopay", + "truemoney" + ], + "type" : "string" + } + }, + "title" : "Stored Payment Method" + }, + "SubInputDetail" : { + "properties" : { + "configuration" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "Configuration parameters for the required input.", + "type" : "object" + }, + "items" : { + "description" : "In case of a select, the items to choose from.", + "items" : { + "$ref" : "#/components/schemas/Item" + }, + "type" : "array" + }, + "key" : { + "description" : "The value to provide in the result.", + "type" : "string" + }, + "optional" : { + "description" : "True if this input is optional to provide.", + "type" : "boolean" + }, + "type" : { + "description" : "The type of the required input.", + "type" : "string" + }, + "value" : { + "description" : "The value can be pre-filled, if available.", + "type" : "string" + } + } + }, + "ThreeDS2RequestData" : { + "properties" : { + "acctInfo" : { + "x-addedInVersion" : "68", + "description" : "Additional information about the Cardholder’s 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" + }, + "deviceChannel" : { + "description" : "The environment of the shopper.\nAllowed values:\n* `app`\n* `browser`", + "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" : { + "default" : "2.1.0", + "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" + }, + "purchaseInstalData" : { + "x-addedInVersion" : "68", + "description" : "Indicates the maximum number of authorisations permitted for instalment payments. Length: 1–3 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.\nRequired for `deviceChannel` set to **app**.", + "type" : "string" + }, + "sdkEncData" : { + "description" : "The `sdkEncData` value as received from the 3D Secure 2 SDK.\nRequired for `deviceChannel` set to **app**.", + "type" : "string" + }, + "sdkEphemPubKey" : { + "description" : "The `sdkEphemPubKey` value as received from the 3D Secure 2 SDK.\nRequired for `deviceChannel` set to **app**.", + "$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.\nOnly for `deviceChannel` set to **app**.", + "type" : "string" + }, + "sdkTransID" : { + "description" : "The `sdkTransID` value as received from the 3D Secure 2 SDK.\nOnly for `deviceChannel` set to **app**.", + "type" : "string" + }, + "sdkVersion" : { + "x-addedInVersion" : "40", + "description" : "Version of the 3D Secure 2 mobile SDK. \nOnly for `deviceChannel` set to **app**.", + "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", + "x-enum" : [ + { + "description" : "No preference", + "value" : "01" + }, + { + "description" : "No challenge requested", + "value" : "02" + }, + { + "description" : "Challenge requested (3DS Requestor preference)", + "value" : "03" + }, + { + "description" : "Challenge requested (Mandate)", + "value" : "04" + }, + { + "description" : "No challenge (transactional risk analysis is already performed)", + "value" : "05" + } + ], + "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)", + "enum" : [ + "01", + "02", + "03", + "04", + "05" + ], + "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" + } + }, + "required" : [ + "deviceChannel" + ] + }, + "ThreeDS2ResponseData" : { + "properties" : { + "acsChallengeMandated" : { + "type" : "string" + }, + "acsOperatorID" : { + "type" : "string" + }, + "acsReferenceNumber" : { + "type" : "string" + }, + "acsSignedContent" : { + "type" : "string" + }, + "acsTransID" : { + "type" : "string" + }, + "acsURL" : { + "type" : "string" + }, + "authenticationType" : { + "type" : "string" + }, + "cardHolderInfo" : { + "type" : "string" + }, + "cavvAlgorithm" : { + "type" : "string" + }, + "challengeIndicator" : { + "type" : "string" + }, + "dsReferenceNumber" : { + "type" : "string" + }, + "dsTransID" : { + "type" : "string" + }, + "exemptionIndicator" : { + "type" : "string" + }, + "messageVersion" : { + "type" : "string" + }, + "riskScore" : { + "type" : "string" + }, + "sdkEphemPubKey" : { + "type" : "string" + }, + "threeDSServerTransID" : { + "type" : "string" + }, + "transStatus" : { + "type" : "string" + }, + "transStatusReason" : { + "type" : "string" + } + } + }, + "ThreeDS2Result" : { + "properties" : { + "authenticationValue" : { + "description" : "The `authenticationValue` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "cavvAlgorithm" : { + "x-addedInVersion" : "50", + "description" : "The algorithm used by the ACS to calculate the authentication value, only for Cartes Bancaires integrations.", + "type" : "string" + }, + "challengeCancel" : { + "x-addedInVersion" : "67", + "description" : "Indicator informing the Access Control Server (ACS) and the Directory Server (DS) that the authentication has been cancelled. For possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata).", + "enum" : [ + "01", + "02", + "03", + "04", + "05", + "06", + "07" + ], + "type" : "string" + }, + "challengeIndicator" : { + "x-addedInVersion" : "67", + "description" : "Specifies 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" + }, + "dsTransID" : { + "description" : "The `dsTransID` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "eci" : { + "description" : "The `eci` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "exemptionIndicator" : { + "x-addedInVersion" : "67", + "description" : "Indicates the exemption type that was applied by the issuer to the authentication, if exemption applied.\nAllowed values:\n* `lowValue`\n* `secureCorporate`\n* `trustedBeneficiary`\n* `transactionRiskAnalysis`\n", + "enum" : [ + "lowValue", + "secureCorporate", + "trustedBeneficiary", + "transactionRiskAnalysis" + ], + "type" : "string" + }, + "messageVersion" : { + "x-addedInVersion" : "49", + "description" : "The `messageVersion` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "riskScore" : { + "x-addedInVersion" : "67", + "description" : "Risk score calculated by Cartes Bancaires Directory Server (DS).", + "type" : "string" + }, + "threeDSServerTransID" : { + "description" : "The `threeDSServerTransID` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "timestamp" : { + "description" : "The `timestamp` value of the 3D Secure 2 authentication.", + "type" : "string" + }, + "transStatus" : { + "description" : "The `transStatus` value as defined in the 3D Secure 2 specification.", + "type" : "string" + }, + "transStatusReason" : { + "description" : "Provides information on why the `transStatus` field has the specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values).", + "type" : "string" + }, + "whiteListStatus" : { + "x-addedInVersion" : "49", + "description" : "The `whiteListStatus` value as defined in the 3D Secure 2 specification.", + "type" : "string" + } + } + }, + "ThreeDSRequestData" : { + "properties" : { + "nativeThreeDS" : { + "x-addedInVersion" : "69", + "x-enum" : [ + { + "description" : "Use native 3D Secure authentication when available.", + "value" : "preferred" + } + ], + "description" : "Indicates if [native 3D Secure authentication](https://docs.adyen.com/online-payments/3d-secure/native-3ds2) should be used when available.\n\nPossible values:\n* **preferred**: Use native 3D Secure authentication when available.", + "enum" : [ + "preferred" + ], + "type" : "string" + }, + "threeDSVersion" : { + "x-addedInVersion" : "69", + "x-enum" : [ + { + "description" : "Version 2.1.0", + "value" : "2.1.0" + }, + { + "description" : "Version 2.2.0", + "value" : "2.2.0" + } + ], + "description" : "The version of 3D Secure to use.\n\nPossible values:\n\n* **2.1.0**\n* **2.2.0**", + "enum" : [ + "2.1.0", + "2.2.0" + ], + "type" : "string" + } + } + }, + "ThreeDSRequestorAuthenticationInfo" : { + "properties" : { + "threeDSReqAuthData" : { + "description" : "Data that documents and supports a specific authentication process. Maximum length: 2048 bytes.", + "type" : "string" + }, + "threeDSReqAuthMethod" : { + "description" : "Mechanism used by the Cardholder to authenticate to the 3DS Requestor. Allowed values:\n* **01** — No 3DS Requestor authentication occurred (for example, cardholder “logged in” as guest).\n* **02** — Login to the cardholder account at the 3DS Requestor system using 3DS Requestor’s own credentials.\n* **03** — Login to the cardholder account at the 3DS Requestor system using federated ID.\n* **04** — Login to the cardholder account at the 3DS Requestor system using issuer credentials.\n* **05** — Login to the cardholder account at the 3DS Requestor system using third-party authentication.\n* **06** — Login to the cardholder account at the 3DS Requestor system using FIDO Authenticator.", + "enum" : [ + "01", + "02", + "03", + "04", + "05", + "06" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "threeDSReqAuthTimestamp" : { + "description" : "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM", + "maxLength" : 12, + "minLength" : 12, + "type" : "string" + } + } + }, + "ThreeDSRequestorPriorAuthenticationInfo" : { + "properties" : { + "threeDSReqPriorAuthData" : { + "description" : "Data that documents and supports a specific authentication process. Maximum length: 2048 bytes.", + "type" : "string" + }, + "threeDSReqPriorAuthMethod" : { + "description" : "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor. Allowed values:\n* **01** — Frictionless authentication occurred by ACS.\n* **02** — Cardholder challenge occurred by ACS.\n* **03** — AVS verified.\n* **04** — Other issuer methods.", + "enum" : [ + "01", + "02", + "03", + "04" + ], + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "threeDSReqPriorAuthTimestamp" : { + "description" : "Date and time in UTC of the prior cardholder authentication. Format: YYYYMMDDHHMM", + "maxLength" : 12, + "minLength" : 12, + "type" : "string" + }, + "threeDSReqPriorRef" : { + "description" : "This data element provides additional information to the ACS to determine the best approach for handing a request. This data element contains an ACS Transaction ID for a prior authenticated transaction. For example, the first recurring transaction that was authenticated with the cardholder. Length: 30 characters.", + "maxLength" : 36, + "minLength" : 36, + "type" : "string" + } + } + }, + "ThreeDSecureData" : { + "properties" : { + "authenticationResponse" : { + "description" : "In 3D Secure 1, the authentication response if the shopper was redirected.\n\nIn 3D Secure 2, this is the `transStatus` from the challenge result. If the transaction was frictionless, omit this parameter.", + "enum" : [ + "Y", + "N", + "U", + "A" + ], + "type" : "string" + }, + "cavv" : { + "description" : "The cardholder authentication value (base64 encoded, 20 bytes in a decoded form).", + "format" : "byte", + "type" : "string" + }, + "cavvAlgorithm" : { + "description" : "The CAVV algorithm used. Include this only for 3D Secure 1.", + "type" : "string" + }, + "challengeCancel" : { + "x-addedInVersion" : "67", + "description" : "Indicator informing the Access Control Server (ACS) and the Directory Server (DS) that the authentication has been cancelled. For possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata).", + "enum" : [ + "01", + "02", + "03", + "04", + "05", + "06", + "07" + ], + "type" : "string" + }, + "directoryResponse" : { + "description" : "In 3D Secure 1, this is the enrollment response from the 3D directory server.\n\nIn 3D Secure 2, this is the `transStatus` from the `ARes`.", + "enum" : [ + "A", + "C", + "D", + "I", + "N", + "R", + "U", + "Y" + ], + "type" : "string" + }, + "dsTransID" : { + "x-addedInVersion" : "40", + "description" : "Supported for 3D Secure 2. The unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction.", + "type" : "string" + }, + "eci" : { + "description" : "The electronic commerce indicator.", + "type" : "string" + }, + "riskScore" : { + "x-addedInVersion" : "67", + "description" : "Risk score calculated by Directory Server (DS). Required for Cartes Bancaires integrations.", + "type" : "string" + }, + "threeDSVersion" : { + "x-addedInVersion" : "40", + "description" : "The version of the 3D Secure protocol.", + "type" : "string" + }, + "tokenAuthenticationVerificationValue" : { + "x-addedInVersion" : "68", + "description" : "Network token authentication verification value (TAVV). The network token cryptogram.", + "format" : "byte", + "type" : "string" + }, + "transStatusReason" : { + "x-addedInVersion" : "67", + "description" : "Provides information on why the `transStatus` field has the specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values).", + "type" : "string" + }, + "xid" : { + "description" : "Supported for 3D Secure 1. The transaction identifier (Base64-encoded, 20 bytes in a decoded form).", + "format" : "byte", + "type" : "string" + } + } + }, + "UpdatePaymentLinkRequest" : { + "properties" : { + "status" : { + "x-enum" : [ + { + "description" : "The link can be used to make payments.", + "value" : "active" + }, + { + "description" : "The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow.\n\nAdded in v68.", + "value" : "paymentPending" + }, + { + "description" : "The shopper completed the payment.\n\nRemoved in v66 and replaced with **completed**.", + "value" : "paid" + }, + { + "description" : "The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments.", + "value" : "expired" + }, + { + "description" : "The shopper completed the payment.\n\nAdded in v66 and replaces **paid**.", + "value" : "completed" + } + ], + "description" : "Status of the payment link. Possible values:\n* **expired**", + "enum" : [ + "expired" + ], + "type" : "string" + } + }, + "required" : [ + "status" + ] + }, + "UpiCollectDetails" : { + "additionalProperties" : false, + "properties" : { + "billingSequenceNumber" : { + "description" : "The sequence number for the debit. For example, send **2** if this is the second debit for the subscription. The sequence number is included in the notification sent to the shopper.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "shopperNotificationReference" : { + "description" : "The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "upi_collect", + "description" : "**upi_collect**", + "enum" : [ + "upi_collect" + ], + "type" : "string" + }, + "virtualPaymentAddress" : { + "description" : "The virtual payment address for UPI.", + "type" : "string" + } + }, + "required" : [ + "type", + "billingSequenceNumber" + ], + "title" : "UPI Collect" + }, + "UpiIntentDetails" : { + "additionalProperties" : false, + "properties" : { + "type" : { + "default" : "upi_intent", + "description" : "**upi_intent**", + "enum" : [ + "upi_intent" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ], + "title" : "UPI Intent" + }, + "VippsDetails" : { + "additionalProperties" : false, + "properties" : { + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "telephoneNumber" : { + "description" : "", + "type" : "string" + }, + "type" : { + "default" : "vipps", + "description" : "**vipps**", + "enum" : [ + "vipps" + ], + "type" : "string" + } + }, + "required" : [ + "telephoneNumber" + ], + "title" : "Vipps" + }, + "VisaCheckoutDetails" : { + "additionalProperties" : false, + "properties" : { + "fundingSource" : { + "description" : "The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**.", + "enum" : [ + "debit" + ], + "type" : "string" + }, + "type" : { + "default" : "visacheckout", + "description" : "**visacheckout**", + "enum" : [ + "visacheckout" + ], + "type" : "string" + }, + "visaCheckoutCallId" : { + "description" : "The Visa Click to Pay Call ID value. When your shopper selects a payment and/or a shipping address from Visa Click to Pay, you will receive a Visa Click to Pay Call ID.", + "type" : "string" + } + }, + "required" : [ + "visaCheckoutCallId" + ], + "title" : "Visa Checkout" + }, + "WeChatPayDetails" : { + "additionalProperties" : false, + "properties" : { + "type" : { + "default" : "wechatpay", + "description" : "**wechatpay**", + "enum" : [ + "wechatpay", + "wechatpay_pos" + ], + "type" : "string" + } + }, + "title" : "WeChat Pay" + }, + "WeChatPayMiniProgramDetails" : { + "additionalProperties" : false, + "properties" : { + "appId" : { + "type" : "string" + }, + "openid" : { + "type" : "string" + }, + "type" : { + "default" : "wechatpayMiniProgram", + "description" : "**wechatpayMiniProgram**", + "enum" : [ + "wechatpayMiniProgram" + ], + "type" : "string" + } + }, + "title" : "WeChat Pay - Mini Program" + }, + "ZipDetails" : { + "additionalProperties" : false, + "properties" : { + "clickAndCollect" : { + "description" : "Set this to **true** if the shopper would like to pick up and collect their order, instead of having the goods delivered to them.", + "type" : "string" + }, + "recurringDetailReference" : { + "deprecated" : true, + "x-deprecatedInVersion" : "49", + "x-deprecatedMessage" : "Use `storedPaymentMethodId` instead.", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "storedPaymentMethodId" : { + "x-addedInVersion" : "49", + "description" : "This is the `recurringDetailReference` returned in the response when you created the token.", + "type" : "string" + }, + "type" : { + "default" : "zip", + "description" : "**zip**", + "enum" : [ + "zip", + "zip_pos" + ], + "type" : "string" + } + }, + "title" : "Zip" + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "headers" : { + "Idempotency-Key" : { + "description" : "The idempotency key used for processing the request. Present if the key was provided in the request.", + "schema" : { + "type" : "string" + } + } + }, + "parameters" : { + "Idempotency-Key" : { + "description" : "A unique identifier for the message with a maximum of 64 characters (we recommend a UUID).", + "example" : "37ca9c97-d1d1-4c62-89e8-706891a563ed", + "name" : "Idempotency-Key", + "in" : "header", + "schema" : { + "type" : "string" + } + } + }, + "examples" : { + "generic-400" : { + "summary" : "Response code 400. Bad request.", + "value" : { + "status" : 400, + "errorCode" : "702", + "message" : "Unexpected input: \", expected: }", + "errorType" : "validation" + } + }, + "generic-401" : { + "summary" : "Response code 401. Unauthorized.", + "value" : { + "status" : 401, + "errorCode" : "000", + "message" : "HTTP Status Response - Unauthorized", + "errorType" : "security" + } + }, + "generic-403" : { + "summary" : "Response code 403. Forbidden.", + "value" : { + "status" : 403, + "errorCode" : "901", + "message" : "Invalid Merchant Account", + "errorType" : "security", + "pspReference" : "881611827877203B" + } + }, + "generic-422" : { + "summary" : "Response code 422. Unprocessable entity.", + "value" : { + "status" : 422, + "errorCode" : "14_030", + "message" : "Return URL is missing.", + "errorType" : "validation", + "pspReference" : "8816118280275544" + } + }, + "generic-500" : { + "summary" : "Response code 500. Internal server error.", + "value" : { + "status" : 500, + "errorCode" : "905", + "message" : "Payment details are not supported", + "errorType" : "configuration", + "pspReference" : "8516091485743033" + } + }, + "get-paymentLinks-linkId-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 8700 + }, + "countryCode" : "NL", + "expiresAt" : "2021-04-08T14:06:39Z", + "merchantAccount" : "TestMerchantCheckout", + "reference" : "shopper-reference-ekvL83", + "shopperLocale" : "hu-HU", + "shopperReference" : "shopper-reference-LZfdWZ", + "status" : "active", + "url" : "https://test.adyen.link/PL61C53A8B97E6915A" + } + }, + "patch-paymentLinks-linkId-basic" : { + "summary" : "Update the status of a payment link", + "value" : { + "status" : "expired" + } + }, + "patch-paymentLinks-linkId-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 8700 + }, + "countryCode" : "NL", + "expiresAt" : "2021-04-08T14:06:39Z", + "merchantAccount" : "TestMerchantCheckout", + "reference" : "shopper-reference-ekvL83", + "shopperLocale" : "hu-HU", + "shopperReference" : "shopper-reference-LZfdWZ", + "status" : "expired", + "url" : "https://test.adyen.link/PL61C53A8B97E6915A" + } + }, + "post-cardDetails-basic" : { + "summary" : "Get a list of brands on a card", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111" + } + }, + "post-cardDetails-basic-200" : { + "summary" : "List of brands on the card", + "description" : "Example response when the card is co-branded.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "true" + } + ] + } + }, + "post-cardDetails-supported-brands" : { + "summary" : "Get a list of brands on a card specifying your supported card brands", + "description" : "Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support.", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "cardNumber" : "411111", + "supportedBrands" : [ + "visa", + "mc", + "amex" + ] + } + }, + "post-cardDetails-supported-brands-200" : { + "summary" : "List of brands on the card when you specify your supported card brands", + "description" : "Example response when the card is co-branded, and you only support Visa.", + "value" : { + "brands" : [ + { + "type" : "visa", + "supported" : "true" + }, + { + "type" : "cartebancaire", + "supported" : "false" + } + ] + } + }, + "post-donations-donations" : { + "summary" : "Start a donation transaction", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme" + }, + "donationToken" : "YOUR_DONATION_TOKEN", + "donationOriginalPspReference" : "991559660454807J", + "donationAccount" : "CHARITY_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth" + } + }, + "post-donations-donations-200" : { + "summary" : "Example response", + "value" : { + "id" : "UNIQUE_RESOURCE_ID", + "status" : "completed", + "donationAccount" : "CHARITY_ACCOUNT", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "payment" : { + "pspReference" : "8535762347980628", + "resultCode" : "Authorised", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "merchantReference" : "YOUR_DONATION_REFERENCE" + } + } + }, + "post-donations-donations-with-token" : { + "summary" : "Start a donation transaction with a token", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "YOUR_DONATION_REFERENCE", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8415718415172200" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "donationAccount" : "CHARITY_ACCOUNT", + "shopperInteraction" : "ContAuth", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "recurringProcessingModel" : "CardOnFile" + } + }, + "post-orders-basic" : { + "summary" : "Create an order", + "value" : { + "reference" : "YOUR_ORDER_REFERENCE", + "amount" : { + "value" : 2500, + "currency" : "EUR" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-orders-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "pspReference" : "8616178914061985", + "resultCode" : "Success", + "expiresAt" : "2021-04-09T14:16:46Z", + "orderData" : "Ab02b4c0!BQABAgCxXvknCldOcRElkxY8Za7iyym4Wv8aDzyNwmj/3nh4G6YtwnUIJHaK62NlN4oIsACdkn1FEjBwKlheG40jvXcYGBk4KFV5WvOhTVCpv/KXnkrI7xQv/u2lE7U4wA+HPB6K4Zj2L8xO/ogZi+zGZqFs5m16jmkH7ku6FzXygXLNuUCuOlmlXSZhdkHHTNVQSq1MELDK9OL74y532ETRPTCNxx8WlEiZB+LDqYrPvH9GgigtD5kw8Do45jfFfG72kWBEgfYqp4mbUmBB9ebXFYZKfF0qvW1x7A2Y9+/MFlTIdXfKW484bJeDBCTTrmKGXIj+U4r5imr5fXTyNLcrxyUqwrb9jg+5B4qg1XB6Cgj5UPlSI4O62I7v0s5TTj69dzLwUQRxSQbwLrZVGYavXzeVKI54BVLRV3d/+BbPvTqnTo34UhfZbPlOx9F2eyaS0ZXdOKnHw89uGUgxUpLsMqnbRysi/pxpZaulel+0mExb68wVxb/7Teob5eRG4gp7cfZVZs6tLXOYWL+W0TqIlsa3hWsfM0LeaovzkoDtW/pK5JABXwMtLig9tsxoEh9ONYtIzkXC21LZ8ebiuSIMaPizjF8yca+QxrCZalQsu6uKnBz/mm8nnsflaGU2QS5zcoxk1RudL1Bl36LM9UZGPpFEYWiYA4sUsnNLw7peJjWCGhDepnwMv4TlgsEtoDtz1T54AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifRslOdmfgUHTXl66WPD9xoW2whIeRx/jR++2MqNE16x6zQy+KtDN8/h60crZwmqkjVTQYqQlsYSYDHSIyb4wnnay16/5il1yS7vN3UCLaTXjYBIAyyx6Wr9j4P3CI/etB+PpviHoESC4mV6ZN4whMDQyziQ8s230GtboXbh42qND7rk9phySBogowQlXrtF+l2n2F46nyif0owEgik5fGARfvjZtY2w23s30KMLNwU4gWSvX4H6RMVS8TfZH2fKfNrwB3tZUXwYkELs5ntaHysswq5Mn5aq2BKAMHu/Rh/wureMSI73Qi0avjrzWCwzt3JH4wnzErMnOZwSdgA==", + "reference" : "shopper-reference-ekvL83", + "remainingAmount" : { + "currency" : "EUR", + "value" : 2500 + } + } + }, + "post-orders-cancel-basic" : { + "summary" : "Cancel an order", + "value" : { + "order" : { + "pspReference" : "8815517812932012", + "orderData" : "823fh892f8f18f4...148f13f9f3f" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-orders-cancel-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "pspReference" : "8816178914079738", + "resultCode" : "Received" + } + }, + "post-originKeys-basic" : { + "summary" : "Get origin keys", + "value" : { + "originDomains" : [ + "https://www.your-domain1.com", + "https://www.your-domain2.com", + "https://www.your-domain3.com" + ] + } + }, + "post-originKeys-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "originKeys" : { + "https://www.your-domain1.com" : "pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4xLmNvbQ.pvbYlrXz0ICP4kwMJXDGDLVMqALhwXr1MSRjT-fkhvw", + "https://www.your-domain3.com" : "pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4zLmNvbQ.FrTpVz7_RzAywKasM0kXCRoMfoMkKIKaxjFymRGORIc", + "https://www.your-domain2.com" : "pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4yLmNvbQ.LdN9kvJ35fYFFiBSJA4idMnwwxJ5_yXpeNS__Ap5wkg" + } + } + }, + "post-paymentLinks-basic" : { + "summary" : "Create a payment link", + "value" : { + "reference" : "YOUR_ORDER_NUMBER", + "amount" : { + "value" : 1250, + "currency" : "BRL" + }, + "countryCode" : "BR", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "shopperEmail" : "test@email.com", + "shopperLocale" : "pt-BR", + "billingAddress" : { + "street" : "Roque Petroni Jr", + "postalCode" : "59000060", + "city" : "São Paulo", + "houseNumberOrName" : "999", + "country" : "BR", + "stateOrProvince" : "SP" + }, + "deliveryAddress" : { + "street" : "Roque Petroni Jr", + "postalCode" : "59000060", + "city" : "São Paulo", + "houseNumberOrName" : "999", + "country" : "BR", + "stateOrProvince" : "SP" + } + } + }, + "post-paymentLinks-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1250 + }, + "expiresAt" : "2021-04-09T14:17:31Z", + "reference" : "shopper-reference-ekvL83", + "url" : "https://test.adyen.link/PL6DB3157D27FFBBCF" + } + }, + "post-paymentMethods-balance-basic" : { + "summary" : "Retrieve gift card balance", + "value" : { + "paymentMethod" : { + "type" : "givex", + "number" : "4126491073027401", + "cvc" : "737" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentMethods-balance-plastix" : { + "summary" : "Retrieve gift card balance", + "value" : { + "paymentMethod" : { + "type" : "plastix", + "number" : "4010100000000000000", + "cvc" : "73737", + "holderName" : "BALANCE EUR 888" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentMethods-balance-plastix-200" : { + "summary" : "Example response for request 'plastix'", + "value" : { + "additionalData" : { + "nonScheme.transactionLimit" : "5000", + "nonScheme.transactionLimitCcy" : "EUR" + }, + "pspReference" : "851617891188737F", + "resultCode" : "Success", + "balance" : { + "currency" : "EUR", + "value" : 888 + } + } + }, + "post-paymentMethods-basic" : { + "summary" : "Get available payment methods", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentMethods-basic-200" : { + "summary" : "Example response for request 'basic'", + "value" : { + "paymentMethods" : [ + { + "details" : [ + { + "details" : [ + { + "key" : "ownerName", + "type" : "text" + }, + { + "key" : "bankLocationId", + "type" : "text" + }, + { + "key" : "bankAccountNumber", + "type" : "text" + } + ], + "key" : "bankAccount", + "type" : "bankAccount" + } + ], + "name" : "ACH Direct Debit", + "type" : "ach" + }, + { + "name" : "Adyen Voucher", + "type" : "adyen_test_voucher" + }, + { + "details" : [ + { + "details" : [ + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "items" : [ + { + "id" : "M", + "name" : "male" + }, + { + "id" : "F", + "name" : "female" + } + ], + "key" : "gender", + "type" : "radio" + }, + { + "key" : "dateOfBirth", + "type" : "date" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + } + ], + "key" : "personalDetails", + "type" : "fieldSet" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "billingAddress", + "type" : "address" + }, + { + "key" : "separateDeliveryAddress", + "optional" : true, + "type" : "boolean", + "value" : "false" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "deliveryAddress", + "optional" : true, + "type" : "address" + } + ], + "name" : "AfterPay Invoice", + "type" : "afterpay_default" + }, + { + "name" : "AfterPay DirectDebit", + "type" : "afterpay_directdebit" + }, + { + "name" : "Afterpay", + "type" : "afterpaytouch" + }, + { + "details" : [ + { + "key" : "encryptedCardNumber", + "type" : "cardToken" + }, + { + "key" : "encryptedSecurityCode", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryMonth", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryYear", + "type" : "cardToken" + }, + { + "key" : "holderName", + "optional" : true, + "type" : "text" + } + ], + "name" : "Credit Card", + "type" : "scheme" + }, + { + "name" : "AliPay", + "type" : "alipay" + }, + { + "name" : "AliPay HK", + "type" : "alipay_hk" + }, + { + "name" : "AliPay", + "type" : "alipay_wap" + }, + { + "details" : [ + { + "key" : "additionalData.androidpay.token", + "type" : "androidPayToken" + } + ], + "name" : "Android Pay", + "type" : "androidpay" + }, + { + "details" : [ + { + "key" : "additionalData.applepay.token", + "type" : "applePayToken" + } + ], + "name" : "Apple Pay", + "type" : "applepay" + }, + { + "name" : "Credit Card via AsiaPay", + "type" : "asiapay" + }, + { + "name" : "China UnionPay", + "type" : "asiapay_unionpay" + }, + { + "name" : "Baby Gift Card", + "type" : "babygiftcard" + }, + { + "name" : "Baloto", + "type" : "baloto" + }, + { + "name" : "BancNet", + "type" : "bancnet" + }, + { + "name" : "Bank Transfer (BG)", + "type" : "bankTransfer_BG" + }, + { + "name" : "Bank Transfer (CH)", + "type" : "bankTransfer_CH" + }, + { + "name" : "Bank Transfer (DE)", + "type" : "bankTransfer_DE" + }, + { + "name" : "Bank Transfer (FI)", + "type" : "bankTransfer_FI" + }, + { + "name" : "Bank Transfer (GB)", + "type" : "bankTransfer_GB" + }, + { + "name" : "Bank Transfer (HU)", + "type" : "bankTransfer_HU" + }, + { + "name" : "SEPA Bank Transfer", + "type" : "bankTransfer_IBAN" + }, + { + "name" : "Bank Transfer (IE)", + "type" : "bankTransfer_IE" + }, + { + "name" : "Electronic Bank Transfer (MX)", + "type" : "bankTransfer_MX_linked" + }, + { + "name" : "Bank Transfer (MX)", + "type" : "bankTransfer_MX_offline" + }, + { + "name" : "Bank Transfer (NL)", + "type" : "bankTransfer_NL" + }, + { + "name" : "Bank Transfer (PL)", + "type" : "bankTransfer_PL" + }, + { + "name" : "Bank Transfer (SE)", + "type" : "bankTransfer_SE" + }, + { + "name" : "Bank Transfer (US)", + "type" : "bankTransfer_US" + }, + { + "name" : "Payconiq by Bancontact", + "type" : "bcmc_mobile" + }, + { + "name" : "Bijenkorf Cadeaucard", + "type" : "bijcadeaucard" + }, + { + "name" : "99Bill", + "type" : "bill99" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "AUB_DIRECT", + "name" : "AU Small Finance Bank" + }, + { + "id" : "ALB_DIRECT", + "name" : "Allahabad Bank " + }, + { + "id" : "APG_DIRECT", + "name" : "Andhra Pragathi Grameena Bank" + }, + { + "id" : "BDN_DIRECT", + "name" : "Bandhan bank" + }, + { + "id" : "BBK_DIRECT", + "name" : "Bank of Bahrain and Kuwait" + }, + { + "id" : "BBR_DIRECT", + "name" : "Bank of Baroda - Retail Banking" + }, + { + "id" : "BCB_DIRECT", + "name" : "Bassien Catholic Co-Operative Bank " + }, + { + "id" : "CNB_DIRECT", + "name" : "Canara Bank" + }, + { + "id" : "SYD_DIRECT", + "name" : "Canara Bank (e-Syndicate)" + }, + { + "id" : "CSB_DIRECT", + "name" : "Catholic Syrian Bank" + }, + { + "id" : "CBI_DIRECT", + "name" : "Central Bank of India" + }, + { + "id" : "CUB_DIRECT", + "name" : "City Union Bank" + }, + { + "id" : "COB_DIRECT", + "name" : "Cosmos Bank" + }, + { + "id" : "DEN_DIRECT", + "name" : "Dena Bank" + }, + { + "id" : "DBK_DIRECT", + "name" : "Deutsche Bank" + }, + { + "id" : "DCB_DIRECT", + "name" : "Development Credit Bank" + }, + { + "id" : "DLB_DIRECT", + "name" : "Dhanlakshmi Bank - Retail Net Banking" + }, + { + "id" : "ESF_DIRECT", + "name" : "ESAF Small Finance Bank" + }, + { + "id" : "EQB_DIRECT", + "name" : "Equitas Small Finance Bank" + }, + { + "id" : "FBK_DIRECT", + "name" : "Federal Bank" + }, + { + "id" : "FNC_DIRECT", + "name" : "Fincare Bank" + }, + { + "id" : "HDF_DIRECT", + "name" : "HDFC Bank" + }, + { + "id" : "ICI_DIRECT", + "name" : "ICICI Bank " + }, + { + "id" : "IDB_DIRECT", + "name" : "IDBI Bank - Retail Net Banking" + }, + { + "id" : "IDN_DIRECT", + "name" : "IDFC FIRST Bank" + }, + { + "id" : "INB_DIRECT", + "name" : "Indian Bank" + }, + { + "id" : "IOB_DIRECT", + "name" : "Indian Overseas Bank" + }, + { + "id" : "IDS_DIRECT", + "name" : "IndusInd Bank" + }, + { + "id" : "JKB_DIRECT", + "name" : "Jammu & Kashmir Bank" + }, + { + "id" : "JNB_DIRECT", + "name" : "Jana Small Finance Bank" + }, + { + "id" : "JSB_DIRECT", + "name" : "Janata Sahakari Bank Ltd Pune" + }, + { + "id" : "KJB_DIRECT", + "name" : "Kalyan Janata Sahakari Bank" + }, + { + "id" : "KBL_DIRECT", + "name" : "Karnataka Bank Ltd" + }, + { + "id" : "KVB_DIRECT", + "name" : "Karur Vysya Bank" + }, + { + "id" : "162_DIRECT", + "name" : "Kotak Bank" + }, + { + "id" : "LVR_DIRECT", + "name" : "Laxmi Vilas Bank - Retail" + }, + { + "id" : "NKB_DIRECT", + "name" : "NKGSB Co-op Bank" + }, + { + "id" : "NEB_DIRECT", + "name" : "North East Small Finance Bank" + }, + { + "id" : "OBC_DIRECT", + "name" : "PNB (Erstwhile-Oriental Bank of Commerce)" + }, + { + "id" : "UNI_DIRECT", + "name" : "PNB (Erstwhile-United Bank of India)" + }, + { + "id" : "PMC_DIRECT", + "name" : "Punjab & Maharastra Co-op Bank" + }, + { + "id" : "PSB_DIRECT", + "name" : "Punjab & Sind Bank" + }, + { + "id" : "CPN_DIRECT", + "name" : "Punjab National Bank - Corporate " + }, + { + "id" : "PNB_DIRECT", + "name" : "Punjab National Bank - Retail Banking" + }, + { + "id" : "RBL_DIRECT", + "name" : "RBL Bank Limited" + }, + { + "id" : "SWB_DIRECT", + "name" : "Saraswat Bank" + }, + { + "id" : "SHB_DIRECT", + "name" : "Shivalik Mercantile Cooperative Bank Ltd" + }, + { + "id" : "SIB_DIRECT", + "name" : "South Indian Bank" + }, + { + "id" : "SCB_DIRECT", + "name" : "Standard Chartered Bank" + }, + { + "id" : "SBI_DIRECT", + "name" : "State Bank of India" + }, + { + "id" : "SRB_DIRECT", + "name" : "Suryoday Small Finance Bank" + }, + { + "id" : "TJB_DIRECT", + "name" : "TJSB Bank" + }, + { + "id" : "TNC_DIRECT", + "name" : "Tamil Nadu State Co-operative Bank" + }, + { + "id" : "TMB_DIRECT", + "name" : "Tamilnad Mercantile Bank Ltd" + }, + { + "id" : "TBB_DIRECT", + "name" : "Thane Bharat Sahakari Bank Ltd" + }, + { + "id" : "MSB_DIRECT", + "name" : "The Mehsana Urban Co Op Bank Ltd" + }, + { + "id" : "UCO_DIRECT", + "name" : "UCO Bank" + }, + { + "id" : "UBI_DIRECT", + "name" : "Union Bank of India" + }, + { + "id" : "ADB_DIRECT", + "name" : "Union Bank of India (Erstwhile Andhra Bank)" + }, + { + "id" : "CRP_DIRECT", + "name" : "Union Bank of India (Erstwhile Corporation Bank)" + }, + { + "id" : "VRB_DIRECT", + "name" : "Varachha Co-operative Bank Limited" + }, + { + "id" : "VJB_DIRECT", + "name" : "Vijaya Bank" + }, + { + "id" : "YBK_DIRECT", + "name" : "Yes Bank" + }, + { + "id" : "ZOB_DIRECT", + "name" : "Zoroastrian Co-operative Bank Limited" + }, + { + "id" : "DBS_DIRECT", + "name" : "digibank by DBS" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Online Banking India", + "type" : "billdesk_online" + }, + { + "name" : "UPI", + "type" : "billdesk_upi" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "DCW_DIRECT", + "name" : "DCB Cippy" + }, + { + "id" : "ICC_DIRECT", + "name" : "ICC Cash Card" + }, + { + "id" : "OXY_DIRECT", + "name" : "Oxigen Wallet" + }, + { + "id" : "PCH_DIRECT", + "name" : "Pay World Money" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Wallets India", + "type" : "billdesk_wallet" + }, + { + "name" : "Blik", + "type" : "blik" + }, + { + "name" : "Bloemen Giftcard", + "type" : "bloemengiftcard" + }, + { + "name" : "Boekenbon Giftcard", + "type" : "boekenbon" + }, + { + "name" : "Boleto", + "type" : "boleto" + }, + { + "name" : "Boleto Bancario", + "type" : "boletobancario_santander" + }, + { + "name" : "Bradesco", + "type" : "bradesco" + }, + { + "name" : "Cash-Ticket", + "type" : "cashticket" + }, + { + "name" : "CashU", + "type" : "cashu" + }, + { + "name" : "CCAvenue", + "type" : "ccavenue" + }, + { + "name" : "Mula Checkout", + "type" : "cellulant" + }, + { + "name" : "Chasin Giftcard", + "type" : "chasingiftcard" + }, + { + "name" : "Clearpay", + "type" : "clearpay" + }, + { + "name" : "ClickandBuy", + "type" : "clickandbuy" + }, + { + "name" : "Paiement en 3 fois par Cartes Bancaires", + "type" : "cofinoga_3xcb" + }, + { + "name" : "Costes Giftcard", + "type" : "costesgiftcard" + }, + { + "name" : "custom_settlement", + "type" : "custom_settlement" + }, + { + "name" : "DANA", + "type" : "dana" + }, + { + "name" : "DineroMail", + "type" : "dineromail" + }, + { + "name" : "Online bank transfer.", + "type" : "directEbanking" + }, + { + "name" : "Direct Debit Brazil - Banco do Brazil", + "type" : "directdebit_BR_bancodobrasil" + }, + { + "name" : "Direct Debit Brazil - Bradesco", + "type" : "directdebit_BR_bradesco" + }, + { + "name" : "Direct Debit Brazil - Caixa Economica Federal", + "type" : "directdebit_BR_caixa" + }, + { + "name" : "Direct Debit Brazil - HSBC", + "type" : "directdebit_BR_hsbc" + }, + { + "name" : "Direct Debit Brazil - Itau", + "type" : "directdebit_BR_itau" + }, + { + "name" : "Direct Debit Brazil - Santander", + "type" : "directdebit_BR_santander" + }, + { + "name" : "BACS Direct Debit", + "type" : "directdebit_GB" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "Alfamart", + "type" : "doku_alfamart" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "BCA Bank Transfer", + "type" : "doku_bca_va" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "BNI VA", + "type" : "doku_bni_va" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "BRI VA", + "type" : "doku_bri_va" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "CIMB VA", + "type" : "doku_cimb_va" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "Danamon VA", + "type" : "doku_danamon_va" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "Indomaret", + "type" : "doku_indomaret" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "Mandiri VA", + "type" : "doku_mandiri_va" + }, + { + "details" : [ + { + "key" : "ovoId", + "type" : "text" + } + ], + "name" : "OVO", + "type" : "doku_ovo" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "Bank Transfer", + "type" : "doku_permata_lite_atm" + }, + { + "details" : [ + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "key" : "infix", + "optional" : true, + "type" : "text" + } + ], + "name" : "DOKU wallet", + "type" : "doku_wallet" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "66", + "name" : "Bank Nowy BFG S.A." + }, + { + "id" : "92", + "name" : "Bank Spółdzielczy w Brodnicy" + }, + { + "id" : "11", + "name" : "Bank transfer / postal" + }, + { + "id" : "74", + "name" : "Banki Spółdzielcze" + }, + { + "id" : "73", + "name" : "BLIK" + }, + { + "id" : "90", + "name" : "BNP Paribas - płacę z Pl@net" + }, + { + "id" : "59", + "name" : "CinkciarzPAY" + }, + { + "id" : "87", + "name" : "Credit Agricole PBL" + }, + { + "id" : "83", + "name" : "EnveloBank" + }, + { + "id" : "76", + "name" : "Getin Bank PBL" + }, + { + "id" : "81", + "name" : "Idea Cloud" + }, + { + "id" : "7", + "name" : "ING Corporate customers" + }, + { + "id" : "93", + "name" : "Kasa Stefczyka" + }, + { + "id" : "44", + "name" : "Millennium - Płatności Internetowe" + }, + { + "id" : "10", + "name" : "Millennium Corporate customers" + }, + { + "id" : "68", + "name" : "mRaty" + }, + { + "id" : "1", + "name" : "mTransfer" + }, + { + "id" : "91", + "name" : "Nest Bank" + }, + { + "id" : "80", + "name" : "Noble Pay" + }, + { + "id" : "50", + "name" : "Pay Way Toyota Bank" + }, + { + "id" : "45", + "name" : "Pay with Alior Bank" + }, + { + "id" : "36", + "name" : "Pekao24Przelew" + }, + { + "id" : "70", + "name" : "Pocztowy24" + }, + { + "id" : "6", + "name" : "Przelew24" + }, + { + "id" : "46", + "name" : "Płacę z Citi Handlowy" + }, + { + "id" : "38", + "name" : "Płacę z ING" + }, + { + "id" : "2", + "name" : "Płacę z Inteligo" + }, + { + "id" : "4", + "name" : "Płacę z iPKO" + }, + { + "id" : "75", + "name" : "Płacę z Plus Bank" + }, + { + "id" : "51", + "name" : "Płać z BOŚ" + }, + { + "id" : "55", + "name" : "Raty z Alior Bankiem PLN" + }, + { + "id" : "89", + "name" : "Santander" + }, + { + "id" : "52", + "name" : "SkyCash" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Local Polish Payment Methods", + "type" : "dotpay" + }, + { + "name" : "Dragonpay Prepaid Credits", + "type" : "dragonpay_credits" + }, + { + "name" : "Online Banking", + "type" : "dragonpay_ebanking" + }, + { + "name" : "GCash", + "type" : "dragonpay_gcash" + }, + { + "name" : "Over The Counter Banks", + "type" : "dragonpay_otc_banking" + }, + { + "name" : "OTC non-Bank via Dragonpay", + "type" : "dragonpay_otc_non_banking" + }, + { + "name" : "Convenience Stores", + "type" : "dragonpay_otc_philippines" + }, + { + "name" : "7/11", + "type" : "dragonpay_seveneleven" + }, + { + "name" : "eagleeye_voucher", + "type" : "eagleeye_voucher" + }, + { + "name" : "Finnish E-Banking", + "type" : "ebanking_FI" + }, + { + "name" : "Pay-easy ATM", + "type" : "econtext_atm" + }, + { + "name" : "Online Banking", + "type" : "econtext_online" + }, + { + "name" : "7-Eleven", + "type" : "econtext_seven_eleven" + }, + { + "name" : "Convenience Stores", + "type" : "econtext_stores" + }, + { + "name" : "eft_directdebit_CA", + "type" : "eft_directdebit_CA" + }, + { + "name" : "Lastschrift (ELV)", + "type" : "elv" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "231", + "name" : "POP Pankki" + }, + { + "id" : "551", + "name" : "Komerční banka" + }, + { + "id" : "232", + "name" : "Aktia" + }, + { + "id" : "552", + "name" : "Raiffeisen" + }, + { + "id" : "233", + "name" : "Säästöpankki" + }, + { + "id" : "750", + "name" : "Swedbank" + }, + { + "id" : "211", + "name" : "Nordea" + }, + { + "id" : "553", + "name" : "ČSOB" + }, + { + "id" : "234", + "name" : "S-Pankki" + }, + { + "id" : "751", + "name" : "SEB" + }, + { + "id" : "554", + "name" : "Moneta" + }, + { + "id" : "235", + "name" : "OmaSP" + }, + { + "id" : "752", + "name" : "Nordea" + }, + { + "id" : "213", + "name" : "Op-Pohjola" + }, + { + "id" : "555", + "name" : "UniCredit" + }, + { + "id" : "753", + "name" : "LHV" + }, + { + "id" : "556", + "name" : "Fio" + }, + { + "id" : "557", + "name" : "mBank" + }, + { + "id" : "216", + "name" : "Handelsbanken" + }, + { + "id" : "558", + "name" : "Air Bank" + }, + { + "id" : "260", + "name" : "Länsförsäkringar" + }, + { + "id" : "240", + "name" : "BankDeposit" + }, + { + "id" : "265", + "name" : "Sparbanken" + }, + { + "id" : "640", + "name" : "BankDeposit" + }, + { + "id" : "200", + "name" : "Ålandsbanken" + }, + { + "id" : "940", + "name" : "Swedbank" + }, + { + "id" : "500", + "name" : "Česká spořitelna" + }, + { + "id" : "720", + "name" : "Swedbank" + }, + { + "id" : "941", + "name" : "SEB" + }, + { + "id" : "204", + "name" : "Danske Bank" + }, + { + "id" : "721", + "name" : "SEB" + }, + { + "id" : "942", + "name" : "Citadele" + }, + { + "id" : "205", + "name" : "Handelsbanken" + }, + { + "id" : "722", + "name" : "DNB" + }, + { + "id" : "943", + "name" : "DNB" + }, + { + "id" : "206", + "name" : "Nordea" + }, + { + "id" : "723", + "name" : "Šiaulių bankas" + }, + { + "id" : "207", + "name" : "SEB" + }, + { + "id" : "724", + "name" : "Nordea" + }, + { + "id" : "505", + "name" : "Komerční banka" + }, + { + "id" : "208", + "name" : "Skandiabanken" + }, + { + "id" : "209", + "name" : "Swedbank" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Bank Payment", + "type" : "entercash" + }, + { + "name" : "Nationale Entertainment Card", + "type" : "entertainmentcard" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "d5d5b133-1c0d-4c08-b2be-3c9b116dc326", + "name" : "Dolomitenbank" + }, + { + "id" : "ee9fc487-ebe0-486c-8101-17dce5141a67", + "name" : "Raiffeissen Bankengruppe" + }, + { + "id" : "6765e225-a0dc-4481-9666-e26303d4f221", + "name" : "Hypo Tirol Bank AG" + }, + { + "id" : "8b0bfeea-fbb0-4337-b3a1-0e25c0f060fc", + "name" : "Sparda Bank Wien" + }, + { + "id" : "1190c4d1-b37a-487e-9355-e0a067f54a9f", + "name" : "Schoellerbank AG" + }, + { + "id" : "e2e97aaa-de4c-4e18-9431-d99790773433", + "name" : "Volksbank Gruppe" + }, + { + "id" : "bb7d223a-17d5-48af-a6ef-8a2bf5a4e5d9", + "name" : "Immo-Bank" + }, + { + "id" : "e6819e7a-f663-414b-92ec-cf7c82d2f4e5", + "name" : "Bank Austria" + }, + { + "id" : "eff103e6-843d-48b7-a6e6-fbd88f511b11", + "name" : "Easybank AG" + }, + { + "id" : "25942cc9-617d-42a1-89ba-d1ab5a05770a", + "name" : "VR-BankBraunau" + }, + { + "id" : "4a0a975b-0594-4b40-9068-39f77b3a91f9", + "name" : "Volkskreditbank" + }, + { + "id" : "3fdc41fc-3d3d-4ee3-a1fe-cd79cfd58ea3", + "name" : "Erste Bank und Sparkassen" + }, + { + "id" : "ba7199cc-f057-42f2-9856-2378abf21638", + "name" : "BAWAG P.S.K. Gruppe" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "EPS", + "type" : "eps" + }, + { + "name" : "Expert Cadeaukaart", + "type" : "expertgiftcard" + }, + { + "details" : [ + { + "details" : [ + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "items" : [ + { + "id" : "M", + "name" : "male" + }, + { + "id" : "F", + "name" : "female" + } + ], + "key" : "gender", + "type" : "radio" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + } + ], + "key" : "personalDetails", + "type" : "fieldSet" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "FR", + "name" : "France" + }, + { + "id" : "ES", + "name" : "Spain" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "billingAddress", + "type" : "address" + }, + { + "key" : "separateDeliveryAddress", + "optional" : true, + "type" : "boolean", + "value" : "false" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "FR", + "name" : "France" + }, + { + "id" : "ES", + "name" : "Spain" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "deliveryAddress", + "optional" : true, + "type" : "address" + } + ], + "name" : "3x Oney", + "type" : "facilypay_3x" + }, + { + "details" : [ + { + "details" : [ + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "items" : [ + { + "id" : "M", + "name" : "male" + }, + { + "id" : "F", + "name" : "female" + } + ], + "key" : "gender", + "type" : "radio" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + } + ], + "key" : "personalDetails", + "type" : "fieldSet" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "FR", + "name" : "France" + }, + { + "id" : "ES", + "name" : "Spain" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "billingAddress", + "type" : "address" + }, + { + "key" : "separateDeliveryAddress", + "optional" : true, + "type" : "boolean", + "value" : "false" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "FR", + "name" : "France" + }, + { + "id" : "ES", + "name" : "Spain" + } + ], + "key" : "country", + "type" : "select" + } + ], + "key" : "deliveryAddress", + "optional" : true, + "type" : "address" + } + ], + "name" : "4x Oney", + "type" : "facilypay_4x" + }, + { + "name" : "Fashioncheque", + "type" : "fashioncheque" + }, + { + "details" : [ + { + "key" : "shopper.firstName", + "type" : "text" + }, + { + "key" : "shopper.lastName", + "type" : "text" + }, + { + "key" : "shopper.gender", + "type" : "text" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "countryCode", + "type" : "text" + } + ], + "name" : "Fawry", + "type" : "fawry" + }, + { + "name" : "FijnCadeau", + "type" : "fijncadeau" + }, + { + "name" : "Fleurop Bloemenbon", + "type" : "fleuropbloemenbon" + }, + { + "name" : "Fonq Giftcard", + "type" : "fonqgiftcard" + }, + { + "name" : "Gall & Gall", + "type" : "gallgall" + }, + { + "name" : "GCash", + "type" : "gcash" + }, + { + "name" : "Generic GiftCard", + "type" : "genericgiftcard" + }, + { + "name" : "GiftFor2", + "type" : "giftfor2card" + }, + { + "details" : [ + { + "key" : "bic", + "type" : "text" + } + ], + "name" : "GiroPay", + "type" : "giropay" + }, + { + "name" : "Givex", + "type" : "givex" + }, + { + "name" : "Globe GCash", + "type" : "globegcash" + }, + { + "name" : "Goldsmiths Card", + "type" : "goldsmithscard" + }, + { + "name" : "GoPay Wallet", + "type" : "gopay_wallet" + }, + { + "name" : "OVO", + "type" : "grabpay_ID" + }, + { + "name" : "GrabPay", + "type" : "grabpay_PH" + }, + { + "name" : "GrabPay", + "type" : "grabpay_SG" + }, + { + "name" : "Hallmark Card", + "type" : "hallmarkcard" + }, + { + "name" : "HDFC", + "type" : "hdfc" + }, + { + "name" : "Hunkemoller Member Card", + "type" : "hmclub" + }, + { + "name" : "Hunkemoller Lingerie Card", + "type" : "hmlingerie" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "1121", + "name" : "Test Issuer" + }, + { + "id" : "1154", + "name" : "Test Issuer 5" + }, + { + "id" : "1153", + "name" : "Test Issuer 4" + }, + { + "id" : "1152", + "name" : "Test Issuer 3" + }, + { + "id" : "1151", + "name" : "Test Issuer 2" + }, + { + "id" : "1162", + "name" : "Test Issuer Cancelled" + }, + { + "id" : "1161", + "name" : "Test Issuer Pending" + }, + { + "id" : "1160", + "name" : "Test Issuer Refused" + }, + { + "id" : "1159", + "name" : "Test Issuer 10" + }, + { + "id" : "1158", + "name" : "Test Issuer 9" + }, + { + "id" : "1157", + "name" : "Test Issuer 8" + }, + { + "id" : "1156", + "name" : "Test Issuer 7" + }, + { + "id" : "1155", + "name" : "Test Issuer 6" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "iDEAL", + "type" : "ideal" + }, + { + "name" : "igive", + "type" : "igive" + }, + { + "name" : "Korean Account Transfer (IniPay)", + "type" : "inicisIniPay_accounttransfer" + }, + { + "name" : "Korean Credit Cards (IniPay)", + "type" : "inicisIniPay_creditcard" + }, + { + "name" : "Korean Mobile Phone (IniPay)", + "type" : "inicisIniPay_mobilephone" + }, + { + "name" : "Korean Virtual Account (IniPay)", + "type" : "inicisIniPay_virtualaccount" + }, + { + "name" : "Korean Account Transfer (Mobile)", + "type" : "inicisMobile_accounttransfer" + }, + { + "name" : "Korean Credit Cards (Mobile)", + "type" : "inicisMobile_creditcard" + }, + { + "name" : "Korean Mobile Phone (Mobile)", + "type" : "inicisMobile_mobilephone" + }, + { + "name" : "Korean Virtual Account (Mobile)", + "type" : "inicisMobile_virtualaccount" + }, + { + "name" : "Korean Credit Cards", + "type" : "inicis_creditcard" + }, + { + "name" : "Interac® Online", + "type" : "interac" + }, + { + "name" : "Instant EFT", + "type" : "ipay" + }, + { + "name" : "iPay88", + "type" : "ipay88" + }, + { + "name" : "isracard", + "type" : "isracard" + }, + { + "name" : "Phone Payment", + "type" : "ivr" + }, + { + "name" : "Landline phone", + "type" : "ivrLandline" + }, + { + "name" : "Mobile phone", + "type" : "ivrMobile" + }, + { + "name" : "Kado Wereld", + "type" : "kadowereld" + }, + { + "name" : "KakaoPay", + "type" : "kakaopay" + }, + { + "name" : "Karen Millen Card", + "type" : "karenmillen" + }, + { + "name" : "Karen Millen GiftCard", + "type" : "karenmillengiftcard" + }, + { + "name" : "Bank Transfer", + "type" : "kcp_banktransfer" + }, + { + "name" : "Korea–issued cards", + "type" : "kcp_creditcard" + }, + { + "name" : "PayCo", + "type" : "kcp_payco" + }, + { + "name" : "Naver Pay", + "type" : "kcp_naverpay" + }, + { + "name" : "Virtual Account via KCP", + "type" : "kcp_va" + }, + { + "name" : "Pay later with Klarna.", + "type" : "klarna" + }, + { + "name" : "Pay over time with Klarna.", + "type" : "klarna_account" + }, + { + "name" : "Klarna B2B", + "type" : "klarna_b2b" + }, + { + "name" : "Pay now with Klarna.", + "type" : "klarna_paynow" + }, + { + "name" : "Leisure Card", + "type" : "leisurecard" + }, + { + "name" : "China Credit Card", + "type" : "lianlianpay_creditcard" + }, + { + "name" : "China Debit Card", + "type" : "lianlianpay_debitcard" + }, + { + "details" : [ + { + "key" : "telephoneNumber", + "type" : "tel" + } + ], + "name" : "China Online Banking - Credit Card", + "type" : "lianlianpay_ebanking_credit" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "01030000", + "name" : "Agricultural Bank of China" + }, + { + "id" : "4031000", + "name" : "Bank of Beijing" + }, + { + "id" : "01040000", + "name" : "Bank of China" + }, + { + "id" : "03020000", + "name" : "China Citic Bank" + }, + { + "id" : "01050000", + "name" : "China Construction Bank" + }, + { + "id" : "03030000", + "name" : "China Everbright Bank" + }, + { + "id" : "03080000", + "name" : "China Merchants Bank" + }, + { + "id" : "03050000", + "name" : "China Minsheng Banking Group" + }, + { + "id" : "03040000", + "name" : "Hua Xia Bank Co" + }, + { + "id" : "01020000", + "name" : "Industrial and Commercial Bank of China" + }, + { + "id" : "03070000", + "name" : "PingAn Bank" + }, + { + "id" : "1000000", + "name" : "Postal Savings Bank of China" + } + ], + "key" : "issuer", + "type" : "select" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + } + ], + "name" : "China Online Banking - Debit Card", + "type" : "lianlianpay_ebanking_debit" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "01030000", + "name" : "Agricultural Bank of China" + }, + { + "id" : "01050000", + "name" : "China Construction Bank" + }, + { + "id" : "03080000", + "name" : "China Merchants Bank" + }, + { + "id" : "01020000", + "name" : "Industrial and Commercial Bank of China" + }, + { + "id" : "03100000", + "name" : "Shanghai Pudong Development Bank" + } + ], + "key" : "issuer", + "type" : "select" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + } + ], + "name" : "China Online Banking - Enterprise", + "type" : "lianlianpay_ebanking_enterprise" + }, + { + "name" : "Loods5 Cadeaukaart", + "type" : "loods5giftcard" + }, + { + "name" : "Loods5 Tegoedbon", + "type" : "loods5prepaidcard" + }, + { + "name" : "Love2Shop GiftCard", + "type" : "love2shop" + }, + { + "details" : [ + { + "key" : "shopper.firstName", + "type" : "text" + }, + { + "key" : "shopper.lastName", + "type" : "text" + }, + { + "key" : "shopper.gender", + "type" : "text" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "countryCode", + "type" : "text" + } + ], + "name" : "mada", + "type" : "mada" + }, + { + "name" : "Mappin & Webb Card", + "type" : "mappinwebbcard" + }, + { + "name" : "MB WAY", + "type" : "mbway" + }, + { + "details" : [ + { + "key" : "additionalData.amazonPayToken", + "type" : "text" + } + ], + "name" : "Amazon Pay", + "supportsRecurring" : true, + "type" : "amazonpay" + }, + { + "name" : "Mercado Pago", + "type" : "mercadopago" + }, + { + "name" : "MobilePay", + "type" : "mobilepay" + }, + { + "name" : "AliPay via Razer Merchant Services", + "type" : "molpay_alipay" + }, + { + "name" : "7-Eleven", + "type" : "molpay_cash" + }, + { + "name" : "CIMB Virtual Account", + "type" : "molpay_cimb_va" + }, + { + "name" : "Malaysia E-Banking via Razer Merchant Services", + "type" : "molpay_ebanking_MY" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "vtcpay-vietinbank", + "name" : "Vietinbank" + }, + { + "id" : "vtcpay-bidv", + "name" : "BIDV" + }, + { + "id" : "vtcpay-agribank", + "name" : "Agribank" + }, + { + "id" : "vtcpay-mb", + "name" : "MB Bank" + }, + { + "id" : "vtcpay-sacombank", + "name" : "Sacombank" + }, + { + "id" : "vtcpay-dongabank", + "name" : "DongABank" + }, + { + "id" : "vtcpay-maritimebank", + "name" : "MaritimeBank" + }, + { + "id" : "vtcpay-vietcombank", + "name" : "Vietcombank" + }, + { + "id" : "vtcpay-acb", + "name" : "ACB" + }, + { + "id" : "vtcpay-techcombank", + "name" : "Techcombank" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Vietnam E-Banking", + "type" : "molpay_ebanking_VN" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "fpx_bimb", + "name" : "Bank Islam" + }, + { + "id" : "fpx_uob", + "name" : "UOB Bank" + }, + { + "id" : "fpx_cimbclicks", + "name" : "CIMB Clicks" + }, + { + "id" : "fpx_kfh", + "name" : "Kuwait Finance House" + }, + { + "id" : "fpx_rhb", + "name" : "RHB Now" + }, + { + "id" : "fpx_abmb", + "name" : "Alliance Bank" + }, + { + "id" : "fpx_amb", + "name" : "Am Online" + }, + { + "id" : "fpx_hsbc", + "name" : "HSBC" + }, + { + "id" : "fpx_abb", + "name" : "Affin Bank" + }, + { + "id" : "fpx_ocbc", + "name" : "OCBC Bank" + }, + { + "id" : "fpx_pbb", + "name" : "Public Bank" + }, + { + "id" : "fpx_scb", + "name" : "Standard Chartered Bank" + }, + { + "id" : "fpx_bsn", + "name" : "Bank Simpanan Nasional" + }, + { + "id" : "fpx_mb2u", + "name" : "Maybank2u" + }, + { + "id" : "fpx_hlb", + "name" : "Hong Leong Connect" + }, + { + "id" : "fpx_bmmb", + "name" : "Bank Muamalat" + }, + { + "id" : "fpx_bkrm", + "name" : "Bank Rakyat" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Malaysia E-Banking", + "type" : "molpay_ebanking_fpx_MY" + }, + { + "name" : "eNETS Debit", + "type" : "molpay_enetsd" + }, + { + "name" : "epay", + "type" : "molpay_epay" + }, + { + "name" : "Esapay", + "type" : "molpay_esapay" + }, + { + "name" : "MyClear FPX", + "type" : "molpay_fpx" + }, + { + "name" : "Maybank2u", + "type" : "molpay_maybank2u" + }, + { + "name" : "Nganluong", + "type" : "molpay_nganluong" + }, + { + "name" : "Tesco Lotus", + "type" : "molpay_paysbuy" + }, + { + "name" : "MOLPoints", + "type" : "molpay_points" + }, + { + "name" : "RHB Now", + "type" : "molpay_rhb" + }, + { + "name" : "SAM by SingPost", + "type" : "molpay_singpost" + }, + { + "name" : "MOLWallet", + "type" : "molpay_wallet" + }, + { + "name" : "MoMo ATM", + "type" : "momo_atm" + }, + { + "name" : "Momo Wallet", + "type" : "momo_wallet" + }, + { + "name" : "Moneybookers", + "type" : "moneybookers" + }, + { + "name" : "Multibanco", + "type" : "multibanco" + }, + { + "name" : "De Nationale Musicalcard", + "type" : "musicalcard" + }, + { + "name" : "Nationale Bioscoopbon", + "type" : "nationalebioscoopbon" + }, + { + "name" : "Nationale Tuinbon", + "type" : "nationaletuinbon" + }, + { + "name" : "Nationale Verwen Cadeaubon", + "type" : "nationaleverwencadeaubon" + }, + { + "name" : "BankAxess", + "type" : "netaxept_bankaxess" + }, + { + "name" : "NETELLER", + "type" : "neteller" + }, + { + "name" : "Onebip", + "type" : "onebip" + }, + { + "name" : "One Two Three", + "type" : "onetwothree" + }, + { + "name" : "Online Banking PL", + "type" : "onlineBanking_PL" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "1", + "name" : "Model Bank v2" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "Online banking", + "type" : "openbanking_UK" + }, + { + "name" : "Oxxo", + "type" : "oxxo" + }, + { + "name" : "Pathe Giftcard", + "type" : "pathegiftcard" + }, + { + "name" : "PayBright", + "type" : "paybright" + }, + { + "name" : "PayMaya Wallet", + "type" : "paymaya_wallet" + }, + { + "name" : "PayPal", + "type" : "paypal" + }, + { + "name" : "Paysafecard", + "type" : "paysafecard" + }, + { + "name" : "Payshop", + "type" : "payshop" + }, + { + "name" : "PayD AMT via Paythru", + "type" : "paythru_amt" + }, + { + "name" : "EFT via Paythru", + "type" : "paythru_eft" + }, + { + "name" : "PayTM", + "type" : "paytm" + }, + { + "details" : [ + { + "key" : "virtualPaymentAddress", + "type" : "text" + } + ], + "name" : "PayU UPI", + "type" : "payu_IN_upi" + }, + { + "name" : "EFT Pro via PayU", + "type" : "payu_ZA_eftpro" + }, + { + "details" : [ + { + "key" : "additionalData.paywithgoogle.token", + "type" : "payWithGoogleToken" + } + ], + "name" : "Google Pay", + "type" : "paywithgoogle" + }, + { + "name" : "pix", + "type" : "pix" + }, + { + "name" : "Plastix", + "type" : "plastix" + }, + { + "name" : "Pluim", + "type" : "pluimgiftcard" + }, + { + "name" : "Podium Card", + "type" : "podiumcard" + }, + { + "name" : "POLi", + "type" : "poli" + }, + { + "name" : "PPS", + "type" : "pps" + }, + { + "name" : "Primera Cadeaukaart", + "type" : "primeracadeaucard" + }, + { + "name" : "Illicado Gift Card", + "type" : "prosodie_illicado" + }, + { + "name" : "PSE", + "type" : "pse" + }, + { + "details" : [ + { + "items" : [ + { + "id" : "+7", + "name" : "RU" + }, + { + "id" : "+9955", + "name" : "GE" + }, + { + "id" : "+507", + "name" : "PA" + }, + { + "id" : "+44", + "name" : "GB" + }, + { + "id" : "+992", + "name" : "TJ" + }, + { + "id" : "+370", + "name" : "LT" + }, + { + "id" : "+972", + "name" : "IL" + }, + { + "id" : "+996", + "name" : "KG" + }, + { + "id" : "+380", + "name" : "UA" + }, + { + "id" : "+84", + "name" : "VN" + }, + { + "id" : "+90", + "name" : "TR" + }, + { + "id" : "+994", + "name" : "AZ" + }, + { + "id" : "+374", + "name" : "AM" + }, + { + "id" : "+371", + "name" : "LV" + }, + { + "id" : "+91", + "name" : "IN" + }, + { + "id" : "+66", + "name" : "TH" + }, + { + "id" : "+373", + "name" : "MD" + }, + { + "id" : "+1", + "name" : "US" + }, + { + "id" : "+81", + "name" : "JP" + }, + { + "id" : "+998", + "name" : "UZ" + }, + { + "id" : "+77", + "name" : "KZ" + }, + { + "id" : "+375", + "name" : "BY" + }, + { + "id" : "+372", + "name" : "EE" + }, + { + "id" : "+40", + "name" : "RO" + }, + { + "id" : "+82", + "name" : "KR" + } + ], + "key" : "qiwiwallet.telephoneNumberPrefix", + "type" : "select" + }, + { + "key" : "qiwiwallet.telephoneNumber", + "type" : "text" + } + ], + "name" : "Qiwi Wallet", + "type" : "qiwiwallet" + }, + { + "name" : "RatePay Invoice", + "type" : "ratepay" + }, + { + "name" : "RatePay Direct Debit", + "type" : "ratepay_directdebit" + }, + { + "name" : "Rituals Giftcard", + "type" : "rituals" + }, + { + "name" : "Rob Peetoom Giftcard", + "type" : "robpeetoomgiftcard" + }, + { + "name" : "SafetyPay", + "type" : "safetypay" + }, + { + "name" : "SafetyPay Cash", + "type" : "safetypay_cash" + }, + { + "name" : "Shoes&Accessories Cadeau", + "type" : "sagiftcard" + }, + { + "name" : "Score Giftcard", + "type" : "scoregiftcard" + }, + { + "name" : "SEB Direktbetalning", + "type" : "sebdirectpayment" + }, + { + "details" : [ + { + "key" : "sepa.ownerName", + "type" : "text" + }, + { + "key" : "sepa.ibanNumber", + "type" : "text" + } + ], + "name" : "SEPA Direct Debit", + "type" : "sepadirectdebit" + }, + { + "name" : "7-Eleven", + "type" : "seveneleven" + }, + { + "name" : "Premium SMS", + "type" : "sms" + }, + { + "name" : "SVS", + "type" : "svs" + }, + { + "name" : "Swish", + "type" : "swish" + }, + { + "name" : "TCS Test GiftCard", + "type" : "tcstestgiftcard" + }, + { + "name" : "TenPay", + "type" : "tenpay" + }, + { + "name" : "The Sting Giftcard", + "type" : "thestinggiftcard" + }, + { + "name" : "TrueMoney", + "type" : "truemoney" + }, + { + "name" : "Trustly", + "type" : "trustly" + }, + { + "name" : "Online Banking by Trustpay", + "type" : "trustpay" + }, + { + "name" : "TWINT", + "type" : "twint" + }, + { + "name" : "Ukash", + "type" : "ukash" + }, + { + "name" : "UnionPay", + "type" : "unionpay" + }, + { + "details" : [ + { + "key" : "virtualPaymentAddress", + "type" : "text" + } + ], + "name" : "UPI Collect", + "type" : "upi_collect" + }, + { + "name" : "Valuelink", + "type" : "valuelink" + }, + { + "name" : "V&D Cadeaukaart", + "type" : "vdcadeaucard" + }, + { + "details" : [ + { + "key" : "telephoneNumber", + "optional" : true, + "type" : "tel" + } + ], + "name" : "Vipps", + "type" : "vipps" + }, + { + "details" : [ + { + "key" : "additionalData.visacheckout.callId", + "type" : "text" + } + ], + "name" : "Visa Checkout", + "type" : "visacheckout" + }, + { + "name" : "VVV Cadeaubon", + "type" : "vvvcadeaubon" + }, + { + "name" : "VVV Giftcard", + "type" : "vvvgiftcard" + }, + { + "name" : "Webshop Giftcard", + "type" : "webshopgiftcard" + }, + { + "name" : "WeChat Pay", + "type" : "wechatpayMiniProgram" + }, + { + "name" : "WeChat Pay", + "type" : "wechatpayQR" + }, + { + "name" : "WeChat Pay", + "type" : "wechatpayWeb" + }, + { + "name" : "WE Fashion Giftcard", + "type" : "wefashiongiftcard" + }, + { + "name" : "Western Union", + "type" : "westernunion" + }, + { + "name" : "Winkel Cheque", + "type" : "winkelcheque" + }, + { + "name" : "WOS Card", + "type" : "woscard" + }, + { + "name" : "Alfa-Click", + "type" : "yandex_alfaclick" + }, + { + "name" : "Pay using bank card", + "type" : "yandex_bank_card" + }, + { + "name" : "Cash terminals", + "type" : "yandex_cash" + }, + { + "name" : "Pay using installments", + "type" : "yandex_installments" + }, + { + "name" : "YooMoney", + "type" : "yandex_money" + }, + { + "name" : "Promsvyazbank", + "type" : "yandex_promsvyazbank" + }, + { + "name" : "SberPay", + "type" : "yandex_sberbank" + }, + { + "name" : "WebMoney", + "type" : "yandex_webmoney" + }, + { + "name" : "Your Gift", + "type" : "yourgift" + }, + { + "name" : "Zip", + "type" : "zip" + } + ] + } + }, + "post-paymentMethods-filtered" : { + "summary" : "Get payment methods based on the country and amount", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "countryCode" : "NL", + "shopperLocale" : "nl-NL", + "amount" : { + "currency" : "EUR", + "value" : 1000 + } + } + }, + "post-paymentMethods-filtered-200" : { + "summary" : "Example response for request 'filtered'", + "value" : { + "paymentMethods" : [ + { + "details" : [ + { + "items" : [ + { + "id" : "1121", + "name" : "Test Issuer" + }, + { + "id" : "1154", + "name" : "Test Issuer 5" + }, + { + "id" : "1153", + "name" : "Test Issuer 4" + }, + { + "id" : "1152", + "name" : "Test Issuer 3" + }, + { + "id" : "1151", + "name" : "Test Issuer 2" + }, + { + "id" : "1162", + "name" : "Test Issuer Cancelled" + }, + { + "id" : "1161", + "name" : "Test Issuer Pending" + }, + { + "id" : "1160", + "name" : "Test Issuer Refused" + }, + { + "id" : "1159", + "name" : "Test Issuer 10" + }, + { + "id" : "1158", + "name" : "Test Issuer 9" + }, + { + "id" : "1157", + "name" : "Test Issuer 8" + }, + { + "id" : "1156", + "name" : "Test Issuer 7" + }, + { + "id" : "1155", + "name" : "Test Issuer 6" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "iDEAL", + "type" : "ideal" + }, + { + "details" : [ + { + "key" : "encryptedCardNumber", + "type" : "cardToken" + }, + { + "key" : "encryptedSecurityCode", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryMonth", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryYear", + "type" : "cardToken" + }, + { + "key" : "holderName", + "optional" : true, + "type" : "text" + } + ], + "name" : "Hitelkártya", + "type" : "scheme" + }, + { + "name" : "PayPal", + "type" : "paypal" + }, + { + "details" : [ + { + "details" : [ + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "items" : [ + { + "id" : "M", + "name" : "male" + }, + { + "id" : "F", + "name" : "female" + } + ], + "key" : "gender", + "type" : "radio" + }, + { + "key" : "dateOfBirth", + "type" : "date" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + } + ], + "key" : "personalDetails", + "type" : "fieldSet" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select", + "value" : "NL" + } + ], + "key" : "billingAddress", + "type" : "address" + }, + { + "key" : "separateDeliveryAddress", + "optional" : true, + "type" : "boolean", + "value" : "false" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select", + "value" : "NL" + } + ], + "key" : "deliveryAddress", + "optional" : true, + "type" : "address" + } + ], + "name" : "AfterPay Invoice", + "type" : "afterpay_default" + }, + { + "name" : "Pay later with Klarna.", + "type" : "klarna" + }, + { + "details" : [ + { + "key" : "sepa.ownerName", + "type" : "text" + }, + { + "key" : "sepa.ibanNumber", + "type" : "text" + } + ], + "name" : "SEPA Direct Debit", + "type" : "sepadirectdebit" + }, + { + "name" : "Paysafecard", + "type" : "paysafecard" + }, + { + "name" : "Bijenkorf Cadeaucard", + "type" : "bijcadeaucard" + }, + { + "name" : "Fonq Giftcard", + "type" : "fonqgiftcard" + }, + { + "name" : "Bank Transfer (NL)", + "type" : "bankTransfer_NL" + }, + { + "name" : "Pathe Giftcard", + "type" : "pathegiftcard" + }, + { + "name" : "VVV Giftcard", + "type" : "vvvgiftcard" + }, + { + "name" : "Podium Card", + "type" : "podiumcard" + }, + { + "name" : "RatePay Direct Debit", + "type" : "ratepay_directdebit" + }, + { + "name" : "Rituals Giftcard", + "type" : "rituals" + }, + { + "name" : "Hunkemoller Lingerie Card", + "type" : "hmlingerie" + }, + { + "name" : "Primera Cadeaukaart", + "type" : "primeracadeaucard" + }, + { + "name" : "Fashioncheque", + "type" : "fashioncheque" + }, + { + "name" : "NETELLER", + "type" : "neteller" + }, + { + "name" : "Adyen Voucher", + "type" : "adyen_test_voucher" + }, + { + "name" : "AfterPay B2B", + "type" : "afterpay_b2b" + }, + { + "name" : "AfterPay DirectDebit", + "type" : "afterpay_directdebit" + }, + { + "name" : "AliPay", + "type" : "alipay" + }, + { + "name" : "AliPay", + "type" : "alipay_wap" + }, + { + "details" : [ + { + "key" : "additionalData.androidpay.token", + "type" : "androidPayToken" + } + ], + "name" : "Android Pay", + "type" : "androidpay" + }, + { + "details" : [ + { + "key" : "additionalData.applepay.token", + "type" : "applePayToken" + } + ], + "name" : "Apple Pay", + "type" : "applepay" + }, + { + "name" : "Baby Gift Card", + "type" : "babygiftcard" + }, + { + "name" : "SEPA Bank Transfer", + "type" : "bankTransfer_IBAN" + }, + { + "name" : "Bloemen Giftcard", + "type" : "bloemengiftcard" + }, + { + "name" : "Boekenbon Giftcard", + "type" : "boekenbon" + }, + { + "name" : "Cash-Ticket", + "type" : "cashticket" + }, + { + "name" : "Chasin Giftcard", + "type" : "chasingiftcard" + }, + { + "name" : "ClickandBuy", + "type" : "clickandbuy" + }, + { + "name" : "Costes Giftcard", + "type" : "costesgiftcard" + }, + { + "name" : "custom_settlement", + "type" : "custom_settlement" + }, + { + "name" : "eft_directdebit_CA", + "type" : "eft_directdebit_CA" + }, + { + "name" : "Nationale Entertainment Card", + "type" : "entertainmentcard" + }, + { + "name" : "Expert Cadeaukaart", + "type" : "expertgiftcard" + }, + { + "name" : "FijnCadeau", + "type" : "fijncadeau" + }, + { + "name" : "Fleurop Bloemenbon", + "type" : "fleuropbloemenbon" + }, + { + "name" : "Gall & Gall", + "type" : "gallgall" + }, + { + "name" : "Generic GiftCard", + "type" : "genericgiftcard" + }, + { + "name" : "GiftFor2", + "type" : "giftfor2card" + }, + { + "name" : "Givex", + "type" : "givex" + }, + { + "name" : "Goldsmiths Card", + "type" : "goldsmithscard" + }, + { + "name" : "Hunkemoller Member Card", + "type" : "hmclub" + }, + { + "name" : "Phone Payment", + "type" : "ivr" + }, + { + "name" : "Landline phone", + "type" : "ivrLandline" + }, + { + "name" : "Mobile phone", + "type" : "ivrMobile" + }, + { + "name" : "Kado Wereld", + "type" : "kadowereld" + }, + { + "name" : "Karen Millen GiftCard", + "type" : "karenmillengiftcard" + }, + { + "name" : "Leisure Card", + "type" : "leisurecard" + }, + { + "name" : "Loods5 Cadeaukaart", + "type" : "loods5giftcard" + }, + { + "name" : "Loods5 Tegoedbon", + "type" : "loods5prepaidcard" + }, + { + "details" : [ + { + "key" : "additionalData.amazonPayToken", + "type" : "text" + } + ], + "name" : "Amazon Pay", + "supportsRecurring" : true, + "type" : "amazonpay" + }, + { + "name" : "MOLPoints", + "type" : "molpay_points" + }, + { + "name" : "Moneybookers", + "type" : "moneybookers" + }, + { + "name" : "De Nationale Musicalcard", + "type" : "musicalcard" + }, + { + "name" : "Nationale Bioscoopbon", + "type" : "nationalebioscoopbon" + }, + { + "name" : "Nationale Tuinbon", + "type" : "nationaletuinbon" + }, + { + "name" : "Nationale Verwen Cadeaubon", + "type" : "nationaleverwencadeaubon" + }, + { + "name" : "Onebip", + "type" : "onebip" + }, + { + "details" : [ + { + "key" : "additionalData.paywithgoogle.token", + "type" : "payWithGoogleToken" + } + ], + "name" : "Google Pay", + "type" : "paywithgoogle" + }, + { + "name" : "Plastix", + "type" : "plastix" + }, + { + "name" : "Pluim", + "type" : "pluimgiftcard" + }, + { + "name" : "Illicado Gift Card", + "type" : "prosodie_illicado" + }, + { + "name" : "RatePay Invoice", + "type" : "ratepay" + }, + { + "name" : "Rob Peetoom Giftcard", + "type" : "robpeetoomgiftcard" + }, + { + "name" : "Shoes&Accessories Cadeau", + "type" : "sagiftcard" + }, + { + "name" : "Score Giftcard", + "type" : "scoregiftcard" + }, + { + "name" : "Premium SMS", + "type" : "sms" + }, + { + "name" : "SVS", + "type" : "svs" + }, + { + "name" : "TCS Test GiftCard", + "type" : "tcstestgiftcard" + }, + { + "name" : "The Sting Giftcard", + "type" : "thestinggiftcard" + }, + { + "name" : "Ukash", + "type" : "ukash" + }, + { + "name" : "UnionPay", + "type" : "unionpay" + }, + { + "name" : "Valuelink", + "type" : "valuelink" + }, + { + "name" : "V&D Cadeaukaart", + "type" : "vdcadeaucard" + }, + { + "details" : [ + { + "key" : "additionalData.visacheckout.callId", + "type" : "text" + } + ], + "name" : "Visa Checkout", + "type" : "visacheckout" + }, + { + "name" : "VVV Cadeaubon", + "type" : "vvvcadeaubon" + }, + { + "name" : "Webshop Giftcard", + "type" : "webshopgiftcard" + }, + { + "name" : "WE Fashion Giftcard", + "type" : "wefashiongiftcard" + }, + { + "name" : "Western Union", + "type" : "westernunion" + }, + { + "name" : "Winkel Cheque", + "type" : "winkelcheque" + }, + { + "name" : "Your Gift", + "type" : "yourgift" + } + ] + } + }, + "post-paymentMethods-include-oneclick" : { + "summary" : "Get payment methods including stored card details", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "countryCode" : "NL", + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j" + } + }, + "post-paymentMethods-include-oneclick-200" : { + "summary" : "Example response for request 'include-oneclick'", + "value" : { + "paymentMethods" : [ + { + "details" : [ + { + "items" : [ + { + "id" : "1121", + "name" : "Test Issuer" + }, + { + "id" : "1154", + "name" : "Test Issuer 5" + }, + { + "id" : "1153", + "name" : "Test Issuer 4" + }, + { + "id" : "1152", + "name" : "Test Issuer 3" + }, + { + "id" : "1151", + "name" : "Test Issuer 2" + }, + { + "id" : "1162", + "name" : "Test Issuer Cancelled" + }, + { + "id" : "1161", + "name" : "Test Issuer Pending" + }, + { + "id" : "1160", + "name" : "Test Issuer Refused" + }, + { + "id" : "1159", + "name" : "Test Issuer 10" + }, + { + "id" : "1158", + "name" : "Test Issuer 9" + }, + { + "id" : "1157", + "name" : "Test Issuer 8" + }, + { + "id" : "1156", + "name" : "Test Issuer 7" + }, + { + "id" : "1155", + "name" : "Test Issuer 6" + } + ], + "key" : "issuer", + "type" : "select" + } + ], + "name" : "iDEAL", + "type" : "ideal" + }, + { + "details" : [ + { + "key" : "encryptedCardNumber", + "type" : "cardToken" + }, + { + "key" : "encryptedSecurityCode", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryMonth", + "type" : "cardToken" + }, + { + "key" : "encryptedExpiryYear", + "type" : "cardToken" + }, + { + "key" : "holderName", + "optional" : true, + "type" : "text" + } + ], + "name" : "Credit Card", + "type" : "scheme" + }, + { + "name" : "PayPal", + "type" : "paypal" + }, + { + "details" : [ + { + "details" : [ + { + "key" : "firstName", + "type" : "text" + }, + { + "key" : "lastName", + "type" : "text" + }, + { + "items" : [ + { + "id" : "M", + "name" : "male" + }, + { + "id" : "F", + "name" : "female" + } + ], + "key" : "gender", + "type" : "radio" + }, + { + "key" : "dateOfBirth", + "type" : "date" + }, + { + "key" : "telephoneNumber", + "type" : "tel" + }, + { + "key" : "shopperEmail", + "type" : "emailAddress" + } + ], + "key" : "personalDetails", + "type" : "fieldSet" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select", + "value" : "NL" + } + ], + "key" : "billingAddress", + "type" : "address" + }, + { + "key" : "separateDeliveryAddress", + "optional" : true, + "type" : "boolean", + "value" : "false" + }, + { + "details" : [ + { + "key" : "street", + "type" : "text" + }, + { + "key" : "houseNumberOrName", + "type" : "text" + }, + { + "key" : "city", + "type" : "text" + }, + { + "key" : "postalCode", + "type" : "text" + }, + { + "key" : "stateOrProvince", + "optional" : true, + "type" : "text" + }, + { + "items" : [ + { + "id" : "NL", + "name" : "Netherlands" + }, + { + "id" : "BE", + "name" : "Belgium" + } + ], + "key" : "country", + "type" : "select", + "value" : "NL" + } + ], + "key" : "deliveryAddress", + "optional" : true, + "type" : "address" + } + ], + "name" : "AfterPay Invoice", + "type" : "afterpay_default" + }, + { + "name" : "Pay later with Klarna.", + "type" : "klarna" + }, + { + "details" : [ + { + "key" : "sepa.ownerName", + "type" : "text" + }, + { + "key" : "sepa.ibanNumber", + "type" : "text" + } + ], + "name" : "SEPA Direct Debit", + "type" : "sepadirectdebit" + }, + { + "name" : "Paysafecard", + "type" : "paysafecard" + }, + { + "name" : "Bijenkorf Cadeaucard", + "type" : "bijcadeaucard" + }, + { + "name" : "Fonq Giftcard", + "type" : "fonqgiftcard" + }, + { + "name" : "Bank Transfer (NL)", + "type" : "bankTransfer_NL" + }, + { + "name" : "Pathe Giftcard", + "type" : "pathegiftcard" + }, + { + "name" : "VVV Giftcard", + "type" : "vvvgiftcard" + }, + { + "name" : "Podium Card", + "type" : "podiumcard" + }, + { + "name" : "RatePay Direct Debit", + "type" : "ratepay_directdebit" + }, + { + "name" : "Rituals Giftcard", + "type" : "rituals" + }, + { + "name" : "Hunkemoller Lingerie Card", + "type" : "hmlingerie" + }, + { + "name" : "Primera Cadeaukaart", + "type" : "primeracadeaucard" + }, + { + "name" : "Fashioncheque", + "type" : "fashioncheque" + }, + { + "name" : "NETELLER", + "type" : "neteller" + }, + { + "name" : "Adyen Voucher", + "type" : "adyen_test_voucher" + }, + { + "name" : "AfterPay B2B", + "type" : "afterpay_b2b" + }, + { + "name" : "AfterPay DirectDebit", + "type" : "afterpay_directdebit" + }, + { + "name" : "AliPay", + "type" : "alipay" + }, + { + "name" : "AliPay", + "type" : "alipay_wap" + }, + { + "details" : [ + { + "key" : "additionalData.androidpay.token", + "type" : "androidPayToken" + } + ], + "name" : "Android Pay", + "type" : "androidpay" + }, + { + "details" : [ + { + "key" : "additionalData.applepay.token", + "type" : "applePayToken" + } + ], + "name" : "Apple Pay", + "type" : "applepay" + }, + { + "name" : "Baby Gift Card", + "type" : "babygiftcard" + }, + { + "name" : "SEPA Bank Transfer", + "type" : "bankTransfer_IBAN" + }, + { + "name" : "Bloemen Giftcard", + "type" : "bloemengiftcard" + }, + { + "name" : "Boekenbon Giftcard", + "type" : "boekenbon" + }, + { + "name" : "Cash-Ticket", + "type" : "cashticket" + }, + { + "name" : "Chasin Giftcard", + "type" : "chasingiftcard" + }, + { + "name" : "ClickandBuy", + "type" : "clickandbuy" + }, + { + "name" : "Costes Giftcard", + "type" : "costesgiftcard" + }, + { + "name" : "custom_settlement", + "type" : "custom_settlement" + }, + { + "name" : "eft_directdebit_CA", + "type" : "eft_directdebit_CA" + }, + { + "name" : "Nationale Entertainment Card", + "type" : "entertainmentcard" + }, + { + "name" : "Expert Cadeaukaart", + "type" : "expertgiftcard" + }, + { + "name" : "FijnCadeau", + "type" : "fijncadeau" + }, + { + "name" : "Fleurop Bloemenbon", + "type" : "fleuropbloemenbon" + }, + { + "name" : "Gall & Gall", + "type" : "gallgall" + }, + { + "name" : "Generic GiftCard", + "type" : "genericgiftcard" + }, + { + "name" : "GiftFor2", + "type" : "giftfor2card" + }, + { + "name" : "Givex", + "type" : "givex" + }, + { + "name" : "Goldsmiths Card", + "type" : "goldsmithscard" + }, + { + "name" : "Hunkemoller Member Card", + "type" : "hmclub" + }, + { + "name" : "Phone Payment", + "type" : "ivr" + }, + { + "name" : "Landline phone", + "type" : "ivrLandline" + }, + { + "name" : "Mobile phone", + "type" : "ivrMobile" + }, + { + "name" : "Kado Wereld", + "type" : "kadowereld" + }, + { + "name" : "Karen Millen GiftCard", + "type" : "karenmillengiftcard" + }, + { + "name" : "Leisure Card", + "type" : "leisurecard" + }, + { + "name" : "Loods5 Cadeaukaart", + "type" : "loods5giftcard" + }, + { + "name" : "Loods5 Tegoedbon", + "type" : "loods5prepaidcard" + }, + { + "details" : [ + { + "key" : "additionalData.amazonPayToken", + "type" : "text" + } + ], + "name" : "Amazon Pay", + "supportsRecurring" : true, + "type" : "amazonpay" + }, + { + "name" : "MOLPoints", + "type" : "molpay_points" + }, + { + "name" : "Moneybookers", + "type" : "moneybookers" + }, + { + "name" : "De Nationale Musicalcard", + "type" : "musicalcard" + }, + { + "name" : "Nationale Bioscoopbon", + "type" : "nationalebioscoopbon" + }, + { + "name" : "Nationale Tuinbon", + "type" : "nationaletuinbon" + }, + { + "name" : "Nationale Verwen Cadeaubon", + "type" : "nationaleverwencadeaubon" + }, + { + "name" : "Onebip", + "type" : "onebip" + }, + { + "details" : [ + { + "key" : "additionalData.paywithgoogle.token", + "type" : "payWithGoogleToken" + } + ], + "name" : "Google Pay", + "type" : "paywithgoogle" + }, + { + "name" : "Plastix", + "type" : "plastix" + }, + { + "name" : "Pluim", + "type" : "pluimgiftcard" + }, + { + "name" : "Illicado Gift Card", + "type" : "prosodie_illicado" + }, + { + "name" : "RatePay Invoice", + "type" : "ratepay" + }, + { + "name" : "Rob Peetoom Giftcard", + "type" : "robpeetoomgiftcard" + }, + { + "name" : "Shoes&Accessories Cadeau", + "type" : "sagiftcard" + }, + { + "name" : "Score Giftcard", + "type" : "scoregiftcard" + }, + { + "name" : "Premium SMS", + "type" : "sms" + }, + { + "name" : "SVS", + "type" : "svs" + }, + { + "name" : "TCS Test GiftCard", + "type" : "tcstestgiftcard" + }, + { + "name" : "The Sting Giftcard", + "type" : "thestinggiftcard" + }, + { + "name" : "Ukash", + "type" : "ukash" + }, + { + "name" : "UnionPay", + "type" : "unionpay" + }, + { + "name" : "Valuelink", + "type" : "valuelink" + }, + { + "name" : "V&D Cadeaukaart", + "type" : "vdcadeaucard" + }, + { + "details" : [ + { + "key" : "additionalData.visacheckout.callId", + "type" : "text" + } + ], + "name" : "Visa Checkout", + "type" : "visacheckout" + }, + { + "name" : "VVV Cadeaubon", + "type" : "vvvcadeaubon" + }, + { + "name" : "Webshop Giftcard", + "type" : "webshopgiftcard" + }, + { + "name" : "WE Fashion Giftcard", + "type" : "wefashiongiftcard" + }, + { + "name" : "Western Union", + "type" : "westernunion" + }, + { + "name" : "Winkel Cheque", + "type" : "winkelcheque" + }, + { + "name" : "Your Gift", + "type" : "yourgift" + } + ] + } + }, + "post-paymentSession-android" : { + "summary" : "Set up a payment session (Android)", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 17408 + }, + "reference" : "Your order number", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "channel" : "Android", + "token" : "TOKEN_YOU_GET_FROM_CHECKOUT_SDK", + "returnUrl" : "app://", + "countryCode" : "NL", + "shopperLocale" : "nl_NL", + "sessionValidity" : "2017-04-06T13:09:13Z", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentSession-enableOneClick" : { + "summary" : "Set up a payment session with the option to store card details", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 17408 + }, + "reference" : "Your order number", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "enableOneClick" : true, + "enableRecurring" : true, + "channel" : "Web", + "html" : true, + "origin" : "https://www.yourwebsite.com", + "returnUrl" : "https://www.yourshop.com/checkout/result", + "countryCode" : "NL", + "shopperLocale" : "nl_NL", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "sdkVersion" : "1.7.0" + } + }, + "post-paymentSession-enableOneClick-200" : { + "summary" : "Example response for request 'enableOneClick'", + "value" : { + "paymentSession" : "eyJjaGVja291dHNob3BwZXJCYXN..." + } + }, + "post-paymentSession-ios" : { + "summary" : "Set up a payment session (iOS)", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 17408 + }, + "reference" : "Your order number", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "channel" : "iOS", + "token" : "TOKEN_YOU_GET_FROM_CHECKOUT_SDK", + "returnUrl" : "app://", + "countryCode" : "NL", + "shopperLocale" : "nl_NL", + "sessionValidity" : "2017-04-06T13:09:13Z", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentSession-split" : { + "summary" : "Split a payment between a sub-merchant and a platform account", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 6200 + }, + "additionalData" : { + "split.api" : "1", + "split.nrOfItems" : "2", + "split.totalAmount" : "6200", + "split.currencyCode" : "EUR", + "split.item1.amount" : "6000", + "split.item1.type" : "MarketPlace", + "split.item1.account" : "151272963", + "split.item1.reference" : "6124145", + "split.item1.description" : "Porcelain Doll: Eliza (20cm)", + "split.item2.amount" : "200", + "split.item2.type" : "Commission", + "split.item2.reference" : "6124146" + }, + "reference" : "Your order number", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "channel" : "Android", + "token" : "TOKEN_YOU_GET_FROM_CHECKOUT_SDK", + "returnUrl" : "app://", + "countryCode" : "NL", + "shopperLocale" : "nl_NL", + "sessionValidity" : "2017-04-06T13:09:13Z", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-paymentSession-web" : { + "summary" : "Set up a payment session (Web)", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 17408 + }, + "reference" : "Your order number", + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "channel" : "Web", + "html" : true, + "origin" : "https://www.yourwebsite.com", + "returnUrl" : "https://www.yourshop.com/checkout/result", + "countryCode" : "NL", + "shopperLocale" : "nl_NL", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "sdkVersion" : "1.9.5" + } + }, + "post-paymentSession-web-200" : { + "summary" : "Example response for request 'web'", + "value" : { + "paymentSession" : "eyJjaGVja291dHNob3BwZXJCYXN..." + } + }, + "post-payments-applepay" : { + "summary" : "Make an Apple Pay payment", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "applepay", + "applePayToken" : "VNRWtuNlNEWkRCSm1xWndjMDFFbktkQU..." + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-3d-secure-2-web" : { + "summary" : "Make a card payment with 3D Secure 2 native authentication", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "YOUR_ORDER_NUMBER", + "paymentMethod" : { + "type" : "scheme", + "number" : "4917610000000000", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith", + "cvc" : "737" + }, + "additionalData" : { + "allow3DS2" : true + }, + "accountInfo" : { + "accountCreationDate" : "2019-01-17T13:42:40+01:00" + }, + "billingAddress" : { + "country" : "US", + "city" : "New York", + "street" : "Redwood Block", + "houseNumberOrName" : "37C", + "stateOrProvince" : "NY", + "postalCode" : "10039" + }, + "shopperEmail" : "s.hopper@test.com", + "shopperIP" : "192.0.2.1", + "browserInfo" : { + "userAgent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36", + "acceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8", + "language" : "nl-NL", + "colorDepth" : 24, + "screenHeight" : 723, + "screenWidth" : 1536, + "timeZoneOffset" : 0, + "javaEnabled" : true + }, + "channel" : "web", + "origin" : "https://your-company.com", + "returnUrl" : "https://your-company.com/checkout/", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-3d-secure-2-web-200" : { + "summary" : "Example response for request 'card-3d-secure-2-web'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "097410", + "avsResult" : "4 AVS not supported for this card type", + "avsResultRaw" : "C", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VHQOF" + }, + "pspReference" : "993617895214576G", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-card-3d-secure-direct" : { + "summary" : "Make card payment with 3D Secure redirect authentication", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "number" : "4212345678901237", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith", + "cvc" : "737" + }, + "browserInfo" : { + "userAgent" : "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9) Gecko/2008052912 Firefox/3.0", + "acceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-3d-secure-direct-200" : { + "summary" : "Example response for request 'card-3d-secure-direct'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "054817", + "avsResult" : "4 AVS not supported for this card type", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VIO26" + }, + "pspReference" : "993617895217578K", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-card-3d-secure-securedfields" : { + "summary" : "Make a payment with 3D Secure 2 native authentication", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "encryptedCardNumber" : "test_4212345678901237", + "encryptedExpiryMonth" : "test_03", + "encryptedExpiryYear" : "test_2030", + "encryptedSecurityCode" : "test_737", + "holderName" : "John Smith" + }, + "browserInfo" : { + "userAgent" : "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9) Gecko/2008052912 Firefox/3.0", + "acceptHeader" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-3d-secure-securedfields-200" : { + "summary" : "Example response for request 'card-3d-secure-securedfields'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "046773", + "avsResult" : "4 AVS not supported for this card type", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VCAVH" + }, + "pspReference" : "993617895196572H", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-card-direct" : { + "summary" : "Make a card payment", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "number" : "4111111111111111", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith", + "cvc" : "737" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-direct-200" : { + "summary" : "Example response for request 'card-direct'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "044925", + "avsResult" : "4 AVS not supported for this card type", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VEP3H" + }, + "pspReference" : "993617895204576J", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-card-securedfields" : { + "summary" : "Make a card payment (using encrypted card details)", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "encryptedCardNumber" : "test_4111111111111111", + "encryptedExpiryMonth" : "test_03", + "encryptedExpiryYear" : "test_2030", + "encryptedSecurityCode" : "test_737" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-card-securedfields-200" : { + "summary" : "Example response for request 'card-securedfields'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "065696", + "avsResult" : "4 AVS not supported for this card type", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VIE9N" + }, + "pspReference" : "993617895215577D", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-details-3d-secure-2-native" : { + "summary" : "Submit 3D Secure 2 authentication result", + "value" : { + "details" : { + "threeDSResult" : "eyJ0cmFuc1N0YXR1cyI6IlkifQ==" + } + } + }, + "post-payments-details-redirect" : { + "summary" : "Submit the redirect result", + "value" : { + "details" : { + "redirectResult" : "X6XtfGC3!Y..." + } + } + }, + "post-payments-enableOneClick-SF" : { + "summary" : "Tokenize card details for one-off payments (using encrypted card details)", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "encryptedCardNumber" : "test_4111111111111111", + "encryptedExpiryMonth" : "test_03", + "encryptedExpiryYear" : "test_2030", + "encryptedSecurityCode" : "test_737" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "storePaymentMethod" : true, + "shopperInteraction" : "Ecommerce", + "recurringProcessingModel" : "CardOnFile", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-enableOneClick-SF-200" : { + "summary" : "Example response for request 'enableOneClick-SF'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "082338", + "avsResult" : "4 AVS not supported for this card type", + "recurring.recurringDetailReference" : "9916178934434753", + "recurringProcessingModel" : "CardOnFile", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "recurring.shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VC172" + }, + "pspReference" : "993617895195570C", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-enableOneClick-raw" : { + "summary" : "Tokenize card details for one-off payments", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "number" : "4111111111111111", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith", + "cvc" : "737" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "shopperInteraction" : "Ecommerce", + "recurringProcessingModel" : "CardOnFile", + "storePaymentMethod" : true, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-enableOneClick-raw-200" : { + "summary" : "Example response for request 'enableOneClick-raw'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "003704", + "avsResult" : "4 AVS not supported for this card type", + "recurring.recurringDetailReference" : "9916178934434753", + "recurringProcessingModel" : "CardOnFile", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "recurring.shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VCKO0" + }, + "pspReference" : "993617895197573E", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-payments-giropay" : { + "summary" : "Make a giropay payment", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "giropay" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-giropay-200" : { + "summary" : "Example response for request 'giropay'", + "value" : { + "resultCode" : "RedirectShopper", + "action" : { + "paymentData" : "Ab02b4c0!BQABAgAt9sA8lQOSEpwOpedJBZvOI6J4xAEGqCpPCfZkvEQPbXSQBP0O+HEElyemCjzTkp4G70QJLaMvq6IlQ5uPk8rlFoPbTb59E9vrOS4IXxlxQH2TQ6iAAGJvU/SIBHAqENNbg1MjG5HR04c6GgpmaO/9LISgGVlqyoY8FlyHvJQcPcMqkK1hYh0mGmbHLtXqyCAx6yRIOGpV3aaI3GMNkSwf3007BwxJBNd7o0o3XktxLuqU8T9OJquwqWoD2FtfUZ9ZEPk2m5/AbOvhoFYuWrKCW1xptWw04m3JyAJHB2F7gPMjwAi5rE0hlMu3d19WucrxsXakeA/noqubbvsHqqtWdRAn+2fMrpOacX5C4VDdE/xrED6iHM6VoqCztCH8mBtyPxPPU5DMnfxUmmeTrIrrf8j95S1FBman8UORs3jiFtCgCD6uS7y0cFSs6J2DWijpO0chjxNM4xR4q5gedL2idE6rRjZjm6cLhrM21XeroNvQYJtoW2q+gDxl9o/3M74jP+3sPafBZMkdHZ8vUdCueHDdw7bST5UCPHRnEfNHy5XaYf2kG0meaE3tpAAmoCNO2qPdcozHJZggVl9lqHQ394BLpLfYr3YROyWu+36HQRZoa2U2Yz/sFYhF81Iimx6FQWEtLZzT/kGJHsXawb68gqd7xf9jo4p6qokklGkzCRC3iOTKmbnmADUPLdy/qNw7AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifX48+5ZqamGvpSW2oKGEqf2KQdVyjcJrlnNiJKp613bt+5k9/OD8G/5T00dp7aNtQx9nGc+mWf17T7VZ6OmooTBV9bmL0ZcGccD+z4UvQbxjXYnMXKLfQmHKi58x6skXW0y3PhxfCLbm/BClmKuCIrACpLmqX/Mu9mJU4DpdOFMpf047WLI9T9yFQ/6ciUpi09DD89bOGQwvlVTkJhvPu31u7OZCd1r8sZ+NsyoEv5Pe3VPRh6R+OoGuY8cDOt9GhMfjGxp7whTcxtKzwnvETJrMrsRfCVIXv95DefR/YsVL8kchNmljNwwzvCGWACeNM7lY6/96+d27Cf2VBf5fS9EcSGtlZpYpNXsdOMLyJBYdiCujp6r1Sd68jsLJG8/XGw9MPODz8Bhqg5XSLuukhGlmVgSkp/TwHwl+p0bhnS0fz+VWDp90mrEY1B8vxFe4yZ1v0sWWaX5USb1/sEZVT3X/1X2qFCbpM6jr498Kk3w3dUGPmDlZ+XiFk0HUt2800jTYrTZYRMjQjnEOrL15aW5h2ynCtxAJXewfk+9NSYjqScbvHKjLGA8FUB6v5TVhsf+sNFSf/zVtNs+PczPZDZMLTiUnZih36iAu5f4HYjl1o4/K+V1JSKHjegDggW+RCUokGH6kKRnMcs2pU3KoG9kOdGDBOQYj94a+CPWfgE7j97v2bQxmbFHOWgJLzX0lPGM3RR5dDboH3k2BrDHb92K88i+2IHMO8WvrW2qhkB4lGpecupG0XEBOUTH4Lnc3TzUFgsDCvF8mnLweIbRyohzd4SAfn2W4wR7QK1S0", + "paymentMethodType" : "giropay", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1vozAQ-DXwFoT5zoMfIkpbmqRtSDhVfakcswUrxKa24UJ--Rku16tOJ1m71oy1O7ProyS8SkUFuGZSdGS0aS8lcDrOYFYW9hkkbQjXK0pFzzU*gNLbK-ZF5lxDLYlmgjt67ACn91m6fioPb3fZY1bk6X9fDiCVyThEX3QB7zD1B6y0ZLz*Ruhe8huiCV4uUYTiZBmiZRBH6G-tPatx*7CG-fFJtt1OslMx7P3oMd9dVq9pOyq9e6Z36*1LF6F689Pyb2xj*QzG3Hn2hlzXtSWostjgRuvO8leWd2tOKyhpG6G0QRI3cQ1EG6An0WvViK4DaRAFcmAUlLk*-y6bcyrOxkUBFZNAtWEG9Kfc9c0WdCMqy7-9Z9BG3fdRW14k5xEYbYaa1JlG4SQwnCSaMIpeLkzDjvDRMXkGHcexFahpzj9IyyqmR*y5Hlq4wcJNDigyjtDShDB4ta9eph1JQqcd4cwUmpSBrU6Mz7*i64-O4DnXNcRRHMco8QPnMx9e-MNDVCXDmHnN6vJGq6a5lG5efr4HH5uP7H6T1TBWlfgFnQraMA", + "method" : "GET", + "type" : "redirect" + }, + "details" : [ + { + "key" : "payload", + "type" : "text" + } + ], + "paymentData" : "Ab02b4c0!BQABAgAt9sA8lQOSEpwOpedJBZvOI6J4xAEGqCpPCfZkvEQPbXSQBP0O+HEElyemCjzTkp4G70QJLaMvq6IlQ5uPk8rlFoPbTb59E9vrOS4IXxlxQH2TQ6iAAGJvU/SIBHAqENNbg1MjG5HR04c6GgpmaO/9LISgGVlqyoY8FlyHvJQcPcMqkK1hYh0mGmbHLtXqyCAx6yRIOGpV3aaI3GMNkSwf3007BwxJBNd7o0o3XktxLuqU8T9OJquwqWoD2FtfUZ9ZEPk2m5/AbOvhoFYuWrKCW1xptWw04m3JyAJHB2F7gPMjwAi5rE0hlMu3d19WucrxsXakeA/noqubbvsHqqtWdRAn+2fMrpOacX5C4VDdE/xrED6iHM6VoqCztCH8mBtyPxPPU5DMnfxUmmeTrIrrf8j95S1FBman8UORs3jiFtCgCD6uS7y0cFSs6J2DWijpO0chjxNM4xR4q5gedL2idE6rRjZjm6cLhrM21XeroNvQYJtoW2q+gDxl9o/3M74jP+3sPafBZMkdHZ8vUdCueHDdw7bST5UCPHRnEfNHy5XaYf2kG0meaE3tpAAmoCNO2qPdcozHJZggVl9lqHQ394BLpLfYr3YROyWu+36HQRZoa2U2Yz/sFYhF81Iimx6FQWEtLZzT/kGJHsXawb68gqd7xf9jo4p6qokklGkzCRC3iOTKmbnmADUPLdy/qNw7AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifX48+5ZqamGvpSW2oKGEqf2KQdVyjcJrlnNiJKp613bt+5k9/OD8G/5T00dp7aNtQx9nGc+mWf17T7VZ6OmooTBV9bmL0ZcGccD+z4UvQbxjXYnMXKLfQmHKi58x6skXW0y3PhxfCLbm/BClmKuCIrACpLmqX/Mu9mJU4DpdOFMpf047WLI9T9yFQ/6ciUpi09DD89bOGQwvlVTkJhvPu31u7OZCd1r8sZ+NsyoEv5Pe3VPRh6R+OoGuY8cDOt9GhMfjGxp7whTcxtKzwnvETJrMrsRfCVIXv95DefR/YsVL8kchNmljNwwzvCGWACeNM7lY6/96+d27Cf2VBf5fS9EcSGtlZpYpNXsdOMLyJBYdiCujp6r1Sd68jsLJG8/XGw9MPODz8Bhqg5XSLuukhGlmVgSkp/TwHwl+p0bhnS0fz+VWDp90mrEY1B8vxFe4yZ1v0sWWaX5USb1/sEZVT3X/1X2qFCbpM6jr498Kk3w3dUGPmDlZ+XiFk0HUt2800jTYrTZYRMjQjnEOrL15aW5h2ynCtxAJXewfk+9NSYjqScbvHKjLGA8FUB6v5TVhsf+sNFSf/zVtNs+PczPZDZMLTiUnZih36iAu5f4HYjl1o4/K+V1JSKHjegDggW+RCUokGH6kKRnMcs2pU3KoG9kOdGDBOQYj94a+CPWfgE7j97v2bQxmbFHOWgJLzX0lPGM3RR5dDboH3k2BrDHb92K88i+2IHMO8WvrW2qhkB4lGpecupG0XEBOUTH4Lnc3TzUFgsDCvF8mnLweIbRyohzd4SAfn2W4wR7QK1S0", + "redirect" : { + "method" : "GET", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1vozAQ-DXwFoT5zoMfIkpbmqRtSDhVfakcswUrxKa24UJ--Rku16tOJ1m71oy1O7ProyS8SkUFuGZSdGS0aS8lcDrOYFYW9hkkbQjXK0pFzzU*gNLbK-ZF5lxDLYlmgjt67ACn91m6fioPb3fZY1bk6X9fDiCVyThEX3QB7zD1B6y0ZLz*Ruhe8huiCV4uUYTiZBmiZRBH6G-tPatx*7CG-fFJtt1OslMx7P3oMd9dVq9pOyq9e6Z36*1LF6F689Pyb2xj*QzG3Hn2hlzXtSWostjgRuvO8leWd2tOKyhpG6G0QRI3cQ1EG6An0WvViK4DaRAFcmAUlLk*-y6bcyrOxkUBFZNAtWEG9Kfc9c0WdCMqy7-9Z9BG3fdRW14k5xEYbYaa1JlG4SQwnCSaMIpeLkzDjvDRMXkGHcexFahpzj9IyyqmR*y5Hlq4wcJNDigyjtDShDB4ta9eph1JQqcd4cwUmpSBrU6Mz7*i64-O4DnXNcRRHMco8QPnMx9e-MNDVCXDmHnN6vJGq6a5lG5efr4HH5uP7H6T1TBWlfgFnQraMA" + } + } + }, + "post-payments-googlepay" : { + "summary" : "Make a Google Pay payment", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "paywithgoogle", + "googlePayToken" : "==Payload as retrieved from Google Pay response==" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YourMerchantAccount" + } + }, + "post-payments-ideal" : { + "summary" : "Make an iDEAL payment", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "ideal", + "issuer" : "1121" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-ideal-200" : { + "summary" : "Example response for request 'ideal'", + "value" : { + "resultCode" : "RedirectShopper", + "action" : { + "paymentData" : "Ab02b4c0!BQABAgCINC3kOq5nsaj4k+VaArf6VIiTWkYALwijaS+VOvzTSf76Un3WYBgKJlEBqALZW3vlw+IDQGw5jqkVBO4axEJEFKu5fDL2RkeHbm+aHY7tlRVsjvNIcVTNbMtHJcclHakOVTrtTCQfspf11XGsmENUaL45bdeu07iDBtpnIvd39p6g8OVaLcSIGaA8Zosd93hs0h3lvIePt3QTekeOUH+zrMMfLyy/4QKBZtLjnWo3/4U0e2tsneOudynW0l5i+VyobWOZb7yZUj7v9GMVpAZ3YEqNZ1aWJlSmty9TJTpXp4PQQcNeELQAfTu4zaarMq5btRZpcmDRvSOQK0Qo/PvfWrv/si0c1NPr5EM43ebdkLiDEUSIGBDTellblheOaRsgD0JlrNLOHSpS6iCiyY5FQaWx7FpnYReP/un2f/2mMGxdehif1MqWWZzgAhjdA4kksQVb8eMIGLY2IveJ4iTmDAkFbhIATs2SuWhYBGqFnBGeH1jlJCJDDV8/XJ0IcX1/r0qC3wsUFecoElZ6gts+4tlfPUoeuSH/NFmyBEzrjZbgCqCH9YVXa/+W+dwQCOQ0G7K4SJepnlNcmpCtI29zMZgeRqmtzI0hImvQYt188MXK44ieh2wsmpVv6Y9EGIgJVR+t1IZKizm6Q2D5MCUC1uAVwu2iw7Xt5Re1XcWSaBC/nZt2iHaZF7kpgIXfrFshAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifVTgdc9kCwE5LJyeGFVSr+P70S1hwc62Ad03Oy1Ksxr823klh1hxYQDWBJETNf/YmYC9cHDGr6LxMQ8OOnwfg2xjsVU7ZUwWJbHid1vU/oJzHBXe54lHMNNre0HaQD6TSokVpazQsY3hRB84uevmeT7KVal98iqXd755VuiIxwHhhywaub1ogyQQEVxNGWx2+vL5Vh8NKmoghZQ+NLSZWRn77hJTGV+lKJdseGA9nV7DSlWodNmZ8RyRfQoqwtaK9woQ87PIN7XqSznZMS1HWMOE/aDLEXLJEfozHWrHuGVmn6Hupt/fBnm1GckSsMGeQNKS+4XmKGrJefrHDmdoZVBaZS9UjxfKjD2sCwu5vutgb6SLrECgCvu3q5/LTyFeTuPV1ZZrlpapC6umnWmSKmj/SdnhXJO00PNuFT2WY/GyH0cyA498zApE6VtLx2e9IvS01Oex6ZCRFDJ6sDCBzVN5g60vsm9tBut6trpQWyryqVM2cQ39xh9olCQ5Ml+2h4YFV5gA+1c0i+e6SeMtFJN788NW2EnQT/2pzM/rNAaSVwSf8vJcx3ZB9n8Pf8xi2buKZFEkyJpZJSg22JC/38D1E0tPRpQ7gZ1Z86meAGXnfKUtA+w2FllB2Y0dMrqi8jXnS/mqMPBmPVnIxUW96e40cB7W8E0VDf1IKx/wQphI8/vM3UOSqC81agmnyQ3nIDrAy8vqMOD+d1xcoElzRNy0OxU6v/90IKkhfAKr3Tur7Vb3FD6Pi/XrujJX95UlRd7fmaAI7Po1cIh1v7HEhsCNoh1z7WFNag==", + "paymentMethodType" : "ideal", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=redirectIdeal&p=eJxtUl1zmzAQ-DXwZgaB*XrQg0Nwg2s3DTVtJy8ZRbqAYlsikmCMf30FddNMpzOak2bvZm-3Ts*KCJZLBpgzIEeX9kqBoOMMFXXlcq17UCXDCAXIPYGiLRFmRanshcF70GZ3xd6TpTDQKGK4FJ4ZO8D5XZF-vq-3T5*KL0VV5v*tHEBpe*Pob5cKXmBSA1gbxUXzIWF6JW6JITjLUIySNItQliVxsH6v*cYbnNSHZsMfcydYr8SrE9yY7HRjavMAlyyIjhuK*tzszj9ew-uHrN854a3bkfEE1uBp9od833cV6Lra4taYzglXlsueo6Tk2EptLJL6qW8h2gI9yN7oVnYdKItoUAOnoO3z62-aUlB5sk4qYFwBNTYzoD9015odmFYyJ1z-M2yr7uO4nSBW8xisNpua1NlG0SQwmiTaMMpeLWzDjojRs-cMep7natDTrL*TI2fcjDjwA7Twlws-3aPYOkKZDVH26F69THtShE57woUlmpSBqw9czP*k65*9IfCuq0jiJElQGi69Szn8DPebmKXDWATt6vxEWduea7*sLy-Lt*1bcbctGhgZk78A5S7dyQ", + "method" : "GET", + "type" : "redirect" + }, + "details" : [ + { + "key" : "payload", + "type" : "text" + } + ], + "paymentData" : "Ab02b4c0!BQABAgCINC3kOq5nsaj4k+VaArf6VIiTWkYALwijaS+VOvzTSf76Un3WYBgKJlEBqALZW3vlw+IDQGw5jqkVBO4axEJEFKu5fDL2RkeHbm+aHY7tlRVsjvNIcVTNbMtHJcclHakOVTrtTCQfspf11XGsmENUaL45bdeu07iDBtpnIvd39p6g8OVaLcSIGaA8Zosd93hs0h3lvIePt3QTekeOUH+zrMMfLyy/4QKBZtLjnWo3/4U0e2tsneOudynW0l5i+VyobWOZb7yZUj7v9GMVpAZ3YEqNZ1aWJlSmty9TJTpXp4PQQcNeELQAfTu4zaarMq5btRZpcmDRvSOQK0Qo/PvfWrv/si0c1NPr5EM43ebdkLiDEUSIGBDTellblheOaRsgD0JlrNLOHSpS6iCiyY5FQaWx7FpnYReP/un2f/2mMGxdehif1MqWWZzgAhjdA4kksQVb8eMIGLY2IveJ4iTmDAkFbhIATs2SuWhYBGqFnBGeH1jlJCJDDV8/XJ0IcX1/r0qC3wsUFecoElZ6gts+4tlfPUoeuSH/NFmyBEzrjZbgCqCH9YVXa/+W+dwQCOQ0G7K4SJepnlNcmpCtI29zMZgeRqmtzI0hImvQYt188MXK44ieh2wsmpVv6Y9EGIgJVR+t1IZKizm6Q2D5MCUC1uAVwu2iw7Xt5Re1XcWSaBC/nZt2iHaZF7kpgIXfrFshAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifVTgdc9kCwE5LJyeGFVSr+P70S1hwc62Ad03Oy1Ksxr823klh1hxYQDWBJETNf/YmYC9cHDGr6LxMQ8OOnwfg2xjsVU7ZUwWJbHid1vU/oJzHBXe54lHMNNre0HaQD6TSokVpazQsY3hRB84uevmeT7KVal98iqXd755VuiIxwHhhywaub1ogyQQEVxNGWx2+vL5Vh8NKmoghZQ+NLSZWRn77hJTGV+lKJdseGA9nV7DSlWodNmZ8RyRfQoqwtaK9woQ87PIN7XqSznZMS1HWMOE/aDLEXLJEfozHWrHuGVmn6Hupt/fBnm1GckSsMGeQNKS+4XmKGrJefrHDmdoZVBaZS9UjxfKjD2sCwu5vutgb6SLrECgCvu3q5/LTyFeTuPV1ZZrlpapC6umnWmSKmj/SdnhXJO00PNuFT2WY/GyH0cyA498zApE6VtLx2e9IvS01Oex6ZCRFDJ6sDCBzVN5g60vsm9tBut6trpQWyryqVM2cQ39xh9olCQ5Ml+2h4YFV5gA+1c0i+e6SeMtFJN788NW2EnQT/2pzM/rNAaSVwSf8vJcx3ZB9n8Pf8xi2buKZFEkyJpZJSg22JC/38D1E0tPRpQ7gZ1Z86meAGXnfKUtA+w2FllB2Y0dMrqi8jXnS/mqMPBmPVnIxUW96e40cB7W8E0VDf1IKx/wQphI8/vM3UOSqC81agmnyQ3nIDrAy8vqMOD+d1xcoElzRNy0OxU6v/90IKkhfAKr3Tur7Vb3FD6Pi/XrujJX95UlRd7fmaAI7Po1cIh1v7HEhsCNoh1z7WFNag==", + "redirect" : { + "method" : "GET", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=redirectIdeal&p=eJxtUl1zmzAQ-DXwZgaB*XrQg0Nwg2s3DTVtJy8ZRbqAYlsikmCMf30FddNMpzOak2bvZm-3Ts*KCJZLBpgzIEeX9kqBoOMMFXXlcq17UCXDCAXIPYGiLRFmRanshcF70GZ3xd6TpTDQKGK4FJ4ZO8D5XZF-vq-3T5*KL0VV5v*tHEBpe*Pob5cKXmBSA1gbxUXzIWF6JW6JITjLUIySNItQliVxsH6v*cYbnNSHZsMfcydYr8SrE9yY7HRjavMAlyyIjhuK*tzszj9ew-uHrN854a3bkfEE1uBp9od833cV6Lra4taYzglXlsueo6Tk2EptLJL6qW8h2gI9yN7oVnYdKItoUAOnoO3z62-aUlB5sk4qYFwBNTYzoD9015odmFYyJ1z-M2yr7uO4nSBW8xisNpua1NlG0SQwmiTaMMpeLWzDjojRs-cMep7natDTrL*TI2fcjDjwA7Twlws-3aPYOkKZDVH26F69THtShE57woUlmpSBqw9czP*k65*9IfCuq0jiJElQGi69Szn8DPebmKXDWATt6vxEWduea7*sLy-Lt*1bcbctGhgZk78A5S7dyQ" + } + } + }, + "post-payments-klarna" : { + "summary" : "Make a Klarna payment", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "reference" : "YOUR_ORDER_REFERENCE", + "paymentMethod" : { + "type" : "klarna" + }, + "amount" : { + "currency" : "SEK", + "value" : "1000" + }, + "shopperLocale" : "en_US", + "countryCode" : "SE", + "telephoneNumber" : "+46 840 839 298", + "shopperEmail" : "youremail@email.com", + "shopperName" : { + "firstName" : "Testperson-se", + "gender" : "UNKNOWN", + "lastName" : "Approved" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "billingAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "deliveryAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "returnUrl" : "https://www.your-company.com/...", + "lineItems" : [ + { + "quantity" : "1", + "amountExcludingTax" : "331", + "taxPercentage" : "2100", + "description" : "Shoes", + "id" : "Item #1", + "taxAmount" : "69", + "amountIncludingTax" : "400", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM" + }, + { + "quantity" : "2", + "amountExcludingTax" : "248", + "taxPercentage" : "2100", + "description" : "Socks", + "id" : "Item #2", + "taxAmount" : "52", + "amountIncludingTax" : "300", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM" + } + ] + } + }, + "post-payments-oneclick-direct" : { + "summary" : "Make a one-off payment with a token and CVV", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8416038790273850", + "cardDetails.cvc" : "737" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_6738oneoff", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-oneclick-securedfields" : { + "summary" : "Make a one-off payment with a token and CVV (using encrypted card details)", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "storedPaymentMethodId" : "8416038790273850", + "encryptedSecurityCode" : "adyenjs_0_1_18$MT6ppy0FAMVMLH..." + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_6738oneoff", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth", + "recurringProcessingModel" : "CardOnFile" + } + }, + "post-payments-recurring" : { + "summary" : "Make a card payment with a token", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "storedPaymentMethodId" : "8316038796685850" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3subscription", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "shopperInteraction" : "ContAuth", + "recurringProcessingModel" : "Subscription" + } + }, + "post-payments-result-basic" : { + "summary" : "Verify payment results", + "value" : { + "payload" : "VALUE_YOU_GET_FROM_CHECKOUT_SDK" + } + }, + "post-payments-sofort" : { + "summary" : "Make a Sofort payment", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "directEbanking" + }, + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-sofort-200" : { + "summary" : "Example response for request 'sofort'", + "value" : { + "resultCode" : "RedirectShopper", + "action" : { + "paymentData" : "Ab02b4c0!BQABAgB1H7lBY8Uxf1bWoNkA9C2/BuD1Fa2+f3+u8Q3sZLCf6/nmkhPEg1CleH0L6NnNoxwgiHBzmljYF6QFoshWsEZ4Hp1fyq9S/IGHFcl6GlQHlQf/RATlCw21Il1BDhcjSib3JpxXWk/NeZbk/ZEvNrWNQOmHo0/eYxCSLl7OgE+PVyKfWogK8awCPNcqV52wgy27P7MlKQaZVfMTTlMfA2tS+xnGgXCXK+BpdLGXagCyRkhmi4QQLVv/sgSv4Zycu829yhaorOkum7hKEW3Os/DaIZbZjKglVpfFk4N2Qsa8ReydNGI1EeX9CfntJMFOMIWJeyfTimHhxZvUnIJ1cgIBLA8rdSxf3xExRXnK8xphXX+Aah4BIgRmLfOsnwsf6lnYcvPKg/3rMV/gK/g9iOC32wMGbzB7J+nPbW+ht5LJOK9ax/63H1bLT2Zm5UxcbzZsm8BccCyGqkMq8vZAE262urS4rGLzDCZXyJ22bq9yzQ/wUDVMhbTn55Cxotx+FwIhQA2SF0yZ+wgi1ty9ovl251eYbRdWNasvCwPaXxdTCVVD7wrdQbC5wQTpQO64EnQvYfiRerVQ5mCAu82VL4dCesNHvpKv2hKENa3p9ZFRJrle6wIUYX5fyscZDvEoqHvuqF+SpTXANK9PKGl6aaTCpg497/2x3wSU9Sxf8lzsrxAymOZnLENryrDr0v9IrYfDAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifexJovSnPKAg5NtTcILGEFLB/SoybKa3lEbVdUI76QewA8VFXNI8Ulnwlriy07AS4NDbZSfSfNYijSBS1uVsfo9kiabnFe0CQ29377TnsI1Bliv/CM6lBFp9SWQcLgSQQZkD1j4daab9L33mkUhQ/6Q+ERVtx2g+MAYNjl4xyJrc2IOQQ+0IUVGUZgJ4xKNTbf4TN0+EZXPvqxQ3ejsdtE3UhGjlZGS4HND7nkdljh/AfN5+JLe0fnvEgdfPZFttHCvdoOwosLL4ACSD5HH5v3Dc6wXuHAILopU+P/JUWa04gKInYMc1ABOzR9kOwzOHvWey7vrjONxyvUgietuYsuXkyozuL+hCgaJ4uZAIIvKqR/uTAZm76T82ds8+OcWoVgywHJRp+Vgn9Q2N5zf36DI/OWkQuYgRITz0NlT9QTjFwuWi15igdBlfufW/Gzp3mUXfYwj5GfJQBALOIGMzr9VEH6iukqHnA6tpdDOqAo9l5gsjzbPIMGkz66memwj5ZkxSSN69mgi+VEhOebAxSDDbGX0ONGY4gu12UQiiCOYx29LH3D7ANQTOjuyMmFBnHzMMRf+RoSzfrPLqiGvEC7b4vHwdzqCYNsz/cFAEouXFrZ72zzoWgpx62j/yKacRSW/PjmnEK/BOzjcovKfE3+thEybC0sjvDQSrMxQ34BvZM/+pWLXK5dY2QlBlHzRVPxmcw0tqO7dIcklC9GtEBrcr6Oc4U9ry0USIRLphRlP2eC4DOudUhbJ9AjujilVAocGy/BXOufpLJuhbaprux++0RRpxQ3ZdpMP//TiWuw==", + "paymentMethodType" : "directEbanking", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1zmzAQ-DXmzYwE5sMPenAJjmmdtqHGTfuSkcUFaGyJSIKa-PoexHU7nc4wErN7c7e7p4PmskxUCaxsNAibHrh8bmTliE5rkGKYuLTInRNoUXNpV0KoTlq2A2PvLtiVzKSFSnPbKOnaoQWWbNLkw6di93ibfkzzLPlvZQ-a4M0CeqVzeIJxPjBj9ajnD2E7LW*45Wy5pCGN4mXg0SAKF**uNV*aitGvXrK3tw-forjdn5fdWp*LIg88UtzbtviRHVN1X9lNuJ15658z-8Zp*XACtHea3FFCiKPBFPmW1da2M3*FhfgdleDHWhmLSExigpCoQTyrzppatS1oRAzovhFg8PfzW9tMCnVCHzm85YxMT3*3u9Tcga1VOfPX-0SN6v4Oe*aFegoBtSE1qsNBwSgwGCXiMahOz3Fgy*Xg4j2Brus6BsyY9J4fm7KxA-OIR*dkMSfxjoboyCN40OC7c-EybklzMW6JpdhoVAaOwRcyvYu2O7i9514WEYVRFNHYX7ivWf-g796HZdwPqVevzo*irOtzQbLi9Wnxsn1JN9u0gqEs1S-zMtxA", + "method" : "GET", + "type" : "redirect" + }, + "details" : [ + { + "key" : "payload", + "type" : "text" + } + ], + "paymentData" : "Ab02b4c0!BQABAgB1H7lBY8Uxf1bWoNkA9C2/BuD1Fa2+f3+u8Q3sZLCf6/nmkhPEg1CleH0L6NnNoxwgiHBzmljYF6QFoshWsEZ4Hp1fyq9S/IGHFcl6GlQHlQf/RATlCw21Il1BDhcjSib3JpxXWk/NeZbk/ZEvNrWNQOmHo0/eYxCSLl7OgE+PVyKfWogK8awCPNcqV52wgy27P7MlKQaZVfMTTlMfA2tS+xnGgXCXK+BpdLGXagCyRkhmi4QQLVv/sgSv4Zycu829yhaorOkum7hKEW3Os/DaIZbZjKglVpfFk4N2Qsa8ReydNGI1EeX9CfntJMFOMIWJeyfTimHhxZvUnIJ1cgIBLA8rdSxf3xExRXnK8xphXX+Aah4BIgRmLfOsnwsf6lnYcvPKg/3rMV/gK/g9iOC32wMGbzB7J+nPbW+ht5LJOK9ax/63H1bLT2Zm5UxcbzZsm8BccCyGqkMq8vZAE262urS4rGLzDCZXyJ22bq9yzQ/wUDVMhbTn55Cxotx+FwIhQA2SF0yZ+wgi1ty9ovl251eYbRdWNasvCwPaXxdTCVVD7wrdQbC5wQTpQO64EnQvYfiRerVQ5mCAu82VL4dCesNHvpKv2hKENa3p9ZFRJrle6wIUYX5fyscZDvEoqHvuqF+SpTXANK9PKGl6aaTCpg497/2x3wSU9Sxf8lzsrxAymOZnLENryrDr0v9IrYfDAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifexJovSnPKAg5NtTcILGEFLB/SoybKa3lEbVdUI76QewA8VFXNI8Ulnwlriy07AS4NDbZSfSfNYijSBS1uVsfo9kiabnFe0CQ29377TnsI1Bliv/CM6lBFp9SWQcLgSQQZkD1j4daab9L33mkUhQ/6Q+ERVtx2g+MAYNjl4xyJrc2IOQQ+0IUVGUZgJ4xKNTbf4TN0+EZXPvqxQ3ejsdtE3UhGjlZGS4HND7nkdljh/AfN5+JLe0fnvEgdfPZFttHCvdoOwosLL4ACSD5HH5v3Dc6wXuHAILopU+P/JUWa04gKInYMc1ABOzR9kOwzOHvWey7vrjONxyvUgietuYsuXkyozuL+hCgaJ4uZAIIvKqR/uTAZm76T82ds8+OcWoVgywHJRp+Vgn9Q2N5zf36DI/OWkQuYgRITz0NlT9QTjFwuWi15igdBlfufW/Gzp3mUXfYwj5GfJQBALOIGMzr9VEH6iukqHnA6tpdDOqAo9l5gsjzbPIMGkz66memwj5ZkxSSN69mgi+VEhOebAxSDDbGX0ONGY4gu12UQiiCOYx29LH3D7ANQTOjuyMmFBnHzMMRf+RoSzfrPLqiGvEC7b4vHwdzqCYNsz/cFAEouXFrZ72zzoWgpx62j/yKacRSW/PjmnEK/BOzjcovKfE3+thEybC0sjvDQSrMxQ34BvZM/+pWLXK5dY2QlBlHzRVPxmcw0tqO7dIcklC9GtEBrcr6Oc4U9ry0USIRLphRlP2eC4DOudUhbJ9AjujilVAocGy/BXOufpLJuhbaprux++0RRpxQ3ZdpMP//TiWuw==", + "redirect" : { + "method" : "GET", + "url" : "https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1zmzAQ-DXmzYwE5sMPenAJjmmdtqHGTfuSkcUFaGyJSIKa-PoexHU7nc4wErN7c7e7p4PmskxUCaxsNAibHrh8bmTliE5rkGKYuLTInRNoUXNpV0KoTlq2A2PvLtiVzKSFSnPbKOnaoQWWbNLkw6di93ibfkzzLPlvZQ-a4M0CeqVzeIJxPjBj9ajnD2E7LW*45Wy5pCGN4mXg0SAKF**uNV*aitGvXrK3tw-forjdn5fdWp*LIg88UtzbtviRHVN1X9lNuJ15658z-8Zp*XACtHea3FFCiKPBFPmW1da2M3*FhfgdleDHWhmLSExigpCoQTyrzppatS1oRAzovhFg8PfzW9tMCnVCHzm85YxMT3*3u9Tcga1VOfPX-0SN6v4Oe*aFegoBtSE1qsNBwSgwGCXiMahOz3Fgy*Xg4j2Brus6BsyY9J4fm7KxA-OIR*dkMSfxjoboyCN40OC7c-EybklzMW6JpdhoVAaOwRcyvYu2O7i9514WEYVRFNHYX7ivWf-g796HZdwPqVevzo*irOtzQbLi9Wnxsn1JN9u0gqEs1S-zMtxA" + } + } + }, + "post-payments-split" : { + "summary" : "Split a payment between a sub-merchant and a platform account", + "value" : { + "paymentMethod" : { + "type" : "scheme", + "number" : "4111111111111111", + "cvc" : "737", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith" + }, + "amount" : { + "value" : 6200, + "currency" : "EUR" + }, + "reference" : "YOUR_ORDER_NUMBER", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "returnUrl" : "https://your-company.com/...", + "splits" : [ + { + "amount" : { + "value" : 6000 + }, + "type" : "MarketPlace", + "account" : "151272963", + "reference" : "6124145", + "description" : "Porcelain Doll: Eliza (20cm)" + }, + { + "amount" : { + "value" : 200 + }, + "type" : "Commission", + "reference" : "6124146" + } + ] + } + }, + "post-payments-subscription-first-transaction" : { + "summary" : "Tokenize card details for a subscription", + "value" : { + "amount" : { + "currency" : "USD", + "value" : 1000 + }, + "reference" : "Your order number", + "paymentMethod" : { + "type" : "scheme", + "number" : "4111111111111111", + "expiryMonth" : "03", + "expiryYear" : "2030", + "holderName" : "John Smith", + "cvc" : "737" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "storePaymentMethod" : true, + "shopperInteraction" : "Ecommerce", + "recurringProcessingModel" : "Subscription", + "returnUrl" : "https://your-company.com/...", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT" + } + }, + "post-payments-subscription-first-transaction-200" : { + "summary" : "Example response for request 'subscription-first-transaction'", + "value" : { + "additionalData" : { + "cvcResult" : "1 Matches", + "authCode" : "098871", + "avsResult" : "4 AVS not supported for this card type", + "recurring.recurringDetailReference" : "9916178934434753", + "recurringProcessingModel" : "Subscription", + "avsResultRaw" : "4", + "cvcResultRaw" : "M", + "refusalReasonRaw" : "AUTHORISED", + "recurring.shopperReference" : "YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", + "acquirerCode" : "TestPmmAcquirer", + "acquirerReference" : "8PQMP9VD896" + }, + "pspReference" : "993617895199574A", + "resultCode" : "Authorised", + "merchantReference" : "string" + } + }, + "post-sessions-enableOneClick" : { + "summary" : "Tokenize card details for one-off payments", + "description" : "Example request for tokenizing card details for one-off payments", + "value" : { + "merchantAccount" : "TestMerchantCheckout", + "amount" : { + "value" : 100, + "currency" : "EUR" + }, + "returnUrl" : "https://your-company.com/checkout?shopperOrder=12xy..", + "reference" : "YOUR_PAYMENT_REFERENCE", + "countryCode" : "NL", + "storePaymentMethod" : true, + "shopperInteraction" : "Ecommerce", + "recurringProcessingModel" : "CardOnFile" + } + }, + "post-sessions-enableOneClick-200" : { + "summary" : "Response code: 201. Success.", + "description" : "Example ", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "countryCode" : "NL", + "expiresAt" : "2022-01-11T13:56:05+01:00", + "id" : "CSEE37DC1DD751A01F", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "recurringProcessingModel" : "CardOnFile", + "reference" : "YOUR_PAYMENT_REFERENCE", + "returnUrl" : "https://your-company.com/checkout?shopperOrder=12xy..", + "shopperInteraction" : "Ecommerce", + "storePaymentMethod" : true, + "sessionData" : "Ab02b4c0!BQABAgBfYI29..." + } + }, + "post-sessions-klarna" : { + "summary" : "Create a payment session including Klarna fields", + "description" : "Example request for creating a payment session when Klarna is one of the available payment methods", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "reference" : "YOUR_ORDER_REFERENCE", + "amount" : { + "currency" : "SEK", + "value" : 1000 + }, + "shopperLocale" : "en_US", + "countryCode" : "SE", + "telephoneNumber" : "+46 840 839 298", + "shopperEmail" : "youremail@email.com", + "shopperName" : { + "firstName" : "Testperson-se", + "gender" : "UNKNOWN", + "lastName" : "Approved" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "billingAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "deliveryAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "dateOfBirth" : "1996-09-04", + "socialSecurityNumber" : "0108", + "returnUrl" : "https://example.org", + "lineItems" : [ + { + "quantity" : "1", + "amountExcludingTax" : "331", + "taxPercentage" : "2100", + "description" : "Shoes", + "id" : "Item #1", + "taxAmount" : "69", + "amountIncludingTax" : "400", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM" + }, + { + "quantity" : "2", + "amountExcludingTax" : "248", + "taxPercentage" : "2100", + "description" : "Socks", + "id" : "Item #2", + "taxAmount" : "52", + "amountIncludingTax" : "300", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM" + } + ] + } + }, + "post-sessions-klarna-200" : { + "summary" : "Response code: 201. Success.", + "description" : "Example ", + "value" : { + "amount" : { + "currency" : "SEK", + "value" : 1000 + }, + "billingAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "countryCode" : "SE", + "dateOfBirth" : "1996-09-04T02:00:00+02:00", + "deliveryAddress" : { + "city" : "Ankeborg", + "country" : "SE", + "houseNumberOrName" : "1", + "postalCode" : "12345", + "street" : "Stargatan" + }, + "expiresAt" : "2022-01-11T13:57:52+01:00", + "id" : "CSC52E9932D39ADAF3", + "lineItems" : [ + { + "amountExcludingTax" : 331, + "amountIncludingTax" : 400, + "description" : "Shoes", + "id" : "Item #1", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "quantity" : 1, + "taxAmount" : 69, + "taxPercentage" : 2100 + }, + { + "amountExcludingTax" : 248, + "amountIncludingTax" : 300, + "description" : "Socks", + "id" : "Item #2", + "imageUrl" : "URL_TO_PICTURE_OF_PURCHASED_ITEM", + "productUrl" : "URL_TO_PURCHASED_ITEM", + "quantity" : 2, + "taxAmount" : 52, + "taxPercentage" : 2100 + } + ], + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "reference" : "YOUR_ORDER_REFERENCE", + "returnUrl" : "https://example.org", + "shopperEmail" : "youremail@email.com", + "shopperLocale" : "en_US", + "shopperName" : { + "firstName" : "Testperson-se", + "gender" : "UNKNOWN", + "lastName" : "Approved" + }, + "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID", + "socialSecurityNumber" : "0108", + "telephoneNumber" : "+46 840 839 298", + "sessionData" : "Ab02b4c0!BQABAgBfYI29..." + } + }, + "post-sessions-success" : { + "summary" : "Create a payment session", + "description" : "Example request for creating a payment session", + "value" : { + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "amount" : { + "value" : 100, + "currency" : "EUR" + }, + "returnUrl" : "https://your-company.com/checkout?shopperOrder=12xy..", + "reference" : "YOUR_PAYMENT_REFERENCE", + "countryCode" : "NL" + } + }, + "post-sessions-success-200" : { + "summary" : "Response code: 201. Success.", + "description" : "Example response for creating a payment session", + "value" : { + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "countryCode" : "NL", + "expiresAt" : "2022-01-11T13:53:18+01:00", + "id" : "CS451F2AB1ED897A94", + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "reference" : "YOUR_PAYMENT_REFERENCE", + "returnUrl" : "https://your-company.com/checkout?shopperOrder=12xy..", + "sessionData" : "Ab02b4c0!BQABAgBfYI29..." + } + } + } + } +} \ No newline at end of file diff --git a/json/DataProtectionService-v1.json b/json/DataProtectionService-v1.json new file mode 100644 index 0000000..5546a90 --- /dev/null +++ b/json/DataProtectionService-v1.json @@ -0,0 +1,192 @@ +{ + "openapi" : "3.1.0", + "info" : { + "version" : "1", + "x-publicVersion" : true, + "title" : "Adyen Data Protection API", + "description" : "Adyen Data Protection API provides a way for you to process [Subject Erasure Requests](https://gdpr-info.eu/art-17-gdpr/) as mandated in GDPR.\n\nUse our API to submit a request to delete shopper's data, including payment details and other related information (for example, delivery address or shopper email).## Authentication\nEach request to the Data Protection API must be signed with an API key. Get your API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_API_key\" \\\n...\n```\nNote that when going live, you need to generate a new API Key to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nData Protection Service API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://ca-test.adyen.com/ca/services/DataProtectionService/v1/requestSubjectErasure\n```", + "x-timestamp" : "2022-05-03T09:24:04Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "General" + ], + "tags" : [ + { + "name" : "General" + } + ], + "paths" : { + "/requestSubjectErasure" : { + "post" : { + "tags" : [ + "General" + ], + "summary" : "Submit a Subject Erasure Request.", + "description" : "Sends the PSP reference containing the shopper data that should be deleted.", + "operationId" : "post-requestSubjectErasure", + "x-groupName" : "General", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SubjectErasureByPspReferenceRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SubjectErasureResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + } + }, + "components" : { + "schemas" : { + "ServiceError" : { + "properties" : { + "errorCode" : { + "description" : "The error code mapped to the error message.", + "type" : "string" + }, + "errorType" : { + "description" : "The category of the error.", + "type" : "string" + }, + "message" : { + "description" : "A short explanation of the issue.", + "type" : "string" + }, + "pspReference" : { + "description" : "The PSP reference of the payment.", + "type" : "string" + }, + "status" : { + "description" : "The HTTP response status.", + "format" : "int32", + "type" : "integer" + } + } + }, + "SubjectErasureByPspReferenceRequest" : { + "properties" : { + "forceErasure" : { + "description" : "Set this to **true** if you want to delete shopper-related data, even if the shopper has an existing recurring transaction. This only deletes the shopper-related data for the specific payment, but does not cancel the existing recurring transaction.", + "type" : "boolean" + }, + "merchantAccount" : { + "description" : "Your merchant account", + "type" : "string" + }, + "pspReference" : { + "description" : "The PSP reference of the payment. We will delete all shopper-related data for this payment.", + "type" : "string" + } + } + }, + "SubjectErasureResponse" : { + "properties" : { + "result" : { + "description" : "The result of this operation.", + "enum" : [ + "ACTIVE_RECURRING_TOKEN_EXISTS", + "ALREADY_PROCESSED", + "PAYMENT_NOT_FOUND", + "SUCCESS" + ], + "type" : "string" + } + } + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "examples" : { + + } + } +} \ No newline at end of file diff --git a/json/FundService-v3.json b/json/FundService-v3.json index 1ff8049..bacb07f 100644 --- a/json/FundService-v3.json +++ b/json/FundService-v3.json @@ -9,7 +9,8 @@ "version" : "3", "x-publicVersion" : true, "title" : "Adyen for Platforms: Fund API", - "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include actions such as the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Fund API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v3/accountHolderBalance\n```", + "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include, for example, the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v3/accountHolderBalance\n```", + "x-timestamp" : "2022-04-21T16:24:56Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,8 +32,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve the balance(s) of an account holder.", - "description" : "This endpoint is used to retrieve the balance(s) of the accounts of an account holder. An account's balances are on a per-currency basis (i.e., an account may have multiple balances: one per currency).", + "summary" : "Get the balances of an account holder", + "description" : "Returns the account balances of an account holder. An account's balances are organized according by currencies. This mean that an account may have multiple balances: one for each currency.", "operationId" : "post-accountHolderBalance", "x-groupName" : "General", "x-sortIndex" : 1, @@ -129,8 +130,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of transactions.", - "description" : "This endpoint is used to retrieve a list of Transactions for an account holder's accounts. The accounts and Transaction Statuses to be included on the list can be specified. Each call will return a maximum of fifty (50) Transactions per account; in order to retrieve the following set of Transactions another call should be made with the 'page' value incremented. Note that Transactions are ordered with most recent first.", + "summary" : "Get a list of transactions", + "description" : "Returns a list of transactions for an account holder's accounts. You can specify the accounts and transaction statuses to be included on the list. The call returns a maximum of 50 transactions for each account. To retrieve all transactions, you must make another call with the 'page' value incremented. Transactions are listed in chronological order, with the most recent transaction first.", "operationId" : "post-accountHolderTransactionList", "x-groupName" : "General", "x-sortIndex" : 2, @@ -230,8 +231,8 @@ "tags" : [ "General" ], - "summary" : "Send a direct debit request.", - "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about use cases, refer to [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", + "summary" : "Send a direct debit request", + "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about direct debits, see [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", "operationId" : "post-debitAccountHolder", "x-groupName" : "General", "x-sortIndex" : 8, @@ -248,6 +249,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderRequest" } @@ -258,6 +264,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder-200" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderResponse" } @@ -333,8 +344,8 @@ "tags" : [ "General" ], - "summary" : "Disburse a specified amount from an account to the account holder.", - "description" : "This endpoint is used to pay out a specified amount from an account to the bank account of the account's account holder.", + "summary" : "Pay out from an account to the account holder", + "description" : "Pays out a specified amount from an account to the bank account of account holder.", "operationId" : "post-payoutAccountHolder", "x-groupName" : "General", "x-sortIndex" : 3, @@ -441,8 +452,8 @@ "tags" : [ "General" ], - "summary" : "Make a refund of the existing transfer funds transfer.", - "description" : "This endpoint is used to refund funds transferred from one account to another. Both accounts must be in the same marketplace, but can have different account holders. ", + "summary" : "Refund a funds transfer", + "description" : "Refunds funds transferred from one account to another. Both accounts must be in the same platform, but can have different account holders. ", "operationId" : "post-refundFundsTransfer", "x-groupName" : "General", "x-sortIndex" : 5, @@ -549,8 +560,8 @@ "tags" : [ "General" ], - "summary" : "Refund all transactions of an account since the most recent payout.", - "description" : "This endpoint is used to refund all the transactions of an account which have taken place since the most recent payout. This request is on a per-account basis (as opposed to a per-payment basis), so only the portion of the payment which was made to the specified account will be refunded. The commission(s), fee(s), and payment(s) to other account(s), will remain in the accounts to which they were sent as designated by the original payment's split details.", + "summary" : "Refund all transactions of an account since the most recent payout", + "description" : "Refunds all the transactions of an account that have taken place since the most recent payout. This request is on a account basis (as opposed to a payment basis), so only the portion of the payment that was made to the specified account is refunded. The commissions, fees, and payments to other accounts remain in the accounts to which they were sent as designated by the original payment's split details.", "operationId" : "post-refundNotPaidOutTransfers", "x-groupName" : "General", "x-sortIndex" : 7, @@ -657,8 +668,8 @@ "tags" : [ "General" ], - "summary" : "Designate an account to be the beneficiary of a separate account and transfer the benefactor's current balance to the beneficiary.", - "description" : "This endpoint is used to define a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. Note that a series of benefactor/beneficiaries may not exceed four (4) beneficiaries and may not have a cycle in it.", + "summary" : "Designate a beneficiary account and transfer the benefactor's current balance", + "description" : "Defines a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. A series of benefactor/beneficiaries may not exceed four beneficiaries and may not have a cycle in it.", "operationId" : "post-setupBeneficiary", "x-groupName" : "General", "x-sortIndex" : 6, @@ -765,8 +776,8 @@ "tags" : [ "General" ], - "summary" : "Transfer funds from one platform account to another.", - "description" : "This endpoint is used to transfer funds from one account to another account. Both accounts must be in the same marketplace, but can have different account holders. The transfer must include a transfer code, which should be determined by the marketplace, in compliance with local regulations.", + "summary" : "Transfer funds between platform accounts", + "description" : "Transfers funds from one account to another account. Both accounts must be in the same platform, but can have different account holders. The transfer must include a transfer code, which should be determined by the platform, in compliance with local regulations.", "operationId" : "post-transferFunds", "x-groupName" : "General", "x-sortIndex" : 4, @@ -1115,7 +1126,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -1275,8 +1287,7 @@ }, "required" : [ "accountHolderCode", - "accountCode", - "amount" + "accountCode" ] }, "PayoutAccountHolderResponse" : { @@ -1464,13 +1475,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -1737,6 +1749,45 @@ ] } }, + "post-debitAccountHolder-debit-account-holder" : { + "summary" : "Send a bank account direct debit", + "description" : "Example request to send a direct debit from a bank account", + "value" : { + "accountHolderCode" : "ACCOUNT_HOLDER_CODE", + "description" : "YOUR_DESCRIPTION", + "bankAccountUUID" : "000b81aa-ae7e-4492-aa7e-72b2129dce0c", + "amount" : { + "value" : 6200, + "currency" : "USD" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "splits" : [ + { + "amount" : { + "value" : 6000 + }, + "type" : "MarketPlace", + "account" : "8535516988037431", + "reference" : "YOUR_SPLIT_REFERENCE_1" + }, + { + "amount" : { + "value" : 200 + }, + "type" : "Commission", + "reference" : "YOUR_SPLIT_REFERENCE_2" + } + ] + } + }, + "post-debitAccountHolder-debit-account-holder-200" : { + "summary" : "Direct debit request sent", + "description" : "Example response for requesting a direct debit from a bank account", + "value" : { + "pspReference" : "8816480354727275", + "submittedAsync" : "false" + } + }, "post-payoutAccountHolder-oneOff" : { "summary" : "One-off payout", "value" : { diff --git a/json/FundService-v5.json b/json/FundService-v5.json index bd6aff9..dbcf8c4 100644 --- a/json/FundService-v5.json +++ b/json/FundService-v5.json @@ -9,7 +9,8 @@ "version" : "5", "x-publicVersion" : true, "title" : "Adyen for Platforms: Fund API", - "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include actions such as the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Fund API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v5/accountHolderBalance\n```", + "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include, for example, the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v5/accountHolderBalance\n```", + "x-timestamp" : "2022-04-21T16:24:56Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,8 +32,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve the balance(s) of an account holder.", - "description" : "This endpoint is used to retrieve the balance(s) of the accounts of an account holder. An account's balances are on a per-currency basis (i.e., an account may have multiple balances: one per currency).", + "summary" : "Get the balances of an account holder", + "description" : "Returns the account balances of an account holder. An account's balances are organized according by currencies. This mean that an account may have multiple balances: one for each currency.", "operationId" : "post-accountHolderBalance", "x-groupName" : "General", "x-sortIndex" : 1, @@ -129,8 +130,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of transactions.", - "description" : "This endpoint is used to retrieve a list of Transactions for an account holder's accounts. The accounts and Transaction Statuses to be included on the list can be specified. Each call will return a maximum of fifty (50) Transactions per account; in order to retrieve the following set of Transactions another call should be made with the 'page' value incremented. Note that Transactions are ordered with most recent first.", + "summary" : "Get a list of transactions", + "description" : "Returns a list of transactions for an account holder's accounts. You can specify the accounts and transaction statuses to be included on the list. The call returns a maximum of 50 transactions for each account. To retrieve all transactions, you must make another call with the 'page' value incremented. Transactions are listed in chronological order, with the most recent transaction first.", "operationId" : "post-accountHolderTransactionList", "x-groupName" : "General", "x-sortIndex" : 2, @@ -230,8 +231,8 @@ "tags" : [ "General" ], - "summary" : "Send a direct debit request.", - "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about use cases, refer to [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", + "summary" : "Send a direct debit request", + "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about direct debits, see [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", "operationId" : "post-debitAccountHolder", "x-groupName" : "General", "x-sortIndex" : 8, @@ -248,6 +249,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderRequest" } @@ -258,6 +264,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder-200" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderResponse" } @@ -333,8 +344,8 @@ "tags" : [ "General" ], - "summary" : "Disburse a specified amount from an account to the account holder.", - "description" : "This endpoint is used to pay out a specified amount from an account to the bank account of the account's account holder.", + "summary" : "Pay out from an account to the account holder", + "description" : "Pays out a specified amount from an account to the bank account of account holder.", "operationId" : "post-payoutAccountHolder", "x-groupName" : "General", "x-sortIndex" : 3, @@ -441,8 +452,8 @@ "tags" : [ "General" ], - "summary" : "Make a refund of the existing transfer funds transfer.", - "description" : "This endpoint is used to refund funds transferred from one account to another. Both accounts must be in the same marketplace, but can have different account holders. ", + "summary" : "Refund a funds transfer", + "description" : "Refunds funds transferred from one account to another. Both accounts must be in the same platform, but can have different account holders. ", "operationId" : "post-refundFundsTransfer", "x-groupName" : "General", "x-sortIndex" : 5, @@ -549,8 +560,8 @@ "tags" : [ "General" ], - "summary" : "Refund all transactions of an account since the most recent payout.", - "description" : "This endpoint is used to refund all the transactions of an account which have taken place since the most recent payout. This request is on a per-account basis (as opposed to a per-payment basis), so only the portion of the payment which was made to the specified account will be refunded. The commission(s), fee(s), and payment(s) to other account(s), will remain in the accounts to which they were sent as designated by the original payment's split details.", + "summary" : "Refund all transactions of an account since the most recent payout", + "description" : "Refunds all the transactions of an account that have taken place since the most recent payout. This request is on a account basis (as opposed to a payment basis), so only the portion of the payment that was made to the specified account is refunded. The commissions, fees, and payments to other accounts remain in the accounts to which they were sent as designated by the original payment's split details.", "operationId" : "post-refundNotPaidOutTransfers", "x-groupName" : "General", "x-sortIndex" : 7, @@ -657,8 +668,8 @@ "tags" : [ "General" ], - "summary" : "Designate an account to be the beneficiary of a separate account and transfer the benefactor's current balance to the beneficiary.", - "description" : "This endpoint is used to define a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. Note that a series of benefactor/beneficiaries may not exceed four (4) beneficiaries and may not have a cycle in it.", + "summary" : "Designate a beneficiary account and transfer the benefactor's current balance", + "description" : "Defines a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. A series of benefactor/beneficiaries may not exceed four beneficiaries and may not have a cycle in it.", "operationId" : "post-setupBeneficiary", "x-groupName" : "General", "x-sortIndex" : 6, @@ -765,8 +776,8 @@ "tags" : [ "General" ], - "summary" : "Transfer funds from one platform account to another.", - "description" : "This endpoint is used to transfer funds from one account to another account. Both accounts must be in the same marketplace, but can have different account holders. The transfer must include a transfer code, which should be determined by the marketplace, in compliance with local regulations.", + "summary" : "Transfer funds between platform accounts", + "description" : "Transfers funds from one account to another account. Both accounts must be in the same platform, but can have different account holders. The transfer must include a transfer code, which should be determined by the platform, in compliance with local regulations.", "operationId" : "post-transferFunds", "x-groupName" : "General", "x-sortIndex" : 4, @@ -1128,7 +1139,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -1303,6 +1315,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -1503,8 +1519,7 @@ }, "required" : [ "accountHolderCode", - "accountCode", - "amount" + "accountCode" ] }, "PayoutAccountHolderResponse" : { @@ -1719,13 +1734,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -1992,6 +2008,45 @@ ] } }, + "post-debitAccountHolder-debit-account-holder" : { + "summary" : "Send a bank account direct debit", + "description" : "Example request to send a direct debit from a bank account", + "value" : { + "accountHolderCode" : "ACCOUNT_HOLDER_CODE", + "description" : "YOUR_DESCRIPTION", + "bankAccountUUID" : "000b81aa-ae7e-4492-aa7e-72b2129dce0c", + "amount" : { + "value" : 6200, + "currency" : "USD" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "splits" : [ + { + "amount" : { + "value" : 6000 + }, + "type" : "MarketPlace", + "account" : "8535516988037431", + "reference" : "YOUR_SPLIT_REFERENCE_1" + }, + { + "amount" : { + "value" : 200 + }, + "type" : "Commission", + "reference" : "YOUR_SPLIT_REFERENCE_2" + } + ] + } + }, + "post-debitAccountHolder-debit-account-holder-200" : { + "summary" : "Direct debit request sent", + "description" : "Example response for requesting a direct debit from a bank account", + "value" : { + "pspReference" : "8816480354727275", + "submittedAsync" : "false" + } + }, "post-payoutAccountHolder-oneOff" : { "summary" : "One-off payout", "value" : { diff --git a/json/FundService-v6.json b/json/FundService-v6.json index b750909..19f89cc 100644 --- a/json/FundService-v6.json +++ b/json/FundService-v6.json @@ -9,7 +9,8 @@ "version" : "6", "x-publicVersion" : true, "title" : "Adyen for Platforms: Fund API", - "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include actions such as the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nTo connect to the Fund API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance\n```", + "description" : "The Fund API provides endpoints for managing the funds in the accounts on your platform. These management operations include, for example, the transfer of funds from one account to another, the payout of funds to an account holder, and the retrieval of balances in an account.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance\n```", + "x-timestamp" : "2022-04-21T16:24:56Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,8 +32,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve the balance(s) of an account holder.", - "description" : "This endpoint is used to retrieve the balance(s) of the accounts of an account holder. An account's balances are on a per-currency basis (i.e., an account may have multiple balances: one per currency).", + "summary" : "Get the balances of an account holder", + "description" : "Returns the account balances of an account holder. An account's balances are organized according by currencies. This mean that an account may have multiple balances: one for each currency.", "operationId" : "post-accountHolderBalance", "x-groupName" : "General", "x-sortIndex" : 1, @@ -129,8 +130,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of transactions.", - "description" : "This endpoint is used to retrieve a list of Transactions for an account holder's accounts. The accounts and Transaction Statuses to be included on the list can be specified. Each call will return a maximum of fifty (50) Transactions per account; in order to retrieve the following set of Transactions another call should be made with the 'page' value incremented. Note that Transactions are ordered with most recent first.", + "summary" : "Get a list of transactions", + "description" : "Returns a list of transactions for an account holder's accounts. You can specify the accounts and transaction statuses to be included on the list. The call returns a maximum of 50 transactions for each account. To retrieve all transactions, you must make another call with the 'page' value incremented. Transactions are listed in chronological order, with the most recent transaction first.", "operationId" : "post-accountHolderTransactionList", "x-groupName" : "General", "x-sortIndex" : 2, @@ -230,8 +231,8 @@ "tags" : [ "General" ], - "summary" : "Send a direct debit request.", - "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about use cases, refer to [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", + "summary" : "Send a direct debit request", + "description" : "Sends a direct debit request to an account holder's bank account. If the direct debit is successful, the funds are settled in the accounts specified in the split instructions. Adyen sends the result of the direct debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED) notification webhook.\n\n To learn more about direct debits, see [Top up accounts](https://docs.adyen.com/platforms/top-up-accounts).", "operationId" : "post-debitAccountHolder", "x-groupName" : "General", "x-sortIndex" : 8, @@ -248,6 +249,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderRequest" } @@ -258,6 +264,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "debit-account-holder" : { + "$ref" : "#/components/examples/post-debitAccountHolder-debit-account-holder-200" + } + }, "schema" : { "$ref" : "#/components/schemas/DebitAccountHolderResponse" } @@ -333,8 +344,8 @@ "tags" : [ "General" ], - "summary" : "Disburse a specified amount from an account to the account holder.", - "description" : "This endpoint is used to pay out a specified amount from an account to the bank account of the account's account holder.", + "summary" : "Pay out from an account to the account holder", + "description" : "Pays out a specified amount from an account to the bank account of account holder.", "operationId" : "post-payoutAccountHolder", "x-groupName" : "General", "x-sortIndex" : 3, @@ -441,8 +452,8 @@ "tags" : [ "General" ], - "summary" : "Make a refund of the existing transfer funds transfer.", - "description" : "This endpoint is used to refund funds transferred from one account to another. Both accounts must be in the same marketplace, but can have different account holders. ", + "summary" : "Refund a funds transfer", + "description" : "Refunds funds transferred from one account to another. Both accounts must be in the same platform, but can have different account holders. ", "operationId" : "post-refundFundsTransfer", "x-groupName" : "General", "x-sortIndex" : 5, @@ -549,8 +560,8 @@ "tags" : [ "General" ], - "summary" : "Refund all transactions of an account since the most recent payout.", - "description" : "This endpoint is used to refund all the transactions of an account which have taken place since the most recent payout. This request is on a per-account basis (as opposed to a per-payment basis), so only the portion of the payment which was made to the specified account will be refunded. The commission(s), fee(s), and payment(s) to other account(s), will remain in the accounts to which they were sent as designated by the original payment's split details.", + "summary" : "Refund all transactions of an account since the most recent payout", + "description" : "Refunds all the transactions of an account that have taken place since the most recent payout. This request is on a account basis (as opposed to a payment basis), so only the portion of the payment that was made to the specified account is refunded. The commissions, fees, and payments to other accounts remain in the accounts to which they were sent as designated by the original payment's split details.", "operationId" : "post-refundNotPaidOutTransfers", "x-groupName" : "General", "x-sortIndex" : 7, @@ -657,8 +668,8 @@ "tags" : [ "General" ], - "summary" : "Designate an account to be the beneficiary of a separate account and transfer the benefactor's current balance to the beneficiary.", - "description" : "This endpoint is used to define a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. Note that a series of benefactor/beneficiaries may not exceed four (4) beneficiaries and may not have a cycle in it.", + "summary" : "Designate a beneficiary account and transfer the benefactor's current balance", + "description" : "Defines a benefactor and a beneficiary relationship between two accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor account are transferred to the beneficiary account, and any further payments to the benefactor account are automatically sent to the beneficiary account. A series of benefactor/beneficiaries may not exceed four beneficiaries and may not have a cycle in it.", "operationId" : "post-setupBeneficiary", "x-groupName" : "General", "x-sortIndex" : 6, @@ -765,8 +776,8 @@ "tags" : [ "General" ], - "summary" : "Transfer funds from one platform account to another.", - "description" : "This endpoint is used to transfer funds from one account to another account. Both accounts must be in the same marketplace, but can have different account holders. The transfer must include a transfer code, which should be determined by the marketplace, in compliance with local regulations.", + "summary" : "Transfer funds between platform accounts", + "description" : "Transfers funds from one account to another account. Both accounts must be in the same platform, but can have different account holders. The transfer must include a transfer code, which should be determined by the platform, in compliance with local regulations.", "operationId" : "post-transferFunds", "x-groupName" : "General", "x-sortIndex" : 4, @@ -1128,7 +1139,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -1303,6 +1315,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -1503,8 +1519,7 @@ }, "required" : [ "accountHolderCode", - "accountCode", - "amount" + "accountCode" ] }, "PayoutAccountHolderResponse" : { @@ -1719,13 +1734,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -1992,6 +2008,45 @@ ] } }, + "post-debitAccountHolder-debit-account-holder" : { + "summary" : "Send a bank account direct debit", + "description" : "Example request to send a direct debit from a bank account", + "value" : { + "accountHolderCode" : "ACCOUNT_HOLDER_CODE", + "description" : "YOUR_DESCRIPTION", + "bankAccountUUID" : "000b81aa-ae7e-4492-aa7e-72b2129dce0c", + "amount" : { + "value" : 6200, + "currency" : "USD" + }, + "merchantAccount" : "YOUR_MERCHANT_ACCOUNT", + "splits" : [ + { + "amount" : { + "value" : 6000 + }, + "type" : "MarketPlace", + "account" : "8535516988037431", + "reference" : "YOUR_SPLIT_REFERENCE_1" + }, + { + "amount" : { + "value" : 200 + }, + "type" : "Commission", + "reference" : "YOUR_SPLIT_REFERENCE_2" + } + ] + } + }, + "post-debitAccountHolder-debit-account-holder-200" : { + "summary" : "Direct debit request sent", + "description" : "Example response for requesting a direct debit from a bank account", + "value" : { + "pspReference" : "8816480354727275", + "submittedAsync" : "false" + } + }, "post-payoutAccountHolder-oneOff" : { "summary" : "One-off payout", "value" : { diff --git a/json/HopService-v1.json b/json/HopService-v1.json index 312286c..a15d622 100644 --- a/json/HopService-v1.json +++ b/json/HopService-v1.json @@ -9,7 +9,8 @@ "version" : "1", "x-publicVersion" : true, "title" : "Adyen for Platforms: Hosted Onboarding", - "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). Then you can provide the link to your account holder so they can complete their onboarding.\n\n## Authentication\nTo connect to the Hosted onboarding API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use your credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v1/getOnboardingUrl\n```", + "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). You can provide these links to your account holders so that they can complete their onboarding.\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v1/getOnboardingUrl\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,8 +36,8 @@ "tags" : [ "Hosted Onboarding Page" ], - "summary" : "Get a link to a Adyen-hosted onboarding page.", - "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ", + "summary" : "Get a link to a Adyen-hosted onboarding page", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ", "operationId" : "post-getOnboardingUrl", "x-groupName" : "Hosted Onboarding Page", "x-sortIndex" : 1, @@ -53,6 +54,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlRequest" } @@ -63,6 +69,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlResponse" } @@ -128,7 +139,7 @@ "tags" : [ "PCI Compliance Questionnaire Page" ], - "summary" : "Get a link to a PCI compliance questionnaire.", + "summary" : "Get a link to a PCI compliance questionnaire", "description" : "Returns a link to a PCI compliance questionnaire that you can send to your account holder.\n > You should only use this endpoint if you have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners).", "operationId" : "post-getPciQuestionnaireUrl", "x-groupName" : "PCI Compliance Questionnaire Page", @@ -146,6 +157,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlRequest" } @@ -156,6 +172,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlResponse" } @@ -281,6 +302,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -587,6 +612,10 @@ "description" : "Indicates whether the page with the legal arrangements' details must be shown. Defaults to **true**.", "type" : "boolean" }, + "manualBankAccountPage" : { + "description" : "Indicates whether the page to manually add bank account' details must be shown. Defaults to **true**.", + "type" : "boolean" + }, "shareholderDetailsSummaryPage" : { "description" : "Indicates whether the page with the shareholders' details must be shown. Defaults to **true**.", "type" : "boolean" @@ -610,7 +639,44 @@ } }, "examples" : { - + "post-getOnboardingUrl-get-onboarding-url" : { + "summary" : "Get a hosted onboarding page link", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getOnboardingUrl-get-onboarding-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "9115677600500127", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/view/?token=" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url" : { + "summary" : "Get a PCI questionnaire link", + "description" : "Returns a link to an Adyen-hosted PCI compliance questionnaire that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "8315748692943050", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/pci/?token=" + } + } } } } \ No newline at end of file diff --git a/json/HopService-v5.json b/json/HopService-v5.json index 49578a0..8e3dc4b 100644 --- a/json/HopService-v5.json +++ b/json/HopService-v5.json @@ -9,7 +9,8 @@ "version" : "5", "x-publicVersion" : true, "title" : "Adyen for Platforms: Hosted Onboarding", - "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). Then you can provide the link to your account holder so they can complete their onboarding.\n\n## Authentication\nTo connect to the Hosted onboarding API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use your credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v5/getOnboardingUrl\n```", + "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). You can provide these links to your account holders so that they can complete their onboarding.\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v5/getOnboardingUrl\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,8 +36,8 @@ "tags" : [ "Hosted Onboarding Page" ], - "summary" : "Get a link to a Adyen-hosted onboarding page.", - "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ", + "summary" : "Get a link to a Adyen-hosted onboarding page", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ", "operationId" : "post-getOnboardingUrl", "x-groupName" : "Hosted Onboarding Page", "x-sortIndex" : 1, @@ -53,6 +54,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlRequest" } @@ -63,6 +69,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlResponse" } @@ -128,7 +139,7 @@ "tags" : [ "PCI Compliance Questionnaire Page" ], - "summary" : "Get a link to a PCI compliance questionnaire.", + "summary" : "Get a link to a PCI compliance questionnaire", "description" : "Returns a link to a PCI compliance questionnaire that you can send to your account holder.\n > You should only use this endpoint if you have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners).", "operationId" : "post-getPciQuestionnaireUrl", "x-groupName" : "PCI Compliance Questionnaire Page", @@ -146,6 +157,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlRequest" } @@ -156,6 +172,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlResponse" } @@ -281,6 +302,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -583,6 +608,10 @@ "description" : "Indicates whether the page with the legal arrangements' details must be shown. Defaults to **true**.", "type" : "boolean" }, + "manualBankAccountPage" : { + "description" : "Indicates whether the page to manually add bank account' details must be shown. Defaults to **true**.", + "type" : "boolean" + }, "shareholderDetailsSummaryPage" : { "description" : "Indicates whether the page with the shareholders' details must be shown. Defaults to **true**.", "type" : "boolean" @@ -606,7 +635,44 @@ } }, "examples" : { - + "post-getOnboardingUrl-get-onboarding-url" : { + "summary" : "Get a hosted onboarding page link", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getOnboardingUrl-get-onboarding-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "9115677600500127", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/view/?token=" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url" : { + "summary" : "Get a PCI questionnaire link", + "description" : "Returns a link to an Adyen-hosted PCI compliance questionnaire that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "8315748692943050", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/pci/?token=" + } + } } } } \ No newline at end of file diff --git a/json/HopService-v6.json b/json/HopService-v6.json index 65c6781..07d10e0 100644 --- a/json/HopService-v6.json +++ b/json/HopService-v6.json @@ -9,7 +9,8 @@ "version" : "6", "x-publicVersion" : true, "title" : "Adyen for Platforms: Hosted Onboarding", - "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). Then you can provide the link to your account holder so they can complete their onboarding.\n\n## Authentication\nTo connect to the Hosted onboarding API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use your credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v6/getOnboardingUrl\n```", + "description" : "The Hosted onboarding API provides endpoints that you can use to generate links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). You can provide these links to your account holders so that they can complete their onboarding.\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v6/getOnboardingUrl\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,8 +36,8 @@ "tags" : [ "Hosted Onboarding Page" ], - "summary" : "Get a link to a Adyen-hosted onboarding page.", - "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ", + "summary" : "Get a link to a Adyen-hosted onboarding page", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ", "operationId" : "post-getOnboardingUrl", "x-groupName" : "Hosted Onboarding Page", "x-sortIndex" : 1, @@ -53,6 +54,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlRequest" } @@ -63,6 +69,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-onboarding-url" : { + "$ref" : "#/components/examples/post-getOnboardingUrl-get-onboarding-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetOnboardingUrlResponse" } @@ -128,7 +139,7 @@ "tags" : [ "PCI Compliance Questionnaire Page" ], - "summary" : "Get a link to a PCI compliance questionnaire.", + "summary" : "Get a link to a PCI compliance questionnaire", "description" : "Returns a link to a PCI compliance questionnaire that you can send to your account holder.\n > You should only use this endpoint if you have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners).", "operationId" : "post-getPciQuestionnaireUrl", "x-groupName" : "PCI Compliance Questionnaire Page", @@ -146,6 +157,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlRequest" } @@ -156,6 +172,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "get-pci-questionnaire-url" : { + "$ref" : "#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetPciUrlResponse" } @@ -281,6 +302,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -502,10 +527,6 @@ "returnUrl" : { "description" : "The URL where the account holder will be redirected back to after they fill out the questionnaire, or if their session times out. Maximum length of 500 characters.", "type" : "string" - }, - "shopperLocale" : { - "description" : "The language to be used in the page, specified by a combination of a language and country code. For example, **pt-BR**. \n\nIf not specified in the request or if the language is not supported, the page uses the browser language. If the browser language is not supported, the page uses **en-US** by default.\n\nFor a list supported languages, refer to [Change the page language](https://docs.adyen.com/platforms/hosted-onboarding-page/customize-experience#change-page-language).", - "type" : "string" } }, "required" : [ @@ -614,7 +635,44 @@ } }, "examples" : { - + "post-getOnboardingUrl-get-onboarding-url" : { + "summary" : "Get a hosted onboarding page link", + "description" : "Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getOnboardingUrl-get-onboarding-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "9115677600500127", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/view/?token=" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url" : { + "summary" : "Get a PCI questionnaire link", + "description" : "Returns a link to an Adyen-hosted PCI compliance questionnaire that you can send to your account holder.", + "value" : { + "accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER", + "returnUrl" : "https://your.return-url.com/?submerchant=123" + } + }, + "post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200" : { + "summary" : "Hosted onboarding page link", + "description" : "Example response for requesting a hosted onboarding page link", + "value" : { + "invalidFields" : [ + ], + "pspReference" : "8315748692943050", + "resultCode" : "Success", + "redirectUrl" : "https://hop-test.adyen.com/hop/pci/?token=" + } + } } } } \ No newline at end of file diff --git a/json/LegalEntityService-v1.json b/json/LegalEntityService-v1.json new file mode 100644 index 0000000..92a9345 --- /dev/null +++ b/json/LegalEntityService-v1.json @@ -0,0 +1,2308 @@ +{ + "openapi" : "3.1.0", + "servers" : [ + { + "url" : "https://kyc-test.adyen.com/lem/v1" + } + ], + "info" : { + "version" : "1", + "x-publicVersion" : true, + "title" : "Legal Entity API", + "description" : "The Legal Entity API enables you to manage legal entities that contain information required for verification. \nFor every account holder, you need to create a legal entity for their organization and the individuals associated with their organization.\n## Authentication\nTo connect to the Legal Entity API, you must use the basic authentication credentials of your web service user. If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Use the web service user credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws12345@Scope.BalancePlatform_YourBalancePlatform\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Legal Entity API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://kyc-test.adyen.com/lem/v1/legalEntities\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the username and password to send requests to `https://kyc-live.adyen.com/lem/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-05-03T09:24:02Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "Legal entities", + "Transfer instruments", + "Business lines", + "Documents" + ], + "tags" : [ + { + "name" : "Legal entities" + }, + { + "name" : "Business lines" + }, + { + "name" : "Documents" + }, + { + "name" : "Transfer instruments" + } + ], + "paths" : { + "/businessLines" : { + "post" : { + "tags" : [ + "Business lines" + ], + "summary" : "Create a business line", + "description" : "Creates a business line. \n\nThis resource contains information about your user's line of business, including their industry and their source of funds. Adyen uses this information to verify your users as required by payment industry regulations. Adyen informs you of the verification results through webhooks or API responses.", + "x-addedInVersion" : "1", + "operationId" : "post-businessLines", + "x-groupName" : "Business lines", + "x-sortIndex" : 12, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "createBusinessLines" : { + "$ref" : "#/components/examples/post-businessLines-createBusinessLines" + } + }, + "schema" : { + "$ref" : "#/components/schemas/BusinessLineInfo" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "post-businessLines" : { + "$ref" : "#/components/examples/post-businessLines-post-businessLines-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/BusinessLine" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/businessLines/{id}" : { + "get" : { + "tags" : [ + "Business lines" + ], + "summary" : "Get a business line", + "description" : "Returns a business line.", + "x-addedInVersion" : "1", + "operationId" : "get-businessLines-id", + "x-groupName" : "Business lines", + "x-sortIndex" : 13, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the business line.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BusinessLine" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/documents" : { + "post" : { + "tags" : [ + "Documents" + ], + "summary" : "Upload a document for verification checks", + "description" : "Uploads a document for verification checks.\n\n Adyen uses the information from the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities) to run automated verification checks. If these checks fail, you will be notified to provide additional documents. Adyen uses the documents to validate the identity of the individual or organization legal entity, or the legal entity's bank account details.\n\n You should only upload documents when Adyen requests additional information for the legal entity. For more information, refer to [Onboard and verify account holders](https://docs.adyen.com/issuing/kyc-verification).", + "x-addedInVersion" : "1", + "operationId" : "post-documents", + "x-groupName" : "Documents", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Document" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/documents/{id}" : { + "delete" : { + "tags" : [ + "Documents" + ], + "summary" : "Delete a document", + "description" : "Deletes a document.", + "x-addedInVersion" : "1", + "operationId" : "delete-documents-id", + "x-groupName" : "Documents", + "x-sortIndex" : 7, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the document to be deleted.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VoidResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "get" : { + "tags" : [ + "Documents" + ], + "summary" : "Get a document", + "description" : "Returns a document.", + "x-addedInVersion" : "1", + "operationId" : "get-documents-id", + "x-groupName" : "Documents", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the document.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Documents" + ], + "summary" : "Update a document", + "description" : "Updates a document.", + "x-addedInVersion" : "1", + "operationId" : "patch-documents-id", + "x-groupName" : "Documents", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Document" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the document to be updated.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/legalEntities" : { + "post" : { + "tags" : [ + "Legal entities" + ], + "summary" : "Create a legal entity", + "description" : "Creates a legal entity. \n\nThis resource contains information about an individual or organization that will be onboarded in your balance platform. Adyen uses this information to perform verification checks as required by payment industry regulations. Adyen informs you of the verification results through webhooks or API responses. \n\nAfter the legal entity has passed the verification checks, you can issue a card to them. For more information, refer to [Onboard and verify account holders](https://docs.adyen.com/issuing/kyc-verification).", + "x-addedInVersion" : "1", + "operationId" : "post-legalEntities", + "x-groupName" : "Legal entities", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/LegalEntityInfo" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/LegalEntity" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/legalEntities/{id}" : { + "get" : { + "tags" : [ + "Legal entities" + ], + "summary" : "Get a legal entity", + "description" : "Returns a legal entity.", + "x-addedInVersion" : "1", + "operationId" : "get-legalEntities-id", + "x-groupName" : "Legal entities", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the legal entity.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/LegalEntity" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Legal entities" + ], + "summary" : "Update a legal entity", + "description" : "Updates a legal entity.\n\n >To update the `entityAssociations` array, you need to replace the entire array. For example, if the array has 3 entries and you want to remove 1 entry, you need to PATCH the resource with the remaining 2 entries.", + "x-addedInVersion" : "1", + "operationId" : "patch-legalEntities-id", + "x-groupName" : "Legal entities", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GenericEntityInfo" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the legal entity.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/LegalEntity" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/legalEntities/{id}/businessLines" : { + "get" : { + "tags" : [ + "Legal entities" + ], + "summary" : "Get all business lines under a legal entity", + "description" : "Returns the business lines owned by a legal entity.", + "x-addedInVersion" : "1", + "operationId" : "get-legalEntities-id-businessLines", + "x-groupName" : "Legal entities", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the legal entity", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BusinessLines" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/transferInstruments" : { + "post" : { + "tags" : [ + "Transfer instruments" + ], + "summary" : "Create a transfer instrument", + "description" : "Creates a transfer instrument. \n\nA transfer instrument is a bank account or other payment details that a legal entity owns. Adyen performs verification checks on the transfer instrument as required by payment industry regulations. We inform you of the verification results through webhooks or API responses.\n\nWhen the transfer instrument passes the verification checks, you can start sending funds from the balance platform to the transfer instrument (such as payouts).", + "x-addedInVersion" : "1", + "operationId" : "post-transferInstruments", + "x-groupName" : "Transfer instruments", + "x-sortIndex" : 8, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferInstrumentInfo" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferInstrument" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/transferInstruments/{id}" : { + "delete" : { + "tags" : [ + "Transfer instruments" + ], + "summary" : "Delete a transfer instrument", + "description" : "Deletes a transfer instrument.", + "x-addedInVersion" : "1", + "operationId" : "delete-transferInstruments-id", + "x-groupName" : "Transfer instruments", + "x-sortIndex" : 11, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the transfer instrument to be deleted.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VoidResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "get" : { + "tags" : [ + "Transfer instruments" + ], + "summary" : "Get a transfer instrument", + "description" : "Returns a transfer instrument.", + "x-addedInVersion" : "1", + "operationId" : "get-transferInstruments-id", + "x-groupName" : "Transfer instruments", + "x-sortIndex" : 9, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the transfer instrument.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferInstrument" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Transfer instruments" + ], + "summary" : "Update a transfer instrument", + "description" : "Updates a transfer instrument.", + "x-addedInVersion" : "1", + "operationId" : "patch-transferInstruments-id", + "x-groupName" : "Transfer instruments", + "x-sortIndex" : 10, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferInstrumentInfo" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the transfer instrument.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferInstrument" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + } + }, + "components" : { + "schemas" : { + "Address" : { + "properties" : { + "city" : { + "description" : "The name of the city. Required if `stateOrProvince` is provided.\n\nIf you specify the city, you must also send `postalCode` and `street`.", + "type" : "string" + }, + "country" : { + "description" : "The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code.", + "type" : "string" + }, + "postalCode" : { + "description" : "Postal code. Required if `stateOrProvince` and/or `city` is provided.", + "type" : "string" + }, + "stateOrProvince" : { + "description" : "The two-letter ISO 3166-2 state or province code. For example, **CA** in the US. \n\nIf you specify the state or province, you must also send `city`, `postalCode`, and `street`.", + "type" : "string" + }, + "street" : { + "description" : "The name of the street, and the house or building number. Required if `stateOrProvince` and/or `city` is provided.", + "type" : "string" + }, + "street2" : { + "description" : "The apartment, unit, or suite number.", + "type" : "string" + } + }, + "required" : [ + "country" + ] + }, + "Attachment" : { + "properties" : { + "content" : { + "description" : "The document in Base64-encoded string format.", + "format" : "byte", + "type" : "string" + }, + "contentType" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The file format.\n\n Possible values: **application/pdf**, **image/jpg**, **image/jpeg**, **image/png**. ", + "type" : "string" + }, + "filename" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The name of the file including the file extension.", + "type" : "string" + }, + "pageType" : { + "description" : "Specifies which side of the ID card is uploaded.\n\n* When `type` is **driversLicense**, set this to **front** or **back**.\n\n* When omitted, we infer the page number based on the order of attachments.", + "type" : "string" + } + }, + "required" : [ + "content" + ] + }, + "BankAccountInfo" : { + "properties" : { + "accountNumber" : { + "description" : "The bank account number (without separators).\n\n When this is provided, the `bankCode` and `branchCode` are also required.", + "type" : "string" + }, + "accountType" : { + "description" : "The type of bank account. Only applies to bank accounts held in the US. \n\nPossible values: **checking**, **savings**.", + "type" : "string" + }, + "bankBicSwift" : { + "description" : "The bank's BIC or SWIFT code.", + "type" : "string" + }, + "bankCity" : { + "description" : "The city where the bank is located.", + "type" : "string" + }, + "bankCode" : { + "description" : "The bank code of the banking institution with which the bank account is registered.\n\nRequired when you provide an `accountNumber`.", + "type" : "string" + }, + "bankName" : { + "description" : "The name of the banking institution where the bank account is held.", + "type" : "string" + }, + "branchCode" : { + "description" : "The branch code of the branch under which the bank account is registered.\n\nRequired when you provide an `accountNumber`.\n\n In the following countries, this value corresponds to:\n\n\n* United States: routing number\n* United Kingdom: sort code\n* Germany: Bankleitzahl", + "type" : "string" + }, + "checkCode" : { + "description" : "The check code of the bank account.", + "type" : "string" + }, + "countryCode" : { + "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the bank account is registered. For example, **NL**.", + "type" : "string" + }, + "currencyCode" : { + "description" : "The account's three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). For example, **EUR**.", + "type" : "string" + }, + "iban" : { + "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard.", + "type" : "string" + }, + "requestedVerificationCode" : { + "type" : "string" + } + }, + "required" : [ + "countryCode", + "currencyCode" + ] + }, + "BirthData" : { + "properties" : { + "dateOfBirth" : { + "description" : "The individual's date of birth, in YYYY-MM-DD format.", + "type" : "string" + } + } + }, + "BusinessLine" : { + "properties" : { + "capability" : { + "description" : "The capability for which you are creating the business line. For example, **receivePayments**.", + "type" : "string" + }, + "id" : { + "description" : "The unique identifier of the business line.", + "readOnly" : true, + "type" : "string" + }, + "industryCode" : { + "description" : "A code that represents the type of goods and services that your user is offering. For example, **4431A** for computer software stores. ", + "type" : "string" + }, + "legalEntityId" : { + "description" : "Unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id) that owns the business line.", + "type" : "string" + }, + "salesChannels" : { + "description" : "A list of channels where goods or services are sold. You cannot combine point of sale and ecommerce in one business line.\n\n Possible values and combinations:\n\n - For point of sale: **pos** and **posMoto**\n\n- For ecommerce: **eCommerce** and **ecomMoto**\n\n- For Pay by Link: **payByLink**", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "sourceOfFunds" : { + "description" : "Contains information about the source of your user's funds. Required for some capabilities, for example, **issueCard**.", + "$ref" : "#/components/schemas/SourceOfFunds" + }, + "webData" : { + "description" : "List of website URLs where your user's goods or services are sold. When this is required for a capability but your user does not have an online presence, provide the reason in the `webDataExemption` object.", + "items" : { + "$ref" : "#/components/schemas/WebData" + }, + "type" : "array" + }, + "webDataExemption" : { + "description" : "The reason why the web data is not provided.", + "$ref" : "#/components/schemas/WebDataExemption" + } + }, + "required" : [ + "capability", + "industryCode", + "legalEntityId", + "id" + ] + }, + "BusinessLineInfo" : { + "properties" : { + "capability" : { + "description" : "The capability for which you are creating the business line. For example, **receivePayments**.", + "type" : "string" + }, + "industryCode" : { + "description" : "A code that represents the type of goods and services that your user is offering. For example, **4431A** for computer software stores. ", + "type" : "string" + }, + "legalEntityId" : { + "description" : "Unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id) that owns the business line.", + "type" : "string" + }, + "salesChannels" : { + "description" : "A list of channels where goods or services are sold. You cannot combine point of sale and ecommerce in one business line.\n\n Possible values and combinations:\n\n - For point of sale: **pos** and **posMoto**\n\n- For ecommerce: **eCommerce** and **ecomMoto**\n\n- For Pay by Link: **payByLink**", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "sourceOfFunds" : { + "description" : "Contains information about the source of your user's funds. Required for some capabilities, for example, **issueCard**.", + "$ref" : "#/components/schemas/SourceOfFunds" + }, + "webData" : { + "description" : "List of website URLs where your user's goods or services are sold. When this is required for a capability but your user does not have an online presence, provide the reason in the `webDataExemption` object.", + "items" : { + "$ref" : "#/components/schemas/WebData" + }, + "type" : "array" + }, + "webDataExemption" : { + "description" : "The reason why the web data is not provided.", + "$ref" : "#/components/schemas/WebDataExemption" + } + }, + "required" : [ + "capability", + "industryCode", + "legalEntityId" + ] + }, + "BusinessLines" : { + "properties" : { + "businessLines" : { + "description" : "List of business lines.", + "items" : { + "$ref" : "#/components/schemas/BusinessLine" + }, + "type" : "array" + } + }, + "required" : [ + "businessLines" + ] + }, + "Document" : { + "properties" : { + "attachment" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "x-deprecatedMessage" : "Use the `attachments` array instead.", + "description" : "Object that contains the document.", + "$ref" : "#/components/schemas/Attachment" + }, + "attachments" : { + "description" : "Array that contains the document. The array supports multiple attachments for uploading different sides or pages of a document.", + "items" : { + "$ref" : "#/components/schemas/Attachment" + }, + "type" : "array" + }, + "description" : { + "description" : "Your description for the document.", + "type" : "string" + }, + "expiryDate" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The expiry date of the document, in YYYY-MM-DD format.", + "type" : "string" + }, + "fileName" : { + "description" : "The filename of the document.", + "type" : "string" + }, + "id" : { + "description" : "The unique identifier of the document.", + "readOnly" : true, + "type" : "string" + }, + "issuerCountry" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the document was issued. For example, **US**.", + "type" : "string" + }, + "issuerState" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The state or province where the document was issued (AU only).", + "type" : "string" + }, + "number" : { + "description" : "The number in the document.", + "type" : "string" + }, + "owner" : { + "description" : "Contains information about the resource that owns the document.", + "$ref" : "#/components/schemas/Entity" + }, + "type" : { + "description" : "Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity `type`.\n\n* When providing ID numbers for individuals, the values can be **driversLicense**, **identityCard**, **nationalIdNumber**, or **passport**.\n\nWhen uploading documents:\n* For `type` **organization**, the values can be **proofOfAddress**, **registrationDocument**, or **taxDocument**. \n\n* For `type` **individual**, the values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**, or **proofOfResidency**.\n\n* Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).", + "enum" : [ + "bankStatement", + "driversLicense", + "identityCard", + "nationalIdNumber", + "passport", + "proofOfAddress", + "proofOfNationalIdNumber", + "proofOfResidency", + "registrationDocument", + "taxDocument" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "description", + "owner", + "attachments", + "id" + ] + }, + "Entity" : { + "properties" : { + "id" : { + "description" : "Unique identifier of the resource that owns the document. Depending on the entity `type`, this value can be the unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) or the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).", + "type" : "string" + }, + "type" : { + "description" : "Type of resource that owns the document.\n\nPossible values: **legalEntity**, **bankAccount**.", + "type" : "string" + } + }, + "required" : [ + "id", + "type" + ] + }, + "EntityReference" : { + "properties" : { + "id" : { + "description" : "The unique identifier of the resource.", + "type" : "string" + } + } + }, + "GenericEntityInfo" : { + "properties" : { + "entityAssociations" : { + "description" : "List of legal entities associated with the current legal entity.\nFor example, ultimate business owners associated with an organization through ownership or control, or as signatories. ", + "items" : { + "$ref" : "#/components/schemas/LegalEntityAssociation" + }, + "type" : "array" + }, + "individual" : { + "description" : "Information about the individual. Required if `type` is **individual**.", + "$ref" : "#/components/schemas/Individual" + }, + "organization" : { + "description" : "Information about the organization. Required if `type` is **organization**.", + "$ref" : "#/components/schemas/Organization" + } + } + }, + "IdentificationData" : { + "properties" : { + "expiryDate" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The expiry date of the document, in YYYY-MM-DD format.", + "type" : "string" + }, + "issuerCountry" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the document was issued. For example, **US**.", + "type" : "string" + }, + "issuerState" : { + "description" : "The state or province where the document was issued (AU only).", + "type" : "string" + }, + "nationalIdExempt" : { + "description" : "Applies only to individuals in the US. Set to **true** if the individual does not have an SSN. To verify their identity, Adyen will require them to [upload an ID document](https://docs.adyen.com/issuing/kyc-verification#upload-documents).", + "type" : "boolean" + }, + "number" : { + "description" : "The number in the document.", + "type" : "string" + }, + "type" : { + "description" : "Type of document, used when providing an ID number or uploading a document. The possible values depend on the legal entity `type`.\n\n* When providing ID numbers for individuals, the values can be **driversLicense**, **identityCard**, **nationalIdNumber**, or **passport**.\n\nWhen uploading documents:\n* For `type` **organization**, the values can be **proofOfAddress**, **registrationDocument**, or **taxDocument**. \n\n* For `type` **individual**, the values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**, or **proofOfResidency**.\n\n* Use **bankStatement** to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).", + "enum" : [ + "bankStatement", + "driversLicense", + "identityCard", + "nationalIdNumber", + "passport", + "proofOfAddress", + "proofOfNationalIdNumber", + "proofOfResidency", + "registrationDocument", + "taxDocument" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "Individual" : { + "properties" : { + "birthData" : { + "description" : "The individual's birth information.", + "$ref" : "#/components/schemas/BirthData" + }, + "email" : { + "description" : "The email address of the legal entity.", + "type" : "string" + }, + "identificationData" : { + "description" : "Information about the individual's identification document.", + "$ref" : "#/components/schemas/IdentificationData" + }, + "name" : { + "description" : "The individual's name.", + "$ref" : "#/components/schemas/Name" + }, + "nationality" : { + "description" : "The individual's nationality.", + "type" : "string" + }, + "phone" : { + "description" : "The phone number of the legal entity.", + "$ref" : "#/components/schemas/PhoneNumber" + }, + "residentialAddress" : { + "description" : "The residential address of the individual.", + "$ref" : "#/components/schemas/Address" + }, + "webData" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The website and app URL of the legal entity.", + "$ref" : "#/components/schemas/WebData" + } + }, + "required" : [ + "name", + "residentialAddress" + ] + }, + "LegalEntity" : { + "properties" : { + "documents" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "List of documents uploaded for the legal entity.", + "items" : { + "$ref" : "#/components/schemas/EntityReference" + }, + "type" : "array" + }, + "entityAssociations" : { + "description" : "List of legal entities associated with the current legal entity.\nFor example, ultimate business owners associated with an organization through ownership or control, or as signatories. ", + "items" : { + "$ref" : "#/components/schemas/LegalEntityAssociation" + }, + "type" : "array" + }, + "id" : { + "description" : "The unique identifier of the legal entity.", + "readOnly" : true, + "type" : "string" + }, + "individual" : { + "description" : "Information about the individual. Required if `type` is **individual**.", + "$ref" : "#/components/schemas/Individual" + }, + "organization" : { + "description" : "Information about the organization. Required if `type` is **organization**.", + "$ref" : "#/components/schemas/Organization" + }, + "reference" : { + "description" : "Your reference for the legal entity, maximum 150 characters.", + "type" : "string" + }, + "transferInstruments" : { + "description" : "List of transfer instruments owned by the legal entity.", + "items" : { + "$ref" : "#/components/schemas/EntityReference" + }, + "type" : "array" + }, + "type" : { + "description" : "The type of legal entity.\n\n Possible values: **individual** or **organization**", + "enum" : [ + "individual", + "organization" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "id" + ] + }, + "LegalEntityAssociation" : { + "properties" : { + "jobTitle" : { + "description" : "The individual's job title if the `type` is **uboThroughControl** or **signatory**.", + "type" : "string" + }, + "legalEntityId" : { + "description" : "The unique identifier of the associated [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id).", + "type" : "string" + }, + "type" : { + "description" : "Defines the relationship of the legal entity to the current legal entity. \n\nFor example, **uboThroughOwnership**, **uboThroughControl**, or **signatory**. ", + "enum" : [ + "signatory", + "uboThroughControl", + "uboThroughOwnership" + ], + "type" : "string" + } + }, + "required" : [ + "legalEntityId", + "type" + ] + }, + "LegalEntityInfo" : { + "properties" : { + "entityAssociations" : { + "description" : "List of legal entities associated with the current legal entity.\nFor example, ultimate business owners associated with an organization through ownership or control, or as signatories. ", + "items" : { + "$ref" : "#/components/schemas/LegalEntityAssociation" + }, + "type" : "array" + }, + "individual" : { + "description" : "Information about the individual. Required if `type` is **individual**.", + "$ref" : "#/components/schemas/Individual" + }, + "organization" : { + "description" : "Information about the organization. Required if `type` is **organization**.", + "$ref" : "#/components/schemas/Organization" + }, + "reference" : { + "description" : "Your reference for the legal entity, maximum 150 characters.", + "type" : "string" + }, + "type" : { + "description" : "The type of legal entity.\n\n Possible values: **individual** or **organization**", + "enum" : [ + "individual", + "organization" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "Name" : { + "properties" : { + "firstName" : { + "description" : "The individual's first name.", + "type" : "string" + }, + "infix" : { + "description" : "The infix in the individual's name, if any.", + "type" : "string" + }, + "lastName" : { + "description" : "The individual's last name.", + "type" : "string" + } + }, + "required" : [ + "firstName", + "lastName" + ] + }, + "Organization" : { + "properties" : { + "description" : { + "description" : "Your description for the organization.", + "type" : "string" + }, + "doingBusinessAs" : { + "description" : "The organization's registered name, if different from the legal name.", + "type" : "string" + }, + "email" : { + "description" : "The email address of the legal entity.", + "type" : "string" + }, + "legalName" : { + "description" : "The organization's legal name.", + "type" : "string" + }, + "phone" : { + "description" : "The phone number of the legal entity.", + "$ref" : "#/components/schemas/PhoneNumber" + }, + "principalPlaceOfBusiness" : { + "description" : "The address where the organization operates from. Provide this if the principal place of business is different from the `registeredAddress`.", + "$ref" : "#/components/schemas/Address" + }, + "registeredAddress" : { + "description" : "The address of the organization registered at their registrar (such as the Chamber of Commerce).", + "$ref" : "#/components/schemas/Address" + }, + "registrationNumber" : { + "description" : "The organization's registration number.", + "type" : "string" + }, + "stockData" : { + "description" : "Information about the organization's publicly traded stock. Provide this object only if `type` is **listedPublicCompany**.", + "$ref" : "#/components/schemas/StockData" + }, + "taxExempt" : { + "description" : "Indicates whether the legal entity is exempt from tax. Defaults to **false**. When **true**, the `taxIdAbsenceReason` must be provided.", + "type" : "boolean" + }, + "taxId" : { + "description" : "The organization's tax identifier.", + "type" : "string" + }, + "taxIdAbsenceReason" : { + "description" : "The reason the organization has not provided a tax identifier.\n\nPossible values: **industryExemption**, **belowTaxThreshold**.", + "enum" : [ + "industryExemption", + "belowTaxThreshold" + ], + "type" : "string" + }, + "type" : { + "description" : "Type of organization. \n\nPossible values: **associationIncorporated**, **governmentalOrganization**, **listedPublicCompany**,**nonProfit**, **partnershipIncorporated**, **privateCompany**.", + "enum" : [ + "associationIncorporated", + "governmentalOrganization", + "listedPublicCompany", + "nonProfit", + "partnershipIncorporated", + "privateCompany" + ], + "type" : "string" + }, + "webData" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "The website and app URL of the legal entity.", + "$ref" : "#/components/schemas/WebData" + } + }, + "required" : [ + "legalName", + "type", + "registeredAddress" + ] + }, + "PhoneNumber" : { + "properties" : { + "countryCode" : { + "description" : "The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code. For example, **US** or **NL**.", + "type" : "string" + }, + "number" : { + "description" : "The phone number.", + "type" : "string" + }, + "type" : { + "description" : "The type of phone number.\n Possible values: **mobile**, **landline**, **sip**, **fax.** ", + "type" : "string" + } + }, + "required" : [ + "type", + "number" + ] + }, + "RecurringDetail" : { + "properties" : { + "merchantAccount" : { + "description" : "The merchant account used when the payment details were stored.", + "type" : "string" + }, + "reference" : { + "description" : "The `recurringDetailReference` returned in the response when the payment details were stored.", + "type" : "string" + }, + "shopperReference" : { + "description" : "The unique identifier used when the payment details were stored.", + "type" : "string" + } + } + }, + "ServiceError" : { + "properties" : { + "errorCode" : { + "description" : "The error code mapped to the error message.", + "type" : "string" + }, + "errorType" : { + "description" : "The category of the error.", + "type" : "string" + }, + "message" : { + "description" : "A short explanation of the issue.", + "type" : "string" + }, + "pspReference" : { + "description" : "The PSP reference of the payment.", + "type" : "string" + }, + "status" : { + "description" : "The HTTP response status.", + "format" : "int32", + "type" : "integer" + } + } + }, + "SourceOfFunds" : { + "properties" : { + "acquiringBusinessLineId" : { + "description" : "The unique identifier of the business line that will be the source of funds.This must be a business line for a **receivePayments** or **receiveFromPlatformPayments** capability. Required when `adyenProcessedFunds` is **true**.", + "type" : "string" + }, + "adyenProcessedFunds" : { + "description" : "Indicates whether the funds are coming from transactions processed by Adyen.\n\n - If **true**, the `acquiringBusinessLineId` is required.\n\n - If **false**, a `description` is required.", + "type" : "boolean" + }, + "description" : { + "description" : "Text describing the source of funds. For example, for `type` **business**, provide a description of the business. Required when `adyenProcessedFunds` is **false**.", + "type" : "string" + }, + "type" : { + "description" : "The type of the source of funds. Possible value: **business**.", + "enum" : [ + "business" + ], + "type" : "string" + } + } + }, + "StockData" : { + "properties" : { + "marketIdentifier" : { + "description" : "The four-digit [Market Identifier Code](https://en.wikipedia.org/wiki/Market_Identifier_Code) of the stock market where the organization's stocks are traded.", + "type" : "string" + }, + "stockNumber" : { + "description" : "The 12-digit International Securities Identification Number (ISIN) of the company, without dashes (-).", + "type" : "string" + }, + "tickerSymbol" : { + "description" : "The stock ticker symbol.", + "type" : "string" + } + } + }, + "TransferInstrument" : { + "properties" : { + "bankAccount" : { + "description" : "Contains information about the legal entity's bank account. Required when `type` is **bankAccount**.", + "$ref" : "#/components/schemas/BankAccountInfo" + }, + "documents" : { + "deprecated" : true, + "x-deprecatedInVersion" : "1", + "description" : "List of documents uploaded for the transfer instrument.", + "items" : { + "$ref" : "#/components/schemas/EntityReference" + }, + "type" : "array" + }, + "id" : { + "description" : "The unique identifier of the transfer instrument.", + "readOnly" : true, + "type" : "string" + }, + "legalEntityId" : { + "description" : "The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) that owns the transfer instrument.", + "type" : "string" + }, + "recurringDetail" : { + "description" : "Contains information about the legal entity's previously stored payment details. Required when `type` is **recurringDetail**.", + "$ref" : "#/components/schemas/RecurringDetail" + }, + "reference" : { + "description" : "The reference to the supporting entity that is this transfer instrument", + "type" : "string" + }, + "type" : { + "description" : "The type of transfer instrument.\n\nPossible values: **bankAccount**, **recurringDetail**.", + "type" : "string" + } + }, + "required" : [ + "legalEntityId", + "type", + "id" + ] + }, + "TransferInstrumentInfo" : { + "properties" : { + "bankAccount" : { + "description" : "Contains information about the legal entity's bank account. Required when `type` is **bankAccount**.", + "$ref" : "#/components/schemas/BankAccountInfo" + }, + "legalEntityId" : { + "description" : "The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) that owns the transfer instrument.", + "type" : "string" + }, + "recurringDetail" : { + "description" : "Contains information about the legal entity's previously stored payment details. Required when `type` is **recurringDetail**.", + "$ref" : "#/components/schemas/RecurringDetail" + }, + "reference" : { + "description" : "The reference to the supporting entity that is this transfer instrument", + "type" : "string" + }, + "type" : { + "description" : "The type of transfer instrument.\n\nPossible values: **bankAccount**, **recurringDetail**.", + "type" : "string" + } + }, + "required" : [ + "legalEntityId", + "type" + ] + }, + "VoidResponse" : { + + }, + "WebData" : { + "properties" : { + "webAddress" : { + "description" : "The URL of the website.", + "type" : "string" + } + } + }, + "WebDataExemption" : { + "properties" : { + "reason" : { + "description" : "The reason why the web data was not provided. Possible value: **noOnlinePresence**.", + "enum" : [ + "noOnlinePresence" + ], + "type" : "string" + } + } + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "examples" : { + "post-businessLines-createBusinessLines" : { + "summary" : "Create a business line for receiving payments", + "description" : "Example request for receiving payments", + "value" : { + "capability" : "receivePayments", + "industryCode" : "55", + "webData" : [ + { + "webAddress" : "https://www.adyen.com" + } + ], + "legalEntityId" : "LE322KT223222D5FJ7THR293F", + "sourceOfFunds" : { + "type" : "business", + "adyenProcessedFunds" : "false", + "description" : "Funds from my flower shop business" + } + } + }, + "post-businessLines-post-businessLines-200" : { + "summary" : "Example response for creating a business line", + "value" : { + "capability" : "receivePayments", + "industryCode" : "55", + "legalEntityId" : "LE322KH223222D5FJHXVQBW3Q", + "sourceOfFunds" : { + "adyenProcessedFunds" : "false", + "description" : "Funds from my flower shop business", + "type" : "business" + }, + "webData" : [ + { + "webAddress" : "https://www.adyen.com" + } + ], + "id" : "SE322JV223222D5FKLGQPC2H5" + } + } + } + } +} \ No newline at end of file diff --git a/json/ManagementNotificationService-v1.json b/json/ManagementNotificationService-v1.json new file mode 100644 index 0000000..08b76d2 --- /dev/null +++ b/json/ManagementNotificationService-v1.json @@ -0,0 +1,176 @@ +{ + "openapi" : "3.1.0", + "info" : { + "version" : "1", + "x-publicVersion" : true, + "title" : "Management Notification Webhooks", + "description" : "Adyen sends notifications through webhooks to inform your system about events that happen with your Adyen company and merchant accounts, stores, payment terminals, and payment methods.\n\nWhen an event occurs, Adyen makes an HTTP POST request to a URL on your server and includes the details of the event in the request body.\n\nYou can use our webhooks to build your implementation.\n\nRefer to [Notification webhooks](https://docs.adyen.com/development-resources/webhooks) for more information.", + "x-timestamp" : "2022-05-10T19:08:19Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "Payment method" + ], + "tags" : [ + ], + "x-staticResponse" : "response.json", + "webhooks" : { + "paymentMethod.created" : { + "post" : { + "tags" : [ + "Payment method" + ], + "summary" : "Payment method created", + "description" : "Adyen sends this webhook as soon as the request to [add a payment method](https://docs.adyen.com/api-explorer/#/ManagementService/latest/post/merchants/{id}/paymentMethodSettings) has been completed.", + "operationId" : "post-paymentMethod.created", + "x-groupName" : "Payment method", + "x-sortIndex" : 1, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "paymentMethod.created" : { + "$ref" : "#/components/examples/post-paymentMethod.created-paymentMethod.created" + } + }, + "schema" : { + "$ref" : "#/components/schemas/NotificationDataMessage" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "paymentMethod.created" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, + "schema" : { + "$ref" : "#/components/schemas/PaymentMethodNotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + } + }, + "components" : { + "schemas" : { + "MidServiceNotificationData" : { + "properties" : { + "id" : { + "description" : "The identifier of the resource.", + "type" : "string" + }, + "merchantId" : { + "description" : "The identifier of the merchant account.", + "type" : "string" + }, + "result" : { + "description" : "The result of the request to create a payment method.", + "type" : "string" + }, + "storeId" : { + "description" : "The identifier of the [store](https://docs.adyen.com/api-explorer/#/ManagementService/latest/post/merchants/{id}/paymentMethodSettings__reqParam_storeId), if any.", + "type" : "string" + }, + "type" : { + "description" : "Payment method [variant](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api).", + "type" : "string" + } + }, + "required" : [ + "result", + "merchantId", + "id", + "type" + ] + }, + "NotificationDataMessage" : { + "properties" : { + "createdAt" : { + "description" : "Timestamp for when the webhook was created.", + "format" : "date-time", + "type" : "string" + }, + "data" : { + "description" : "Contains event details.", + "$ref" : "#/components/schemas/MidServiceNotificationData" + }, + "environment" : { + "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.", + "type" : "string" + }, + "type" : { + "description" : "Type of notification.", + "type" : "string" + } + }, + "required" : [ + "type", + "environment", + "createdAt", + "data" + ] + }, + "PaymentMethodNotificationResponse" : { + "properties" : { + "notificationResponse" : { + "description" : "Respond with **HTTP 200 OK** and `[accepted]` in the response body to [accept the webhook](https://docs.adyen.com/development-resources/webhooks#accept-notifications).", + "type" : "string" + } + } + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "examples" : { + "WebhookAck" : { + "summary" : "Acknowledge Webhook", + "value" : { + "notificationResponse" : "[accepted]" + } + }, + "post-paymentMethod.created-paymentMethod.created" : { + "summary" : "Payment method Visa created", + "value" : { + "createdAt" : "2022-01-24T14:59:11+01:00", + "data" : { + "id" : "PM3224R223224K5FH4M2K9B86", + "merchantId" : "MERCHANT_ACCOUNT", + "result" : "SUCCESS", + "storeId" : "ST322LJ223223K5F4SQNR9XL5", + "type" : "visa" + }, + "environment" : "test", + "type" : "paymentMethod.created" + } + } + } + } +} \ No newline at end of file diff --git a/json/ManagementService-v1.json b/json/ManagementService-v1.json index 2608cde..270366e 100644 --- a/json/ManagementService-v1.json +++ b/json/ManagementService-v1.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Management API", "description" : "Configure and manage your Adyen company and merchant accounts, stores, and payment terminals.\n## Authentication\nEach request to the Management API must be signed with an API key. [Generate your API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key) in the Customer Area and then set this key to the `X-API-Key` header value.\n\nTo access the live endpoints, you need to generate a new API key in your live Customer Area.\n## Versioning\n\nManagement API handles versioning as part of the endpoint URL. For example, to send a request to version 1 of the `/companies/{companyId}/webhooks` endpoint, use:\n\n```text\nhttps://management-test.adyen.com/v1/companies/{companyId}/webhooks\n```", + "x-timestamp" : "2022-05-06T09:18:33Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -23,6 +24,7 @@ "Account - store level", "Users - company level", "Users - merchant level", + "My API credential", "API credentials - company level", "API credentials - merchant level", "API key - company level", @@ -33,17 +35,16 @@ "Allowed origins - merchant level", "Webhooks - company level", "Webhooks - merchant level", + "Payment methods - merchant level", "Terminals - terminal level", + "Terminal actions - company level", + "Terminal actions - terminal level", "Terminal orders - company level", "Terminal orders - merchant level", "Terminal settings - company level", "Terminal settings - merchant level", "Terminal settings - store level", - "Terminal settings - terminal level", - "Terminal actions - company level", - "Terminal actions - terminal level", - "Payment methods - merchant level", - "My API credential" + "Terminal settings - terminal level" ], "tags" : [ { @@ -172,6 +173,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-companies-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/ListCompanyResponse" } @@ -267,6 +273,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-companies-companyId-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/Company" } @@ -622,6 +633,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-companies-companyId-apiCredentials-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/ListCompanyApiCredentialsResponse" } @@ -1803,6 +1819,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-companies-companyId-merchants-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/ListMerchantResponse" } @@ -5195,6 +5216,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-merchants-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/ListMerchantResponse" } @@ -5258,14 +5284,14 @@ } } }, - "/merchants/{merchantId}" : { + "/merchants/{id}" : { "get" : { "tags" : [ "Account - merchant level" ], "summary" : "Get a merchant account", "description" : "Returns the merchant account specified in the path. Your API credential must have access to the merchant account.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Account read", - "operationId" : "get-merchants-merchantId", + "operationId" : "get-merchants-id", "x-groupName" : "Account - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5281,7 +5307,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5356,14 +5382,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials" : { + "/merchants/{id}/apiCredentials" : { "get" : { "tags" : [ "API credentials - merchant level" ], "summary" : "Get a list of API credentials", "description" : "Returns the list of [API credentials](https://docs.adyen.com/development-resources/api-credentials) for the merchant account. The list is grouped into pages as defined by the query parameters.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "get-merchants-merchantId-apiCredentials", + "operationId" : "get-merchants-id-apiCredentials", "x-groupName" : "API credentials - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5379,7 +5405,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5478,8 +5504,8 @@ "API credentials - merchant level" ], "summary" : "Create an API credential", - "description" : "Creates an [API credential](https://docs.adyen.com/development-resources/api-credentials) for the company account identified in the path. In the request, you can specify the roles and allowed origins for the new API credential.\n\nThe response includes the:\n* [API key](https://docs.adyen.com/development-resources/api-authentication#api-key-authentication): used for API request authentication.\n* [Client key](https://docs.adyen.com/development-resources/client-side-authentication#how-it-works): public key used for client-side authentication.\n* [Username and password](https://docs.adyen.com/development-resources/api-authentication#using-basic-authentication): used for basic authentication.\n\n> Make sure you store the API key securely in your system. You won't be able to retrieve it later.\n\nIf your API key is lost or compromised, you need to [generate a new API key](https://docs.adyen.com/api-explorer/#/ManagementService/v1/post/merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateApiKey).\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "post-merchants-merchantId-apiCredentials", + "description" : "Creates an [API credential](https://docs.adyen.com/development-resources/api-credentials) for the company account identified in the path. In the request, you can specify the roles and allowed origins for the new API credential.\n\nThe response includes the:\n* [API key](https://docs.adyen.com/development-resources/api-authentication#api-key-authentication): used for API request authentication.\n* [Client key](https://docs.adyen.com/development-resources/client-side-authentication#how-it-works): public key used for client-side authentication.\n* [Username and password](https://docs.adyen.com/development-resources/api-authentication#using-basic-authentication): used for basic authentication.\n\n> Make sure you store the API key securely in your system. You won't be able to retrieve it later.\n\nIf your API key is lost or compromised, you need to [generate a new API key](https://docs.adyen.com/api-explorer/#/ManagementService/v1/post/merchants/{id}/apiCredentials/{apiCredentialId}/generateApiKey).\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", + "operationId" : "post-merchants-id-apiCredentials", "x-groupName" : "API credentials - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5504,7 +5530,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5579,14 +5605,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials/{apiCredentialId}" : { + "/merchants/{id}/apiCredentials/{apiCredentialId}" : { "get" : { "tags" : [ "API credentials - merchant level" ], "summary" : "Get an API credential", "description" : "Returns the [API credential](https://docs.adyen.com/development-resources/api-credentials) identified in the path.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "get-merchants-merchantId-apiCredentials-apiCredentialId", + "operationId" : "get-merchants-id-apiCredentials-apiCredentialId", "x-groupName" : "API credentials - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5602,7 +5628,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5691,7 +5717,7 @@ ], "summary" : "Update an API credential", "description" : "Changes the API credential's roles, or allowed origins. The request has the new values for the fields you want to change. The response contains the full updated API credential, including the new values from the request. \n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "patch-merchants-merchantId-apiCredentials-apiCredentialId", + "operationId" : "patch-merchants-id-apiCredentials-apiCredentialId", "x-groupName" : "API credentials - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5716,7 +5742,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5800,14 +5826,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials/{apiCredentialId}/allowedOrigins" : { + "/merchants/{id}/apiCredentials/{apiCredentialId}/allowedOrigins" : { "get" : { "tags" : [ "Allowed origins - merchant level" ], "summary" : "Get a list of allowed origins", "description" : "Returns the list of [allowed origins](https://docs.adyen.com/development-resources/client-side-authentication#allowed-origins) for the API credential identified in the path.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "get-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins", + "operationId" : "get-merchants-id-apiCredentials-apiCredentialId-allowedOrigins", "x-groupName" : "Allowed origins - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5823,7 +5849,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -5912,7 +5938,7 @@ ], "summary" : "Create an allowed origin", "description" : "Adds a new [allowed origin](https://docs.adyen.com/development-resources/client-side-authentication#allowed-origins) to the API credential's list of allowed origins.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "post-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins", + "operationId" : "post-merchants-id-apiCredentials-apiCredentialId-allowedOrigins", "x-groupName" : "Allowed origins - merchant level", "x-sortIndex" : 0, "security" : [ @@ -5937,7 +5963,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -6021,14 +6047,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials/{apiCredentialId}/allowedOrigins/{originId}" : { + "/merchants/{id}/apiCredentials/{apiCredentialId}/allowedOrigins/{originId}" : { "delete" : { "tags" : [ "Allowed origins - merchant level" ], "summary" : "Delete an allowed origin", "description" : "Removes the [allowed origin](https://docs.adyen.com/development-resources/client-side-authentication#allowed-origins) identified in the path. As soon as an allowed origin is removed, we no longer accept client-side requests from that domain.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "delete-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins-originId", + "operationId" : "delete-merchants-id-apiCredentials-apiCredentialId-allowedOrigins-originId", "x-groupName" : "Allowed origins - merchant level", "x-sortIndex" : 0, "security" : [ @@ -6044,7 +6070,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -6132,7 +6158,7 @@ ], "summary" : "Get an allowed origin", "description" : "Returns the [allowed origin](https://docs.adyen.com/development-resources/client-side-authentication#allowed-origins) identified in the path.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "get-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins-originId", + "operationId" : "get-merchants-id-apiCredentials-apiCredentialId-allowedOrigins-originId", "x-groupName" : "Allowed origins - merchant level", "x-sortIndex" : 0, "security" : [ @@ -6148,7 +6174,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -6241,14 +6267,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateApiKey" : { + "/merchants/{id}/apiCredentials/{apiCredentialId}/generateApiKey" : { "post" : { "tags" : [ "API key - merchant level" ], "summary" : "Generate new API key", "description" : "Returns a new API key for the API credential. You can use the new API key a few minutes after generating it. The old API key stops working 24 hours after generating a new one.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "post-merchants-merchantId-apiCredentials-apiCredentialId-generateApiKey", + "operationId" : "post-merchants-id-apiCredentials-apiCredentialId-generateApiKey", "x-groupName" : "API key - merchant level", "x-sortIndex" : 0, "security" : [ @@ -6264,7 +6290,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -6348,14 +6374,14 @@ } } }, - "/merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateClientKey" : { + "/merchants/{id}/apiCredentials/{apiCredentialId}/generateClientKey" : { "post" : { "tags" : [ "Client key - merchant level" ], "summary" : "Generate new client key", "description" : "Returns a new [client key](https://docs.adyen.com/development-resources/client-side-authentication#how-it-works) for the API credential identified in the path. You can use the new client key a few minutes after generating it. The old client key stops working 24 hours after generating a new one.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—API credentials read and write", - "operationId" : "post-merchants-merchantId-apiCredentials-apiCredentialId-generateClientKey", + "operationId" : "post-merchants-id-apiCredentials-apiCredentialId-generateClientKey", "x-groupName" : "Client key - merchant level", "x-sortIndex" : 0, "security" : [ @@ -6371,7 +6397,7 @@ "parameters" : [ { "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", + "name" : "id", "in" : "path", "required" : true, "schema" : { @@ -6455,6 +6481,1673 @@ } } }, + "/merchants/{id}/paymentMethodSettings" : { + "get" : { + "tags" : [ + "Payment methods - merchant level" + ], + "summary" : "Get all payment methods", + "description" : "Returns details for all payment methods of the merchant account identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read\n", + "operationId" : "get-merchants-id-paymentMethodSettings", + "x-groupName" : "Payment methods - merchant level", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the store for which to return the payment methods.", + "name" : "storeId", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the Business Line for which to return the payment methods.", + "name" : "businessLineId", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The number of items to have on a page, maximum 100. The default is 10 items on a page.", + "name" : "pageSize", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, + { + "description" : "The number of the page to fetch.", + "name" : "pageNumber", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentMethodResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "post" : { + "tags" : [ + "Payment methods - merchant level" + ], + "summary" : "Request a payment method", + "description" : "Sends a request to add a new payment method to the merchant account identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read and write\n", + "operationId" : "post-merchants-id-paymentMethodSettings", + "x-groupName" : "Payment methods - merchant level", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentMethodSetupInfo" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentMethod" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/paymentMethodSettings/{paymentMethodId}" : { + "get" : { + "tags" : [ + "Payment methods - merchant level" + ], + "summary" : "Get payment method details", + "description" : "Returns details for the merchant account and the payment method identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read\n", + "operationId" : "get-merchants-id-paymentMethodSettings-paymentMethodId", + "x-groupName" : "Payment methods - merchant level", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the payment method.", + "name" : "paymentMethodId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentMethod" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Payment methods - merchant level" + ], + "summary" : "Update a payment method", + "description" : "Updates payment method details for the merchant account and the payment method identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read and write\n", + "operationId" : "patch-merchants-id-paymentMethodSettings-paymentMethodId", + "x-groupName" : "Payment methods - merchant level", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UpdatePaymentMethodInfo" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The unique identifier of the payment method.", + "name" : "paymentMethodId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentMethod" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/users" : { + "get" : { + "tags" : [ + "Users - merchant level" + ], + "summary" : "Get a list of users", + "description" : "Returns a list of users associated with the `id` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", + "operationId" : "get-merchants-id-users", + "x-groupName" : "Users - merchant level", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the merchant.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The number of the page to fetch.", + "name" : "pageNumber", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, + { + "description" : "The number of items to have on a page. Maximum value is **100**. The default is **10** items on a page.", + "name" : "pageSize", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListMerchantUsersResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "post" : { + "tags" : [ + "Users - merchant level" + ], + "summary" : "Create a new user", + "description" : "Creates a user for the `id` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", + "operationId" : "post-merchants-id-users", + "x-groupName" : "Users - merchant level", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateMerchantUserRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "Unique identifier of the merchant.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateUserResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/users/{userId}" : { + "get" : { + "tags" : [ + "Users - merchant level" + ], + "summary" : "Get user details", + "description" : "Returns user details for the `userId` and the `id` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", + "operationId" : "get-merchants-id-users-userId", + "x-groupName" : "Users - merchant level", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the merchant.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the user.", + "name" : "userId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/User" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Users - merchant level" + ], + "summary" : "Update a user", + "description" : "Updates user details for the `userId` and the `id` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", + "operationId" : "patch-merchants-id-users-userId", + "x-groupName" : "Users - merchant level", + "x-sortIndex" : 0, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UpdateMerchantUserRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "Unique identifier of the merchant.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the user.", + "name" : "userId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/User" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/webhooks" : { + "get" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "List all webhooks", + "description" : "Lists all webhook configurations for the merchant account.\n\nTo make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read\n* Management API—Webhooks read and write", + "operationId" : "get-merchants-id-webhooks", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 2, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The number of the page to fetch.", + "name" : "pageNumber", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, + { + "description" : "The number of items to have on a page, maximum 100. The default is 10 items on a page.", + "name" : "pageSize", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListWebhooksResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "post" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Set up a webhook", + "description" : "Subscribe to receive webhook notifications about events related to your merchant account. You can add basic authentication to make sure the data is secure.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", + "operationId" : "post-merchants-id-webhooks", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 1, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateMerchantWebhookRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Webhook" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/webhooks/{webhookId}" : { + "delete" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Remove a webhook", + "description" : "Remove the configuration for the webhook identified in the path.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", + "operationId" : "delete-merchants-id-webhooks-webhookId", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 5, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the webhook configuration.", + "name" : "webhookId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "get" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Get a webhook", + "description" : "Returns the configuration for the webhook identified in the path.\n\nTo make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read\n* Management API—Webhooks read and write", + "operationId" : "get-merchants-id-webhooks-webhookId", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 3, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the webhook configuration.", + "name" : "webhookId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Webhook" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + }, + "patch" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Update a webhook", + "description" : "Make changes to the configuration of the webhook identified in the path. The request contains the new values you want to have in the webhook configuration. The response contains the full configuration for the webhook, which includes the new values from the request.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", + "operationId" : "patch-merchants-id-webhooks-webhookId", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 4, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UpdateMerchantWebhookRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the webhook configuration.", + "name" : "webhookId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Webhook" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/webhooks/{webhookId}/generateHmac" : { + "post" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Generate an HMAC key", + "description" : "Returns an [HMAC key](https://en.wikipedia.org/wiki/HMAC) for the webhook identified in the path. This key allows you to check the integrity and the origin of the notifications you receive.By creating an HMAC key, you start receiving [HMAC-signed notifications](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures#enable-hmac-signatures) from Adyen. Find out more about how to [verify HMAC signatures](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures).\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", + "operationId" : "post-merchants-id-webhooks-webhookId-generateHmac", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 6, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "name" : "webhookId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GenerateHmacKeyResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/merchants/{id}/webhooks/{webhookId}/test" : { + "post" : { + "tags" : [ + "Webhooks - merchant level" + ], + "summary" : "Test a webhook", + "description" : "Sends sample notifications to test if the webhook is set up correctly.\n\nWe send four test notifications for each event code you choose. They cover success and failure scenarios for the hard-coded currencies EUR and GBP, regardless of the currencies configured in the merchant accounts. For custom notifications, we only send the specified custom notification.\n\nThe response describes the result of the test. The `status` field tells you if the test was successful or not. You can use the other fields to troubleshoot unsuccessful tests.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", + "operationId" : "post-merchants-id-webhooks-webhookId-test", + "x-groupName" : "Webhooks - merchant level", + "x-sortIndex" : 7, + "security" : [ + { + "BasicAuth" : [ + ] + }, + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TestWebhookRequest" + } + } + } + }, + "parameters" : [ + { + "description" : "The unique identifier of the merchant account.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the webhook configuration.", + "name" : "webhookId", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TestWebhookResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "204" : { + "description" : "No Content - the request has been successfully processed, but there is no additional content." + }, + "400" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Bad Request - a problem reading or understanding the request." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, "/merchants/{merchantId}/billingEntities" : { "get" : { "tags" : [ @@ -6567,464 +8260,6 @@ } } }, - "/merchants/{merchantId}/paymentMethodSettings" : { - "get" : { - "tags" : [ - "Payment methods - merchant level" - ], - "summary" : "Get all payment methods", - "description" : "Returns details for all payment methods of the merchant account identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read\n", - "operationId" : "get-merchants-merchantId-paymentMethodSettings", - "x-groupName" : "Payment methods - merchant level", - "x-sortIndex" : 2, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The unique identifier of the store for which to return the payment methods.", - "name" : "storeId", - "in" : "query", - "required" : false, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The unique identifier of the Business Line for which to return the payment methods.", - "name" : "businessLineId", - "in" : "query", - "required" : false, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/PaymentMethodResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "post" : { - "tags" : [ - "Payment methods - merchant level" - ], - "summary" : "Request a payment method", - "description" : "Sends a request to add a new payment method to the merchant account identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read and write\n", - "operationId" : "post-merchants-merchantId-paymentMethodSettings", - "x-groupName" : "Payment methods - merchant level", - "x-sortIndex" : 1, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "examples" : { - "add-payment-method" : { - "$ref" : "#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method" - }, - "add-payment-method-partner-model" : { - "$ref" : "#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model" - } - }, - "schema" : { - "$ref" : "#/components/schemas/PaymentMethodInfo" - } - } - } - }, - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "examples" : { - "add-payment-method" : { - "$ref" : "#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-200" - }, - "add-payment-method-partner-model" : { - "$ref" : "#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model-200" - } - }, - "schema" : { - "$ref" : "#/components/schemas/PaymentMethod" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/paymentMethodSettings/{paymentMethodId}" : { - "get" : { - "tags" : [ - "Payment methods - merchant level" - ], - "summary" : "Get payment method details", - "description" : "Returns details for the merchant account and the payment method identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read\n", - "operationId" : "get-merchants-merchantId-paymentMethodSettings-paymentMethodId", - "x-groupName" : "Payment methods - merchant level", - "x-sortIndex" : 3, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The unique identifier of the payment method.", - "name" : "paymentMethodId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/PaymentMethod" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "patch" : { - "tags" : [ - "Payment methods - merchant level" - ], - "summary" : "Update a payment method", - "description" : "Updates payment method details for the merchant account and the payment method identified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Payment methods read and write\n", - "operationId" : "patch-merchants-merchantId-paymentMethodSettings-paymentMethodId", - "x-groupName" : "Payment methods - merchant level", - "x-sortIndex" : 4, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UpdatePaymentMethodInfo" - } - } - } - }, - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The unique identifier of the payment method.", - "name" : "paymentMethodId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/PaymentMethod" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, "/merchants/{merchantId}/shippingLocations" : { "get" : { "tags" : [ @@ -9570,1221 +10805,6 @@ } } }, - "/merchants/{merchantId}/users" : { - "get" : { - "tags" : [ - "Users - merchant level" - ], - "summary" : "Get a list of users", - "description" : "Returns a list of users associated with the `merchantId` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", - "operationId" : "get-merchants-merchantId-users", - "x-groupName" : "Users - merchant level", - "x-sortIndex" : 0, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "Unique identifier of the merchant.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The number of the page to fetch.", - "name" : "pageNumber", - "in" : "query", - "required" : false, - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, - { - "description" : "The number of items to have on a page. Maximum value is **100**. The default is **10** items on a page.", - "name" : "pageSize", - "in" : "query", - "required" : false, - "schema" : { - "format" : "int32", - "type" : "integer" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListMerchantUsersResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "post" : { - "tags" : [ - "Users - merchant level" - ], - "summary" : "Create a new user", - "description" : "Creates a user for the `merchantId` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", - "operationId" : "post-merchants-merchantId-users", - "x-groupName" : "Users - merchant level", - "x-sortIndex" : 0, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "examples" : { - "create-user" : { - "$ref" : "#/components/examples/post-merchants-merchantId-users-create-user" - } - }, - "schema" : { - "$ref" : "#/components/schemas/CreateMerchantUserRequest" - } - } - } - }, - "parameters" : [ - { - "description" : "Unique identifier of the merchant.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "examples" : { - "create-user" : { - "$ref" : "#/components/examples/post-merchants-merchantId-users-create-user-200" - } - }, - "schema" : { - "$ref" : "#/components/schemas/CreateUserResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/users/{userId}" : { - "get" : { - "tags" : [ - "Users - merchant level" - ], - "summary" : "Get user details", - "description" : "Returns user details for the `userId` and the `merchantId` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", - "operationId" : "get-merchants-merchantId-users-userId", - "x-groupName" : "Users - merchant level", - "x-sortIndex" : 0, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "Unique identifier of the merchant.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the user.", - "name" : "userId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/User" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "patch" : { - "tags" : [ - "Users - merchant level" - ], - "summary" : "Update a user", - "description" : "Updates user details for the `userId` and the `merchantId` specified in the path.\n\nTo make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Users read and write\n", - "operationId" : "patch-merchants-merchantId-users-userId", - "x-groupName" : "Users - merchant level", - "x-sortIndex" : 0, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UpdateMerchantUserRequest" - } - } - } - }, - "parameters" : [ - { - "description" : "Unique identifier of the merchant.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the user.", - "name" : "userId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/User" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/webhooks" : { - "get" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "List all webhooks", - "description" : "Lists all webhook configurations for the merchant account.\n\nTo make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read\n* Management API—Webhooks read and write", - "operationId" : "get-merchants-merchantId-webhooks", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 2, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "The number of the page to fetch.", - "name" : "pageNumber", - "in" : "query", - "required" : false, - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, - { - "description" : "The number of items to have on a page, maximum 100. The default is 10 items on a page.", - "name" : "pageSize", - "in" : "query", - "required" : false, - "schema" : { - "format" : "int32", - "type" : "integer" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListWebhooksResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "post" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Set up a webhook", - "description" : "Subscribe to receive webhook notifications about events related to your merchant account. You can add basic authentication to make sure the data is secure.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", - "operationId" : "post-merchants-merchantId-webhooks", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 1, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CreateMerchantWebhookRequest" - } - } - } - }, - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Webhook" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/webhooks/{webhookId}" : { - "delete" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Remove a webhook", - "description" : "Remove the configuration for the webhook identified in the path.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", - "operationId" : "delete-merchants-merchantId-webhooks-webhookId", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 5, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the webhook configuration.", - "name" : "webhookId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "get" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Get a webhook", - "description" : "Returns the configuration for the webhook identified in the path.\n\nTo make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read\n* Management API—Webhooks read and write", - "operationId" : "get-merchants-merchantId-webhooks-webhookId", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 3, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the webhook configuration.", - "name" : "webhookId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Webhook" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - }, - "patch" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Update a webhook", - "description" : "Make changes to the configuration of the webhook identified in the path. The request contains the new values you want to have in the webhook configuration. The response contains the full configuration for the webhook, which includes the new values from the request.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", - "operationId" : "patch-merchants-merchantId-webhooks-webhookId", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 4, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UpdateMerchantWebhookRequest" - } - } - } - }, - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the webhook configuration.", - "name" : "webhookId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Webhook" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/webhooks/{webhookId}/generateHmac" : { - "post" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Generate an HMAC key", - "description" : "Returns an [HMAC key](https://en.wikipedia.org/wiki/HMAC) for the webhook identified in the path. This key allows you to check the integrity and the origin of the notifications you receive.By creating an HMAC key, you start receiving [HMAC-signed notifications](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures#enable-hmac-signatures) from Adyen. Find out more about how to [verify HMAC signatures](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures).\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", - "operationId" : "post-merchants-merchantId-webhooks-webhookId-generateHmac", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 6, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "name" : "webhookId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GenerateHmacKeyResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, - "/merchants/{merchantId}/webhooks/{webhookId}/test" : { - "post" : { - "tags" : [ - "Webhooks - merchant level" - ], - "summary" : "Test a webhook", - "description" : "Sends sample notifications to test if the webhook is set up correctly.\n\nWe send four test notifications for each event code you choose. They cover success and failure scenarios for the hard-coded currencies EUR and GBP, regardless of the currencies configured in the merchant accounts. For custom notifications, we only send the specified custom notification.\n\nThe response describes the result of the test. The `status` field tells you if the test was successful or not. You can use the other fields to troubleshoot unsuccessful tests.\n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n* Management API—Webhooks read and write", - "operationId" : "post-merchants-merchantId-webhooks-webhookId-test", - "x-groupName" : "Webhooks - merchant level", - "x-sortIndex" : 7, - "security" : [ - { - "BasicAuth" : [ - ] - }, - { - "ApiKeyAuth" : [ - ] - } - ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TestWebhookRequest" - } - } - } - }, - "parameters" : [ - { - "description" : "The unique identifier of the merchant account.", - "name" : "merchantId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - }, - { - "description" : "Unique identifier of the webhook configuration.", - "name" : "webhookId", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } - ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TestWebhookResponse" - } - } - }, - "description" : "OK - the request has succeeded." - }, - "204" : { - "description" : "No Content - the request has been successfully processed, but there is no additional content." - }, - "400" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Bad Request - a problem reading or understanding the request." - }, - "401" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unauthorized - authentication required." - }, - "403" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Forbidden - insufficient permissions to process the request." - }, - "422" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Unprocessable Entity - a request validation error." - }, - "500" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RestServiceError" - } - } - }, - "description" : "Internal Server Error - the server could not process the request." - } - } - } - }, "/stores" : { "get" : { "tags" : [ @@ -12431,7 +12451,7 @@ } } }, - "Address2" : { + "Address" : { "properties" : { "city" : { "description" : "The name of the city.", @@ -12463,7 +12483,7 @@ } } }, - "Address3" : { + "Address2" : { "properties" : { "city" : { "description" : "The name of the city.", @@ -12684,6 +12704,11 @@ "description" : "Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations.", "type" : "string" }, + "description" : { + "description" : "Description of the API credential.", + "maxLength" : 50, + "type" : "string" + }, "id" : { "description" : "Unique identifier of the API credential.", "type" : "string" @@ -12780,7 +12805,7 @@ "properties" : { "address" : { "description" : "The address details of the billing entity.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "email" : { "description" : "The email address of the billing entity.", @@ -12870,6 +12895,11 @@ "description" : "Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations.", "type" : "string" }, + "description" : { + "description" : "Description of the API credential.", + "maxLength" : 50, + "type" : "string" + }, "id" : { "description" : "Unique identifier of the API credential.", "type" : "string" @@ -12949,7 +12979,7 @@ }, "name" : { "description" : "The user's full name.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -12977,6 +13007,48 @@ "roles" ] }, + "Configuration" : { + "properties" : { + "brand" : { + "description" : "Payment method, like **eftpos_australia** or **mc**. See the [possible values](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api). ", + "type" : "string" + }, + "currencies" : { + "description" : "Currency, and surcharge percentage or amount.", + "items" : { + "$ref" : "#/components/schemas/Currency" + }, + "type" : "array" + }, + "sources" : { + "description" : "Funding source. Possible values:\n* **Credit**\n* **Debit**", + "enum" : [ + "Debit", + "Credit" + ], + "items" : { + "type" : "string" + }, + "type" : "string" + } + }, + "required" : [ + "brand", + "currencies" + ] + }, + "Connectivity" : { + "properties" : { + "simcardStatus" : { + "description" : "Indicates the status of the SIM card in the payment terminal. Can be updated and received only at terminal level, and only for models that support cellular connectivity.\n\nPossible values:\n* **ACTIVATED**: the SIM card is activated. Cellular connectivity may still need to be enabled on the terminal itself, in the **Network** settings.\n* **INVENTORY**: the SIM card is not activated. The terminal can't use cellular connectivity.", + "enum" : [ + "ACTIVATED", + "INVENTORY" + ], + "type" : "string" + } + } + }, "Contact" : { "properties" : { "email" : { @@ -13053,6 +13125,11 @@ "description" : "Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations.", "type" : "string" }, + "description" : { + "description" : "Description of the API credential.", + "maxLength" : 50, + "type" : "string" + }, "id" : { "description" : "Unique identifier of the API credential.", "type" : "string" @@ -13100,6 +13177,10 @@ }, "type" : "array" }, + "description" : { + "description" : "Description of the API credential.", + "type" : "string" + }, "roles" : { "description" : "List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) of the API credential.", "items" : { @@ -13148,6 +13229,11 @@ "description" : "Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations.", "type" : "string" }, + "description" : { + "description" : "Description of the API credential.", + "maxLength" : 50, + "type" : "string" + }, "id" : { "description" : "Unique identifier of the API credential.", "type" : "string" @@ -13204,7 +13290,7 @@ "description" : "The user's full name.\n\nAllowed length: 1—80 characters.", "maxLength" : 80, "minLength" : 1, - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -13264,7 +13350,7 @@ }, "name" : { "description" : "The user's full name.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -13409,6 +13495,10 @@ }, "type" : "array" }, + "description" : { + "description" : "Description of the API credential.", + "type" : "string" + }, "roles" : { "description" : "List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) for the API credential.", "items" : { @@ -13435,7 +13525,7 @@ "description" : "The user's full name.\n\nAllowed length: 1—80 characters.", "maxLength" : 80, "minLength" : 1, - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -13578,7 +13668,7 @@ }, "name" : { "description" : "The user's full name.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -13606,6 +13696,27 @@ "roles" ] }, + "Currency" : { + "properties" : { + "amount" : { + "description" : "Surcharge amount per transaction, in minor units.", + "format" : "int32", + "type" : "integer" + }, + "currencyCode" : { + "description" : "Three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). For example, **AUD**.", + "type" : "string" + }, + "percentage" : { + "description" : "Surcharge percentage per transaction. The maximum number of decimal places is two. For example, **1%** or **2.27%**.", + "format" : "double", + "type" : "number" + } + }, + "required" : [ + "currencyCode" + ] + }, "CustomNotification" : { "properties" : { "amount" : { @@ -14241,6 +14352,11 @@ "description" : "Name of the company linked to the API credential.", "type" : "string" }, + "description" : { + "description" : "Description of the API credential.", + "maxLength" : 50, + "type" : "string" + }, "id" : { "description" : "Unique identifier of the API credential.", "type" : "string" @@ -14330,7 +14446,7 @@ "self" ] }, - "Name2" : { + "Name" : { "properties" : { "firstName" : { "description" : "The first name.", @@ -14346,7 +14462,7 @@ "lastName" ] }, - "Name3" : { + "Name2" : { "properties" : { "firstName" : { "description" : "The first name.", @@ -14525,54 +14641,43 @@ }, "type" : { "description" : "Payment method [variant](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api).", - "enum" : [ - "alipay", - "amex", - "amex_applepay", - "applepay", - "bcmc", - "cartebancaire", - "cartebancaire_applepay", - "cup", - "diners", - "directEbanking", - "discover", - "discover_applepay", - "eftpos_australia", - "electron_applepay", - "elo_applepay", - "elodebit_applepay", - "girocard", - "girocard_applepay", - "giropay", - "interac_applepay", - "interac_card", - "jcb", - "jcb_applepay", - "klarna", - "klarna_account", - "klarna_paynow", - "mada_applepay", - "maestro", - "maestro_applepay", - "mc", - "mc_applepay", - "paypal", - "sodexo_applepay", - "swish", - "visa", - "visa_applepay", - "wechatpay_pos" - ], "type" : "string" } }, "required" : [ - "type", "id" ] }, - "PaymentMethodInfo" : { + "PaymentMethodResponse" : { + "properties" : { + "_links" : { + "description" : "Pagination references.", + "$ref" : "#/components/schemas/PaginationLinks" + }, + "data" : { + "description" : "Payment methods details.", + "items" : { + "$ref" : "#/components/schemas/PaymentMethod" + }, + "type" : "array" + }, + "itemsTotal" : { + "description" : "Total number of items.", + "format" : "int32", + "type" : "integer" + }, + "pagesTotal" : { + "description" : "Total number of pages.", + "format" : "int32", + "type" : "integer" + } + }, + "required" : [ + "itemsTotal", + "pagesTotal" + ] + }, + "PaymentMethodSetupInfo" : { "properties" : { "applePay" : { "description" : "Apple Pay details.", @@ -14629,40 +14734,29 @@ "enum" : [ "alipay", "amex", - "amex_applepay", "applepay", "bcmc", + "blik", "cartebancaire", - "cartebancaire_applepay", "cup", "diners", "directEbanking", "discover", - "discover_applepay", "eftpos_australia", - "electron_applepay", - "elo_applepay", - "elodebit_applepay", "girocard", - "girocard_applepay", "giropay", - "interac_applepay", + "ideal", "interac_card", "jcb", - "jcb_applepay", "klarna", "klarna_account", "klarna_paynow", - "mada_applepay", "maestro", - "maestro_applepay", "mc", - "mc_applepay", + "mobilepay", "paypal", - "sodexo_applepay", "swish", "visa", - "visa_applepay", "wechatpay_pos" ], "type" : "string" @@ -14672,17 +14766,6 @@ "type" ] }, - "PaymentMethodResponse" : { - "properties" : { - "data" : { - "description" : "Payment methods details.", - "items" : { - "$ref" : "#/components/schemas/PaymentMethod" - }, - "type" : "array" - } - } - }, "Profile" : { "properties" : { "authType" : { @@ -14738,6 +14821,10 @@ "description" : "For `eap` **peap**. The EAP-PEAP password from your MS-CHAP account. Must match the configuration of your RADIUS server.", "type" : "string" }, + "hiddenSsid" : { + "description" : "Indicates if a network does not broadcast its SSID, so an SSID-specific probe request must be used for scans.", + "type" : "boolean" + }, "name" : { "description" : "Your name for the Wi-Fi profile.", "type" : "string" @@ -15003,7 +15090,7 @@ "properties" : { "address" : { "description" : "The address details of the shipping location.", - "$ref" : "#/components/schemas/Address2" + "$ref" : "#/components/schemas/Address" }, "contact" : { "description" : "The contact details for the shipping location.", @@ -15070,7 +15157,7 @@ }, "address" : { "description" : "The address of the store.", - "$ref" : "#/components/schemas/Address3" + "$ref" : "#/components/schemas/Address2" }, "businessLineIds" : { "description" : "The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with.\n If not specified, the business line of the merchant account is used. Required when there are multiple business lines under the merchant account.", @@ -15126,7 +15213,7 @@ "properties" : { "address" : { "description" : "The address of the store.", - "$ref" : "#/components/schemas/Address3" + "$ref" : "#/components/schemas/Address2" }, "businessLineIds" : { "description" : "The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with.\nIf not specified, the business line of the merchant account is used. Required when there are multiple business lines under the merchant account.", @@ -15170,7 +15257,7 @@ "properties" : { "address" : { "description" : "The address of the store.", - "$ref" : "#/components/schemas/Address3" + "$ref" : "#/components/schemas/Address2" }, "businessLineIds" : { "description" : "The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with.\nIf not specified, the business line of the merchant account is used. Required when there are multiple business lines under the merchant account.", @@ -15227,10 +15314,27 @@ } } }, + "Surcharge" : { + "properties" : { + "askConfirmation" : { + "description" : "Show the surcharge details on the terminal, so the shopper can confirm.", + "type" : "boolean" + }, + "configurations" : { + "description" : "Surcharge fees or percentages for specific payment methods, funding sources (credit or debit), and currencies.", + "items" : { + "$ref" : "#/components/schemas/Configuration" + }, + "type" : "array" + } + } + }, "SwishInfo" : { "properties" : { "swishNumber" : { - "description" : "Swish number. For example, **123 111 11 11**.", + "description" : "Swish number. Format: 10 digits without spaces. For example, **1231111111**.", + "maxLength" : 10, + "minLength" : 10, "type" : "string" } }, @@ -15240,6 +15344,10 @@ }, "Terminal" : { "properties" : { + "assigned" : { + "description" : "The [assignment status](https://docs.adyen.com/point-of-sale/automating-terminal-management/assign-terminals-api) of the terminal. If true, the terminal is assigned. If false, the terminal is in inventory and can't be boarded.", + "type" : "boolean" + }, "id" : { "description" : "The unique identifier of the terminal.", "type" : "string" @@ -15382,6 +15490,10 @@ "description" : "Settings to define the header of the shopper receipt.", "$ref" : "#/components/schemas/CardholderReceipt" }, + "connectivity" : { + "description" : "Settings for terminal connectivity features.", + "$ref" : "#/components/schemas/Connectivity" + }, "gratuities" : { "description" : "Settings for tipping with or without predefined options to choose from. The maximum number of predefined options is four, or three plus the option to enter a custom tip.", "items" : { @@ -15413,6 +15525,10 @@ "description" : "Settings to skip signature, sign on display, or sign on receipt.", "$ref" : "#/components/schemas/Signature" }, + "surcharge" : { + "description" : "Settings for payment [surcharge](https://docs.adyen.com/point-of-sale/surcharge) features.", + "$ref" : "#/components/schemas/Surcharge" + }, "timeouts" : { "description" : "Settings for device [time-outs](https://docs.adyen.com/point-of-sale/pos-timeouts#device-time-out).", "$ref" : "#/components/schemas/Timeouts" @@ -15594,6 +15710,10 @@ }, "type" : "array" }, + "description" : { + "description" : "Description of the API credential.", + "type" : "string" + }, "roles" : { "description" : "List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) of the API credential.", "items" : { @@ -15631,7 +15751,7 @@ "description" : "The user's full name.", "maxLength" : 80, "minLength" : 1, - "$ref" : "#/components/schemas/Name3" + "$ref" : "#/components/schemas/Name2" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -15758,6 +15878,10 @@ }, "type" : "array" }, + "description" : { + "description" : "Description of the API credential.", + "type" : "string" + }, "roles" : { "description" : "List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) for the API credential.", "items" : { @@ -15788,7 +15912,7 @@ "description" : "The user's full name.", "maxLength" : 80, "minLength" : 1, - "$ref" : "#/components/schemas/Name3" + "$ref" : "#/components/schemas/Name2" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -15916,9 +16040,12 @@ "description" : "The address of the store. It is not possible to update the country of the store.", "$ref" : "#/components/schemas/UpdatableAddress" }, - "businessLineId" : { + "businessLineIds" : { "description" : "The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with.", - "type" : "string" + "items" : { + "type" : "string" + }, + "type" : "array" }, "description" : { "description" : "The description of the store.", @@ -15986,7 +16113,7 @@ }, "name" : { "description" : "The user's full name.", - "$ref" : "#/components/schemas/Name2" + "$ref" : "#/components/schemas/Name" }, "roles" : { "description" : "The list of [roles](https://docs.adyen.com/account/user-roles) for this user.", @@ -16251,6 +16378,365 @@ ] } }, + "get-companies-companyId-apiCredentials-success-200" : { + "summary" : "List of API credentials", + "description" : "Example response when your API credential has access to 25 API credentials at the company level", + "value" : { + "_links" : { + "first" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=1&pageSize=10" + }, + "last" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=3&pageSize=10" + }, + "next" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=2&pageSize=10" + }, + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=1&pageSize=10" + } + }, + "itemsTotal" : 25, + "pagesTotal" : 3, + "data" : [ + { + "id" : "YOUR_API_CREDENTIAL_1", + "username" : "YOUR_USERNAME_1", + "clientKey" : "YOUR_CLIENT_KEY_1", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Checkout encrypted cardholder data", + "Merchant Recurring role", + "Checkout webservice role" + ], + "active" : true, + "allowedOrigins" : [ + { + "id" : "YOUR_ALLOWED_ORIGIN_1", + "domain" : "http://localhost", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins/YOUR_ALLOWED_ORIGIN_1" + } + } + }, + { + "id" : "YOUR_ALLOWED_ORIGIN_2", + "domain" : "http://localhost:3000", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins/YOUR_ALLOWED_ORIGIN_2" + } + } + } + ], + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_2", + "username" : "YOUR_USERNAME_2", + "clientKey" : "YOUR_CLIENT_KEY_2", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Checkout encrypted cardholder data", + "Merchant Recurring role", + "Checkout webservice role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_3", + "username" : "YOUR_USERNAME_3", + "clientKey" : "YOUR_CLIENT_KEY_3", + "allowedIpAddresses" : [ + ], + "roles" : [ + "API Supply MPI data with Payments", + "Checkout encrypted cardholder data", + "Merchant Recurring role", + "API PCI Payments role", + "Checkout webservice role", + "API 3DS 2.0 to retrieve the ThreeDS2Result for authentication only" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_4", + "username" : "YOUR_USERNAME_4", + "clientKey" : "YOUR_CLIENT_KEY_4", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Checkout encrypted cardholder data", + "Checkout webservice role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + "YOUR_MERCHANT_ACCOUNT_1" + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_5", + "username" : "YOUR_USERNAME_5", + "clientKey" : "YOUR_CLIENT_KEY_5", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Checkout encrypted cardholder data", + "Merchant Recurring role", + "API Authorise Referred Payments", + "API PCI Payments role", + "Checkout webservice role", + "Merchant PAL Webservice role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_6", + "username" : "YOUR_USERNAME_6", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Merchant Report Download role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_7", + "username" : "YOUR_USERNAME_7", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Merchant Report Download role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + "YOUR_MERCHANT_ACCOUNT_2", + "YOUR_MERCHANT_ACCOUNT_3" + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_8", + "username" : "YOUR_USERNAME_8", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Merchant Report Download role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_9", + "username" : "YOUR_USERNAME_9", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Merchant Report Download role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + "YOUR_MERCHANT_ACCOUNT_4", + "YOUR_MERCHANT_ACCOUNT_5" + ] + }, + { + "id" : "YOUR_API_CREDENTIAL_10", + "username" : "YOUR_USERNAME_10", + "allowedIpAddresses" : [ + ], + "roles" : [ + "Merchant Report Download role" + ], + "active" : true, + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10" + }, + "allowedOrigins" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/allowedOrigins" + }, + "company" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "generateApiKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/generateApiKey" + }, + "generateClientKey" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/generateClientKey" + } + }, + "associatedMerchantAccounts" : [ + ] + } + ] + } + }, "get-companies-companyId-billingEntities-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response with billing entities for a company", @@ -16283,6 +16769,265 @@ ] } }, + "get-companies-companyId-merchants-success-200" : { + "summary" : "List of merchant accounts", + "description" : "Example response when your API credential has access to 22 merchant accounts", + "value" : { + "_links" : { + "first" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=1&pageSize=10" + }, + "last" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=3&pageSize=10" + }, + "next" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=2&pageSize=10" + }, + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=1&pageSize=10" + } + }, + "itemsTotal" : 22, + "pagesTotal" : 3, + "data" : [ + { + "id" : "YOUR_MERCHANT_ACCOUNT_1", + "name" : "YOUR_MERCHANT_NAME_1", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_1", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_2", + "name" : "YOUR_MERCHANT_NAME_2", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "POS", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_2", + "merchantCity" : "", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_3", + "status" : "Active", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_4", + "name" : "YOUR_MERCHANT_NAME_4", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_4", + "merchantCity" : "Sao Paulo", + "primarySettlementCurrency" : "BRL", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_5", + "name" : "YOUR_MERCHANT_NAME_5", + "captureDelay" : "3", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_5", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_6", + "name" : "YOUR_MERCHANT_NAME_6", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_6", + "merchantCity" : "Zagreb", + "primarySettlementCurrency" : "BRL", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_7", + "name" : "YOUR_MERCHANT_NAME_7", + "captureDelay" : "manual", + "defaultShopperInteraction" : "Moto", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_7", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_8", + "name" : "YOUR_MERCHANT_NAME_8", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_8", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_9", + "name" : "YOUR_MERCHANT_NAME_9", + "captureDelay" : "3", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_9", + "merchantCity" : "", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_10", + "name" : "YOUR_MERCHANT_NAME_10", + "captureDelay" : "manual", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_10", + "merchantCity" : "Paris", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/webhooks" + } + } + } + ] + } + }, "get-companies-companyId-shippingLocations-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response with shipping locations for a company", @@ -16324,6 +17069,35 @@ ] } }, + "get-companies-companyId-success-200" : { + "summary" : "Details of the company account", + "description" : "Example response with the details of the company account.", + "value" : { + "id" : "YOUR_COMPANY_ACCOUNT", + "name" : "YOUR_SHOP_NAME", + "status" : "Active", + "dataCenters" : [ + { + "name" : "default", + "livePrefix" : "" + } + ], + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/webhooks" + } + } + } + }, "get-companies-companyId-terminalActions-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response when getting a list of scheduled terminal actions", @@ -16781,6 +17555,52 @@ } } }, + "get-companies-success-200" : { + "summary" : "List of company accounts", + "description" : "Example response when your API credential has access to one company account.", + "value" : { + "_links" : { + "first" : { + "href" : "https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10" + }, + "last" : { + "href" : "https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10" + }, + "self" : { + "href" : "https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10" + } + }, + "itemsTotal" : 1, + "pagesTotal" : 1, + "data" : [ + { + "id" : "YOUR_COMPANY_ACCOUNT", + "name" : "YOUR_COMPANY_NAME", + "status" : "Active", + "dataCenters" : [ + { + "name" : "default", + "livePrefix" : "" + } + ], + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/webhooks" + } + } + } + ] + } + }, "get-merchants-merchantId-billingEntities-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response with billing entities for a merchant account", @@ -17446,6 +18266,265 @@ } } }, + "get-merchants-success-200" : { + "summary" : "List of merchant accounts", + "description" : "Example response when your API credential has access to 23 merchant accounts", + "value" : { + "_links" : { + "first" : { + "href" : "https://management-test.adyen.com/v1/merchants?pageNumber=1&pageSize=10" + }, + "last" : { + "href" : "https://management-test.adyen.com/v1/merchants?pageNumber=3&pageSize=10" + }, + "next" : { + "href" : "https://management-test.adyen.com/v1/merchants?pageNumber=2&pageSize=10" + }, + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants?pageNumber=1&pageSize=10" + } + }, + "itemsTotal" : 23, + "pagesTotal" : 3, + "data" : [ + { + "id" : "YOUR_MERCHANT_ACCOUNT_1", + "name" : "YOUR_MERCHANT_NAME_1", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_1", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_2", + "name" : "YOUR_MERCHANT_NAME_2", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "POS", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_2", + "merchantCity" : "", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_3", + "status" : "YOUR_MERCHANT_NAME_3", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_4", + "name" : "YOUR_MERCHANT_NAME_4", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_4", + "merchantCity" : "Sao Paulo", + "primarySettlementCurrency" : "BRL", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_5", + "name" : "YOUR_MERCHANT_NAME_5", + "captureDelay" : "3", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_5", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_6", + "name" : "YOUR_MERCHANT_NAME_6", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_6", + "merchantCity" : "Zagreb", + "primarySettlementCurrency" : "BRL", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_7", + "name" : "YOUR_MERCHANT_NAME_7", + "captureDelay" : "manual", + "defaultShopperInteraction" : "Moto", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_7", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_8", + "name" : "YOUR_MERCHANT_NAME_8", + "captureDelay" : "immediate", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_8", + "merchantCity" : "Amsterdam", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_9", + "name" : "YOUR_MERCHANT_NAME_9", + "captureDelay" : "3", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_9", + "merchantCity" : "", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/webhooks" + } + } + }, + { + "id" : "YOUR_MERCHANT_ACCOUNT_10", + "name" : "YOUR_MERCHANT_NAME_10", + "captureDelay" : "manual", + "defaultShopperInteraction" : "Ecommerce", + "status" : "Active", + "shopWebAddress" : "YOUR_SHOP_URL_10", + "merchantCity" : "Paris", + "primarySettlementCurrency" : "EUR", + "_links" : { + "self" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10" + }, + "apiCredentials" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/apiCredentials" + }, + "users" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/users" + }, + "webhooks" : { + "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/webhooks" + } + } + } + ] + } + }, "get-stores-storeId-success-200" : { "summary" : "Response code - 200 OK", "description" : "Example response when getting the details of a store", @@ -17694,6 +18773,9 @@ }, "hardware" : { "displayMaximumBackLight" : 75 + }, + "connectivity" : { + "simcardStatus" : "INVENTORY" } } }, @@ -19287,6 +20369,9 @@ }, "hardware" : { "displayMaximumBackLight" : 75 + }, + "connectivity" : { + "simcardStatus" : "INVENTORY" } } }, @@ -19414,6 +20499,9 @@ }, "hardware" : { "displayMaximumBackLight" : 75 + }, + "connectivity" : { + "simcardStatus" : "INVENTORY" } } }, @@ -19628,70 +20716,6 @@ ] } }, - "post-merchants-merchantId-paymentMethodSettings-add-payment-method" : { - "summary" : "Request a payment method", - "description" : "Example request to add a payment method", - "value" : { - "type" : "visa", - "currencies" : [ - "USD" - ], - "countries" : [ - "US" - ] - } - }, - "post-merchants-merchantId-paymentMethodSettings-add-payment-method-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response after sending a request to add a payment method", - "value" : { - "id" : "PM3227C223224K5FH84M8CBNH", - "type" : "visa", - "countries" : [ - "US" - ], - "currencies" : [ - "USD" - ] - } - }, - "post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model" : { - "summary" : "Request to add Swish", - "description" : "Example request to add Swish with a partner model setup", - "value" : { - "businessLineId" : "BL322KV223222D5F8H2J4BQ6C", - "storeId" : "ST322LJ223223K5F4SQNR9XL5", - "type" : "swish", - "swish" : { - "swishNumber" : "1231111111" - }, - "currencies" : [ - "SEK" - ], - "countries" : [ - "SE" - ] - } - }, - "post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response after sending a request to add Swish in a partner model setup", - "value" : { - "id" : "PM3227C223224K5FH84M8CBNH", - "businessLineId" : "BL322KV223222D5F8H2J4BQ6C", - "storeId" : "ST322LJ223223K5F4SQNR9XL5", - "type" : "swish", - "countries" : [ - "SE" - ], - "currencies" : [ - "SEK" - ], - "swish" : { - "swishNumber" : "1231111111" - } - } - }, "post-merchants-merchantId-shippingLocations-create-shipping-location" : { "summary" : "Create a shipping location", "description" : "Example request to create a shipping location", @@ -19903,52 +20927,6 @@ ] } }, - "post-merchants-merchantId-users-create-user" : { - "summary" : "Create a user", - "description" : "Example request to create a user on the merchant level", - "value" : { - "name" : { - "firstName" : "John", - "lastName" : "Smith" - }, - "username" : "johnsmith", - "email" : "john.smith@example.com", - "timeZoneCode" : "Europe/Amsterdam", - "roles" : [ - "Merchant standard role" - ], - "associatedMerchantAccounts" : [ - "YOUR_MERCHANT_ACCOUNT" - ] - } - }, - "post-merchants-merchantId-users-create-user-200" : { - "summary" : "Response code - 200 OK", - "description" : "Example response after creating a user on the merchant level", - "value" : { - "id" : "S2-3B3C3C3B22", - "name" : { - "firstName" : "John", - "gender" : "UNKNOWN", - "lastName" : "Smith" - }, - "email" : "john.smith@example.com", - "timeZoneCode" : "Europe/Amsterdam", - "username" : "johnsmith", - "roles" : [ - "Merchant standard role" - ], - "active" : "true", - "_links" : { - "self" : { - "href" : "https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT/users/S2-3B3C3C3B22" - } - }, - "associatedMerchantAccounts" : [ - "YOUR_MERCHANT_ACCOUNT" - ] - } - }, "post-stores-post-stores" : { "summary" : "Create a store", "description" : "Example request to create a store", diff --git a/json/MarketPayNotificationService-v3.json b/json/MarketPayNotificationService-v3.json index a448802..afbf039 100644 --- a/json/MarketPayNotificationService-v3.json +++ b/json/MarketPayNotificationService-v3.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Adyen for Platforms: Notifications", "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -27,8 +28,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the closure of an account.", - "description" : "This notification is sent when an account has been closed.", + "summary" : "Account closed", + "description" : "Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount).", "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -80,8 +81,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the creation of an account.", - "description" : "This notification is sent when an account has been created.", + "summary" : "Account created", + "description" : "Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount).", "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, @@ -98,6 +99,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/post-ACCOUNT_CREATED-accountCreated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountCreateNotification" } @@ -108,6 +114,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -123,8 +134,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when a liable account current funds are below configured threshold.", - "description" : "This notification is sent when a liable account's current funds are below configured threshold from the Adyen platform.", + "summary" : "Liable account's funds are below configured threshold", + "description" : "Adyen sends this notification when the current funds of your liable account are below the configured threshold.", "operationId" : "post-ACCOUNT_FUNDS_BELOW_THRESHOLD", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -166,8 +177,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the creation of an account holder.", - "description" : "This notification is sent when an account holder has been created.", + "summary" : "Account holder created", + "description" : "Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -184,6 +195,17 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderCreateNotification" } @@ -194,6 +216,17 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -209,8 +242,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon a payout to an account holder.", - "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "summary" : "Paid out to account holder", + "description" : "Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) to an account holder is processed and the payout is scheduled.", "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, @@ -227,6 +260,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderPayoutNotification" } @@ -237,6 +278,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -252,8 +301,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of an account holder.", - "description" : "This notification is sent when the status of an account holder has been changed.", + "summary" : "Account holder status changed", + "description" : "Adyen sends this webhook when [the status of an account holder is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState).", "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -270,6 +319,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStatusChangeNotification" } @@ -280,6 +334,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -295,8 +354,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of a store tied to an account holder.", - "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "summary" : "Store status changed", + "description" : "Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) associated with an account holder is changed.", "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -313,6 +372,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotification" } @@ -323,6 +387,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -338,8 +407,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon an upcoming deadline.", - "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "summary" : "Upcoming deadline", + "description" : "Adyen sends this notification when an account holder's deadline to fulfill the requirements of a specific event is coming up.", "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -381,8 +450,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the update of an account holder.", - "description" : "This notification is sent when an account holder has been updated.", + "summary" : "Account holder updated", + "description" : "Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -399,6 +468,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpdateNotification" } @@ -409,6 +483,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -424,8 +503,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the receipt of KYC Verification results.", - "description" : "This notification is sent when KYC Verification results are made available.", + "summary" : "Verification results received", + "description" : "Adyen sends this webhook when verification results are available.", "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -442,6 +521,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderVerificationNotification" } @@ -452,6 +536,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -467,8 +556,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the update of an account.", - "description" : "This notification is sent when an account has been updated.", + "summary" : "Account updated", + "description" : "Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount).", "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, @@ -485,6 +574,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_UPDATED-accountUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountUpdateNotification" } @@ -495,6 +589,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -510,8 +609,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the setup of a beneficiary.", - "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "summary" : "Beneficiary defined", + "description" : "Adyen sends this notification when a [benefactor/beneficiary relationship is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, @@ -528,6 +627,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup" + } + }, "schema" : { "$ref" : "#/components/schemas/BeneficiarySetupNotification" } @@ -538,6 +642,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -553,8 +662,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the compensation of negative account balances.", - "description" : "This notification is sent when funds have been transferred from your platform's liable account to an overdrawn account in order to compensate for the overdraft.", + "summary" : "Negative account balances compensated", + "description" : "Adyen sends this notification when funds are transferred from your platform's liable account to an overdrawn account to compensate for the overdraft.", "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, @@ -571,6 +680,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" + } + }, "schema" : { "$ref" : "#/components/schemas/CompensateNegativeBalanceNotification" } @@ -581,6 +695,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -596,8 +715,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when an automated direct debit is initiated.", - "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "summary" : "Automated direct debit initiated", + "description" : "Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder).", "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -614,6 +733,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated" + }, + "directDebitInitiated-failed" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed" + } + }, "schema" : { "$ref" : "#/components/schemas/DirectDebitInitiatedNotification" } @@ -624,6 +751,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "directDebitInitiated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -639,8 +774,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a booking for a capture or refund fails.", - "description" : "This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to your platform's liable account instead of the account specified in the split data.", + "summary" : "Booking for a capture or refund failed", + "description" : "Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to or fromyour platform's liable account instead of the account specified in the split data.", "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, @@ -657,6 +792,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/post-PAYMENT_FAILURE-paymentFailure" + } + }, "schema" : { "$ref" : "#/components/schemas/PaymentFailureNotification" } @@ -667,6 +807,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -682,8 +827,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer refund of funds between accounts.", - "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "summary" : "Funds transfer between accounts refunded", + "description" : "Adyen sends this notification when [funds transferred between accounts are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer).", "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, @@ -725,8 +870,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a report is made available.", - "description" : "This notification is sent when a report has been made available.", + "summary" : "Report available", + "description" : "Adyen sends this notification when a report has been generated and it is available for download.", "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, @@ -743,6 +888,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/post-REPORT_AVAILABLE-reportAvailable" + } + }, "schema" : { "$ref" : "#/components/schemas/ReportAvailableNotification" } @@ -753,6 +903,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -768,8 +923,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", - "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "summary" : "'Refund Transfers Not Paid Out' call processed and refunds scheduled", + "description" : "Adyen sends this notification when a request to [refund transfers that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) is processed and the associated refunds are scheduled.", "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, @@ -786,6 +941,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds" + } + }, "schema" : { "$ref" : "#/components/schemas/ScheduledRefundsNotification" } @@ -796,6 +956,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -811,8 +976,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer of funds between accounts.", - "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "summary" : "Funds transferred between accounts", + "description" : "Adyen sends this notification when [funds are transferred between accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, @@ -829,6 +994,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/post-TRANSFER_FUNDS-transferFunds" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferFundsNotification" } @@ -839,6 +1009,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -1334,6 +1509,7 @@ "CloseAccount", "CloseStores", "DeleteBankAccounts", + "DeleteLiableBankAccount", "DeletePayoutMethods", "DeleteShareholders", "DeleteSignatories", @@ -1651,7 +1827,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -1940,7 +2117,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -2050,7 +2227,7 @@ "type" : "string" }, "splits" : { - "description" : "The split data for the debit request", + "description" : "The split data for the debit request.", "items" : { "$ref" : "#/components/schemas/Split" }, @@ -2101,6 +2278,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2290,7 +2471,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -2396,11 +2577,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -2915,13 +3096,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -3218,7 +3400,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3392,18 +3574,207 @@ } }, "post-ACCOUNT_CLOSED-accountClosed" : { - "summary" : "ACCOUNT CLOSED example", + "summary" : "ACCOUNT_CLOSED example", "value" : { - "error" : { - "errorCode" : "000", - "message" : "test error message" - }, - "eventDate" : "2019-01-01T01:00:00+01:00", "eventType" : "ACCOUNT_CLOSED", "executingUserKey" : "executing-user-key", "live" : false, "pspReference" : "TSTPSPR0001", "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "status" : "Closed" + } + } + }, + "post-ACCOUNT_CREATED-accountCreated" : { + "summary" : "ACCOUNT_CREATED example", + "value" : { + "eventType" : "ACCOUNT_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "payoutSchedule" : { + "nextScheduledPayout" : "2023-01-01T01:00:00+01:00", + "schedule" : "DAILY" + }, + "status" : "Active" + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" : { + "summary" : "ACCOUNT_HOLDER_CREATED for businesses example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, "invalidFields" : [ { "errorCode" : 1, @@ -3415,9 +3786,1063 @@ } } ], + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" : { + "summary" : "ACCOUNT_HOLDER_CREATED failed example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "mimeType" : "genericNotification", + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "accountState" : { + "allowPayout" : false, + "allowProcessing" : false, + "disableReason" : "Reason for disabled status", + "disabled" : true, + "stateDeadline" : "1970-01-01T01:00:00+01:00", + "stateLimit" : { + "amount" : 100, + "currency" : "EUR" + }, + "stateType" : "Processing", + "tierNumber" : 2 + }, + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "totalAmountBeforeLimit" : { + "currency" : "EUR", + "value" : 100 + }, + "transactionDate" : "1970-01-01T01:00:00+01:00", + "transactionFailed" : false + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" : { + "summary" : "ACCOUNT_HOLDER_CREATED for individuals example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { "pspReference" : "TSTPSPR0001", "resultCode" : "Success", - "status" : "Closed" + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT failed example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "10_069", + "text" : "Payout has been failed for account seller1. Details: Payout has been rejected by the beneficiary bank." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT initiated example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "merchantReference" : "MRef#00000001", + "status" : { + "statusCode" : "Initiated" + } + } + } + }, + "post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STATUS_CHANGE example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_STATUS_CHANGE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "oldStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "newStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "reason" : "status change reason" + } + } + }, + "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "eventDate" : "2018-04-23T13:13:44+02:00", + "executingUserKey" : "ws", + "live" : true, + "pspReference" : "1313642467023511", + "content" : { + "accountHolderCode" : "YOUR_UNIQUE_ACCOUNT_HOLDER_CODE", + "store" : "UNIQUE_SUBMERCHANT_STORE_ID", + "storeReference" : "YOUR_SUBMERCHANT_STORE_ID", + "newStatus" : "Active", + "oldStatus" : "Pending", + "reason" : "YOUR_REASON" + } + } + }, + "post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" : { + "summary" : "ACCOUNT_HOLDER_UPDATED example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "updatedFields" : [ + { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + ], + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" : { + "summary" : "ACCOUNT_HOLDER_VERIFICATION example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH0000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "shareholderCode" : "SH00000001", + "statusSummaryItems" : [ + { + "itemCode" : 100, + "itemDescription" : "test item description" + } + ], + "verificationStatus" : "PENDING", + "verificationType" : "IDENTITY_VERIFICATION" + } + } + }, + "post-ACCOUNT_UPDATED-accountUpdated" : { + "summary" : "ACCOUNT_UPDATED example", + "value" : { + "eventType" : "ACCOUNT_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "payoutSchedule" : { + "nextScheduledPayout" : "2023-01-01T01:00:00+01:00", + "schedule" : "DAILY" + } + } + } + }, + "post-BENEFICIARY_SETUP-beneficiarySetup" : { + "summary" : "BENEFICIARY_SETUP example", + "value" : { + "eventType" : "BENEFICIARY_SETUP", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "destinationAccountCode" : "AC00000001D", + "destinationAccountHolderCode" : "AH00000001D", + "merchantReference" : "MRef#000000001", + "sourceAccountCode" : "AC0000001S", + "sourceAccountHolderCode" : "AH000000001S", + "transferDate" : "1970-01-01T01:00:00+01:00", + "transferredTransactionCount" : 3 + } + } + }, + "post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" : { + "summary" : "COMPENSATE_NEGATIVE_BALANCE example", + "value" : { + "eventType" : "COMPENSATE_NEGATIVE_BALANCE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "records" : [ + { + "accountCode" : "AC000001", + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "transferDate" : "1970-01-01T01:00:00+01:00" + } + ] + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated" : { + "summary" : "DIRECT_DEBIT_INITIATED example", + "value" : { + "eventDate" : "2021-02-01T14:19:14-08:00", + "eventType" : "DIRECT_DEBIT_INITIATED", + "live" : "false", + "executingUserKey" : "executing-user-key", + "pspReference" : "8515681150749298", + "content" : { + "accountCode" : "8825579787887769", + "amount" : { + "currency" : "USD", + "value" : 6200 + }, + "debitInitiationDate" : "2021-02-01", + "splits" : [ + { + "account" : "8535516988037431", + "amount" : { + "currency" : "EUR", + "value" : 6000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_1", + "type" : "MarketPlace" + }, + { + "amount" : { + "currency" : "EUR", + "value" : 200 + }, + "reference" : "YOUR_SPLIT_REFERENCE_2", + "type" : "Commission" + } + ], + "status" : { + "statusCode" : "Initiated" + } + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed" : { + "summary" : "DIRECT_DEBIT_INITIATED failed example", + "value" : { + "eventDate" : "2021-02-01T14:19:14-08:00", + "eventType" : "DIRECT_DEBIT_INITIATED", + "live" : "false", + "executingUserKey" : "executing-user-key", + "pspReference" : "8315659584588245", + "content" : { + "accountCode" : "8825579787887769", + "amount" : { + "currency" : "EUR", + "value" : 500000 + }, + "debitInitiationDate" : "2021-07-07", + "merchantAccountCode" : "YOUR_MERCHANT_ACCOUNT", + "splits" : [ + { + "account" : "8535516988037431", + "amount" : { + "currency" : "EUR", + "value" : 490000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_1", + "type" : "MarketPlace" + }, + { + "amount" : { + "currency" : "EUR", + "value" : 10000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_2", + "type" : "Commission" + } + ], + "status" : { + "message" : { + "code" : "10_145", + "text" : "Failed to initiate the direct debit for account holder." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-PAYMENT_FAILURE-paymentFailure" : { + "summary" : "PAYMENT_FAILURE example", + "value" : { + "eventType" : "PAYMENT_FAILURE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "errorFields" : [ + { + "errorCode" : 52, + "errorDescription" : "Amount is negative or zero. value: ", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "errorMessage" : { + "code" : "100", + "text" : "test error message" + } + } + } + }, + "post-REPORT_AVAILABLE-reportAvailable" : { + "summary" : "REPORT_AVAILABLE example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "REPORT_AVAILABLE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountType" : "account-type", + "eventDate" : "2019-01-01T01:00:00+01:00", + "remoteAccessUrl" : "http://adyen.com/", + "success" : false + } + } + }, + "post-SCHEDULED_REFUNDS-scheduledRefunds" : { + "summary" : "SCHEDULED_REFUNDS example", + "value" : { + "eventType" : "SCHEDULED_REFUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountHolderCode" : "AH000001", + "lastPayout" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "refundResults" : [ + { + "originalTransaction" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "pspReference" : "TSTPSPR00000001", + "response" : "response" + } + ] + } + } + }, + "post-TRANSFER_FUNDS-transferFunds" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" } } } diff --git a/json/MarketPayNotificationService-v4.json b/json/MarketPayNotificationService-v4.json index fd454c7..dd97fc4 100644 --- a/json/MarketPayNotificationService-v4.json +++ b/json/MarketPayNotificationService-v4.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Adyen for Platforms: Notifications", "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -27,8 +28,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the closure of an account.", - "description" : "This notification is sent when an account has been closed.", + "summary" : "Account closed", + "description" : "Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount).", "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -80,8 +81,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the creation of an account.", - "description" : "This notification is sent when an account has been created.", + "summary" : "Account created", + "description" : "Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount).", "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, @@ -98,6 +99,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/post-ACCOUNT_CREATED-accountCreated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountCreateNotification" } @@ -108,6 +114,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -123,8 +134,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when a liable account current funds are below configured threshold.", - "description" : "This notification is sent when a liable account's current funds are below configured threshold from the Adyen platform.", + "summary" : "Liable account's funds are below configured threshold", + "description" : "Adyen sends this notification when the current funds of your liable account are below the configured threshold.", "operationId" : "post-ACCOUNT_FUNDS_BELOW_THRESHOLD", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -166,8 +177,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the creation of an account holder.", - "description" : "This notification is sent when an account holder has been created.", + "summary" : "Account holder created", + "description" : "Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -184,6 +195,17 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderCreateNotification" } @@ -194,6 +216,17 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -209,8 +242,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon a payout to an account holder.", - "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "summary" : "Paid out to account holder", + "description" : "Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) to an account holder is processed and the payout is scheduled.", "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, @@ -227,6 +260,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderPayoutNotification" } @@ -237,6 +278,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -252,8 +301,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of an account holder.", - "description" : "This notification is sent when the status of an account holder has been changed.", + "summary" : "Account holder status changed", + "description" : "Adyen sends this webhook when [the status of an account holder is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState).", "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -270,6 +319,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStatusChangeNotification" } @@ -280,6 +334,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -295,8 +354,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of a store tied to an account holder.", - "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "summary" : "Store status changed", + "description" : "Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) associated with an account holder is changed.", "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -313,6 +372,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotification" } @@ -323,6 +387,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -338,8 +407,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon an upcoming deadline.", - "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "summary" : "Upcoming deadline", + "description" : "Adyen sends this notification when an account holder's deadline to fulfill the requirements of a specific event is coming up.", "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -381,8 +450,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the update of an account holder.", - "description" : "This notification is sent when an account holder has been updated.", + "summary" : "Account holder updated", + "description" : "Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -399,6 +468,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpdateNotification" } @@ -409,6 +483,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -424,8 +503,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the receipt of KYC Verification results.", - "description" : "This notification is sent when KYC Verification results are made available.", + "summary" : "Verification results received", + "description" : "Adyen sends this webhook when verification results are available.", "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -442,6 +521,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderVerificationNotification" } @@ -452,6 +536,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -467,8 +556,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the update of an account.", - "description" : "This notification is sent when an account has been updated.", + "summary" : "Account updated", + "description" : "Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount).", "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, @@ -485,6 +574,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_UPDATED-accountUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountUpdateNotification" } @@ -495,6 +589,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -510,8 +609,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the setup of a beneficiary.", - "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "summary" : "Beneficiary defined", + "description" : "Adyen sends this notification when a [benefactor/beneficiary relationship is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, @@ -528,6 +627,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup" + } + }, "schema" : { "$ref" : "#/components/schemas/BeneficiarySetupNotification" } @@ -538,6 +642,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -553,8 +662,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the compensation of negative account balances.", - "description" : "This notification is sent when funds have been transferred from your platform's liable account to an overdrawn account in order to compensate for the overdraft.", + "summary" : "Negative account balances compensated", + "description" : "Adyen sends this notification when funds are transferred from your platform's liable account to an overdrawn account to compensate for the overdraft.", "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, @@ -571,6 +680,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" + } + }, "schema" : { "$ref" : "#/components/schemas/CompensateNegativeBalanceNotification" } @@ -581,6 +695,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -596,8 +715,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when an automated direct debit is initiated.", - "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "summary" : "Automated direct debit initiated", + "description" : "Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder).", "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -614,6 +733,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated" + }, + "directDebitInitiated-failed" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed" + } + }, "schema" : { "$ref" : "#/components/schemas/DirectDebitInitiatedNotification" } @@ -624,6 +751,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "directDebitInitiated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -639,8 +774,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a booking for a capture or refund fails.", - "description" : "This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to your platform's liable account instead of the account specified in the split data.", + "summary" : "Booking for a capture or refund failed", + "description" : "Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to or fromyour platform's liable account instead of the account specified in the split data.", "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, @@ -657,6 +792,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/post-PAYMENT_FAILURE-paymentFailure" + } + }, "schema" : { "$ref" : "#/components/schemas/PaymentFailureNotification" } @@ -667,6 +807,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -682,8 +827,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer refund of funds between accounts.", - "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "summary" : "Funds transfer between accounts refunded", + "description" : "Adyen sends this notification when [funds transferred between accounts are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer).", "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, @@ -725,8 +870,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a report is made available.", - "description" : "This notification is sent when a report has been made available.", + "summary" : "Report available", + "description" : "Adyen sends this notification when a report has been generated and it is available for download.", "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, @@ -743,6 +888,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/post-REPORT_AVAILABLE-reportAvailable" + } + }, "schema" : { "$ref" : "#/components/schemas/ReportAvailableNotification" } @@ -753,6 +903,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -768,8 +923,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", - "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "summary" : "'Refund Transfers Not Paid Out' call processed and refunds scheduled", + "description" : "Adyen sends this notification when a request to [refund transfers that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) is processed and the associated refunds are scheduled.", "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, @@ -786,6 +941,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds" + } + }, "schema" : { "$ref" : "#/components/schemas/ScheduledRefundsNotification" } @@ -796,6 +956,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -811,8 +976,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer of funds between accounts.", - "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "summary" : "Funds transferred between accounts", + "description" : "Adyen sends this notification when [funds are transferred between accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, @@ -829,6 +994,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/post-TRANSFER_FUNDS-transferFunds" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferFundsNotification" } @@ -839,6 +1009,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -1390,6 +1565,7 @@ "CloseAccount", "CloseStores", "DeleteBankAccounts", + "DeleteLiableBankAccount", "DeletePayoutMethods", "DeleteShareholders", "DeleteSignatories", @@ -1725,7 +1901,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2048,7 +2225,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -2171,7 +2348,7 @@ "type" : "string" }, "splits" : { - "description" : "The split data for the debit request", + "description" : "The split data for the debit request.", "items" : { "$ref" : "#/components/schemas/Split" }, @@ -2222,6 +2399,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2402,7 +2583,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -2508,11 +2689,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -3055,13 +3236,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -3380,7 +3562,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3560,18 +3742,191 @@ } }, "post-ACCOUNT_CLOSED-accountClosed" : { - "summary" : "ACCOUNT CLOSED example", + "summary" : "ACCOUNT_CLOSED example", "value" : { - "error" : { - "errorCode" : "000", - "message" : "test error message" - }, "eventDate" : "2019-01-01T01:00:00+01:00", "eventType" : "ACCOUNT_CLOSED", "executingUserKey" : "executing-user-key", "live" : false, "pspReference" : "TSTPSPR0001", "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "status" : "Closed" + } + } + }, + "post-ACCOUNT_CREATED-accountCreated" : { + "summary" : "ACCOUNT_CREATED example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "description" : "account description", + "payoutSchedule" : { + "nextScheduledPayout" : "2019-01-02T01:00:00+01:00", + "schedule" : "DAILY" + }, + "status" : "Active" + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" : { + "summary" : "ACCOUNT_HOLDER_CREATED for businesses example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "registrationNumber" : "Reg#1234", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "description for account holder", "invalidFields" : [ { "errorCode" : 1, @@ -3583,9 +3938,1080 @@ } } ], + "legalEntity" : "Business", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" : { + "summary" : "ACCOUNT_HOLDER_CREATED failed example", + "value" : { + "eventDate" : "1970-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "mimeType" : "genericNotification", + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "accountState" : { + "allowPayout" : false, + "allowProcessing" : false, + "disableReason" : "Reason for disabled status", + "disabled" : true, + "stateDeadline" : "1970-01-01T01:00:00+01:00", + "stateLimit" : { + "amount" : 100, + "currency" : "EUR" + }, + "stateType" : "Processing", + "tierNumber" : 2 + }, + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "totalAmountBeforeLimit" : { + "currency" : "EUR", + "value" : 100 + }, + "transactionDate" : "1970-01-01T01:00:00+01:00", + "transactionFailed" : false + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" : { + "summary" : "ACCOUNT_HOLDER_CREATED for individuals example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { "pspReference" : "TSTPSPR0001", "resultCode" : "Success", - "status" : "Closed" + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "description for account holder", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "legalEntity" : "Individual", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT failed example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "10_069", + "text" : "Payout has been failed for account seller1. Details: Payout has been rejected by the beneficiary bank." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT initiated example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "merchantReference" : "MRef#00000001", + "status" : { + "statusCode" : "Initiated" + } + } + } + }, + "post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STATUS_CHANGE example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_STATUS_CHANGE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "oldStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason of why the payout was disabled", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "newStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "reason" : "status change reason" + } + } + }, + "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE example", + "value" : { + "eventType" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "eventDate" : "2018-04-23T13:13:44+02:00", + "executingUserKey" : "ws", + "live" : true, + "pspReference" : "1313642467023511", + "content" : { + "accountHolderCode" : "YOUR_UNIQUE_ACCOUNT_HOLDER_CODE", + "store" : "UNIQUE_SUBMERCHANT_STORE_ID", + "storeReference" : "YOUR_SUBMERCHANT_STORE_ID", + "newStatus" : "Active", + "oldStatus" : "Pending", + "reason" : "YOUR_REASON" + } + } + }, + "post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" : { + "summary" : "ACCOUNT CLOSED example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "registrationNumber" : "Reg#1234", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "idNumber" : "ID#123456", + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2 + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "description for account holder", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "legalEntity" : "Business", + "updatedFields" : [ + { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + ], + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "code" : 100, + "description" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" : { + "summary" : "ACCOUNT_HOLDER_VERIFICATION example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH0000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "statusSummary" : { + "code" : 1302, + "description" : "This user was not found in the database. Please update your personal details or upload a document" + }, + "verificationStatus" : "INVALID_DATA", + "verificationType" : "IDENTITY_VERIFICATION" + } + } + }, + "post-ACCOUNT_UPDATED-accountUpdated" : { + "summary" : "ACCOUNT_UPDATED example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "submittedAsync" : false, + "accountCode" : "AC0000000001", + "description" : "account description", + "payoutSchedule" : { + "nextScheduledPayout" : "2019-01-02T01:00:00+01:00", + "schedule" : "DAILY" + } + } + } + }, + "post-BENEFICIARY_SETUP-beneficiarySetup" : { + "summary" : "BENEFICIARY_SETUP example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "BENEFICIARY_SETUP", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "destinationAccountCode" : "AC00000001D", + "destinationAccountHolderCode" : "AH00000001D", + "merchantReference" : "MRef#000000001", + "sourceAccountCode" : "AC0000001S", + "sourceAccountHolderCode" : "AH000000001S", + "transferDate" : "2019-01-01T01:00:00+01:00", + "transferredTransactionCount" : 3 + } + } + }, + "post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" : { + "summary" : "COMPENSATE_NEGATIVE_BALANCE example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "COMPENSATE_NEGATIVE_BALANCE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "records" : [ + { + "accountCode" : "AC000001", + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "transferDate" : "2019-01-01T01:00:00+01:00" + } + ] + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated" : { + "summary" : "DIRECT_DEBIT_INITIATED example", + "value" : { + "eventDate" : "2021-02-01T14:19:14-08:00", + "eventType" : "DIRECT_DEBIT_INITIATED", + "live" : "false", + "executingUserKey" : "executing-user-key", + "pspReference" : "8515681150749298", + "content" : { + "accountCode" : "8825579787887769", + "amount" : { + "currency" : "USD", + "value" : 6200 + }, + "debitInitiationDate" : "2021-02-01", + "splits" : [ + { + "account" : "8535516988037431", + "amount" : { + "currency" : "EUR", + "value" : 6000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_1", + "type" : "MarketPlace" + }, + { + "amount" : { + "currency" : "EUR", + "value" : 200 + }, + "reference" : "YOUR_SPLIT_REFERENCE_2", + "type" : "Commission" + } + ], + "status" : { + "statusCode" : "Initiated" + } + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed" : { + "summary" : "DIRECT_DEBIT_INITIATED failed example", + "value" : { + "eventDate" : "2021-02-01T14:19:14-08:00", + "eventType" : "DIRECT_DEBIT_INITIATED", + "live" : "false", + "executingUserKey" : "executing-user-key", + "pspReference" : "8315659584588245", + "content" : { + "accountCode" : "8825579787887769", + "amount" : { + "currency" : "EUR", + "value" : 500000 + }, + "debitInitiationDate" : "2021-07-07", + "merchantAccountCode" : "YOUR_MERCHANT_ACCOUNT", + "splits" : [ + { + "account" : "8535516988037431", + "amount" : { + "currency" : "EUR", + "value" : 490000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_1", + "type" : "MarketPlace" + }, + { + "amount" : { + "currency" : "EUR", + "value" : 10000 + }, + "reference" : "YOUR_SPLIT_REFERENCE_2", + "type" : "Commission" + } + ], + "status" : { + "message" : { + "code" : "10_145", + "text" : "Failed to initiate the direct debit for account holder." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-PAYMENT_FAILURE-paymentFailure" : { + "summary" : "PAYMENT_FAILURE example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "PAYMENT_FAILURE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "errorFields" : [ + { + "errorCode" : 52, + "errorDescription" : "Amount is negative or zero. value: ", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "errorMessage" : { + "code" : "100", + "text" : "test error message" + } + } + } + }, + "post-REPORT_AVAILABLE-reportAvailable" : { + "summary" : "REPORT_AVAILABLE example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "REPORT_AVAILABLE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountType" : "account-type", + "eventDate" : "2019-01-01T01:00:00+01:00", + "remoteAccessUrl" : "http://adyen.com/", + "success" : false + } + } + }, + "post-SCHEDULED_REFUNDS-scheduledRefunds" : { + "summary" : "SCHEDULED_REFUNDS example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "SCHEDULED_REFUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountHolderCode" : "AH000001", + "lastPayout" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "2019-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "refundResults" : [ + { + "originalTransaction" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "2019-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "pspReference" : "TSTPSPR00000001", + "response" : "response" + } + ] + } + } + }, + "post-TRANSFER_FUNDS-transferFunds" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" } } } diff --git a/json/MarketPayNotificationService-v5.json b/json/MarketPayNotificationService-v5.json index 64076e1..0354737 100644 --- a/json/MarketPayNotificationService-v5.json +++ b/json/MarketPayNotificationService-v5.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Adyen for Platforms: Notifications", "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -27,8 +28,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the closure of an account.", - "description" : "This notification is sent when an account has been closed.", + "summary" : "Account closed", + "description" : "Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount).", "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -80,8 +81,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the creation of an account.", - "description" : "This notification is sent when an account has been created.", + "summary" : "Account created", + "description" : "Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount).", "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, @@ -98,6 +99,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/post-ACCOUNT_CREATED-accountCreated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountCreateNotification" } @@ -108,6 +114,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -123,8 +134,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when a liable account current funds are below configured threshold.", - "description" : "This notification is sent when a liable account's current funds are below configured threshold from the Adyen platform.", + "summary" : "Liable account's funds are below configured threshold", + "description" : "Adyen sends this notification when the current funds of your liable account are below the configured threshold.", "operationId" : "post-ACCOUNT_FUNDS_BELOW_THRESHOLD", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -141,6 +152,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountFundsBelowThreshold" : { + "$ref" : "#/components/examples/post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountFundsBelowThresholdNotification" } @@ -151,6 +167,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountFundsBelowThreshold" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -166,8 +187,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the creation of an account holder.", - "description" : "This notification is sent when an account holder has been created.", + "summary" : "Account holder created", + "description" : "Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -184,6 +205,17 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderCreateNotification" } @@ -194,6 +226,17 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -209,8 +252,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon a payout to an account holder.", - "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "summary" : "Paid out to account holder", + "description" : "Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) to an account holder is processed and the payout is scheduled.", "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, @@ -227,6 +270,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderPayoutNotification" } @@ -237,6 +288,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -252,8 +311,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of an account holder.", - "description" : "This notification is sent when the status of an account holder has been changed.", + "summary" : "Account holder status changed", + "description" : "Adyen sends this webhook when [the status of an account holder is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState).", "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -270,6 +329,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStatusChangeNotification" } @@ -280,6 +344,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -295,8 +364,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of a store tied to an account holder.", - "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "summary" : "Store status changed", + "description" : "Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) associated with an account holder is changed.", "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -313,6 +382,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotification" } @@ -323,6 +397,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -338,8 +417,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon an upcoming deadline.", - "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "summary" : "Upcoming deadline", + "description" : "Adyen sends this notification when an account holder's deadline to fulfill the requirements of a specific event is coming up.", "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -356,6 +435,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpcomingDeadline" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpcomingDeadlineNotification" } @@ -366,6 +450,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpcomingDeadline" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -381,8 +470,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the update of an account holder.", - "description" : "This notification is sent when an account holder has been updated.", + "summary" : "Account holder updated", + "description" : "Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -399,6 +488,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpdateNotification" } @@ -409,6 +503,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -424,8 +523,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the receipt of KYC Verification results.", - "description" : "This notification is sent when KYC Verification results are made available.", + "summary" : "Verification results received", + "description" : "Adyen sends this webhook when verification results are available.", "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -442,6 +541,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderVerificationNotification" } @@ -452,6 +556,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -467,8 +576,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the update of an account.", - "description" : "This notification is sent when an account has been updated.", + "summary" : "Account updated", + "description" : "Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount).", "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, @@ -485,6 +594,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_UPDATED-accountUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountUpdateNotification" } @@ -495,6 +609,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -510,8 +629,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the setup of a beneficiary.", - "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "summary" : "Beneficiary defined", + "description" : "Adyen sends this notification when a [benefactor/beneficiary relationship is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, @@ -528,6 +647,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup" + } + }, "schema" : { "$ref" : "#/components/schemas/BeneficiarySetupNotification" } @@ -538,6 +662,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -553,8 +682,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the compensation of negative account balances.", - "description" : "This notification is sent when funds have been transferred from your platform's liable account to an overdrawn account in order to compensate for the overdraft.", + "summary" : "Negative account balances compensated", + "description" : "Adyen sends this notification when funds are transferred from your platform's liable account to an overdrawn account to compensate for the overdraft.", "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, @@ -571,6 +700,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" + } + }, "schema" : { "$ref" : "#/components/schemas/CompensateNegativeBalanceNotification" } @@ -581,6 +715,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -596,8 +735,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when an automated direct debit is initiated.", - "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "summary" : "Automated direct debit initiated", + "description" : "Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder).", "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -614,6 +753,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated" + } + }, "schema" : { "$ref" : "#/components/schemas/DirectDebitInitiatedNotification" } @@ -624,6 +768,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -639,8 +788,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a booking for a capture or refund fails.", - "description" : "This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to your platform's liable account instead of the account specified in the split data.", + "summary" : "Booking for a capture or refund failed", + "description" : "Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to or fromyour platform's liable account instead of the account specified in the split data.", "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, @@ -657,6 +806,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/post-PAYMENT_FAILURE-paymentFailure" + } + }, "schema" : { "$ref" : "#/components/schemas/PaymentFailureNotification" } @@ -667,6 +821,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -682,8 +841,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer refund of funds between accounts.", - "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "summary" : "Funds transfer between accounts refunded", + "description" : "Adyen sends this notification when [funds transferred between accounts are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer).", "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, @@ -700,6 +859,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "refundFundsTransfer" : { + "$ref" : "#/components/examples/post-REFUND_FUNDS_TRANSFER-refundFundsTransfer" + } + }, "schema" : { "$ref" : "#/components/schemas/RefundFundsTransferNotification" } @@ -710,6 +874,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "refundFundsTransfer" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -725,8 +894,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a report is made available.", - "description" : "This notification is sent when a report has been made available.", + "summary" : "Report available", + "description" : "Adyen sends this notification when a report has been generated and it is available for download.", "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, @@ -743,6 +912,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/post-REPORT_AVAILABLE-reportAvailable" + } + }, "schema" : { "$ref" : "#/components/schemas/ReportAvailableNotification" } @@ -753,6 +927,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -768,8 +947,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", - "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "summary" : "'Refund Transfers Not Paid Out' call processed and refunds scheduled", + "description" : "Adyen sends this notification when a request to [refund transfers that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) is processed and the associated refunds are scheduled.", "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, @@ -786,6 +965,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds" + } + }, "schema" : { "$ref" : "#/components/schemas/ScheduledRefundsNotification" } @@ -796,6 +980,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -811,8 +1000,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer of funds between accounts.", - "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "summary" : "Funds transferred between accounts", + "description" : "Adyen sends this notification when [funds are transferred between accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, @@ -829,6 +1018,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/post-TRANSFER_FUNDS-transferFunds" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferFundsNotification" } @@ -839,6 +1033,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -1547,6 +1746,7 @@ "CloseAccount", "CloseStores", "DeleteBankAccounts", + "DeleteLiableBankAccount", "DeletePayoutMethods", "DeleteShareholders", "DeleteSignatories", @@ -1877,7 +2077,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2222,7 +2423,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -2382,7 +2583,7 @@ "type" : "string" }, "splits" : { - "description" : "The split data for the debit request", + "description" : "The split data for the debit request.", "items" : { "$ref" : "#/components/schemas/Split" }, @@ -2433,6 +2634,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2628,7 +2833,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -2733,11 +2938,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "bankAccounts" : { "description" : "The results of the checks on the bank accounts.", @@ -3370,13 +3575,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -3779,7 +3985,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" } }, "required" : [ @@ -3984,6 +4190,880 @@ } }, "post-ACCOUNT_CLOSED-accountClosed" : { + "summary" : "ACCOUNT_CLOSED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_CLOSED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "status" : "Closed" + } + } + }, + "post-ACCOUNT_CREATED-accountCreated" : { + "summary" : "ACCOUNT_CREATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "description" : "account description", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutSchedule" : { + "nextScheduledPayout" : "1970-01-02T01:00:00+01:00", + "schedule" : "DAILY" + }, + "status" : "Active" + } + } + }, + "post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" : { + "summary" : "ACCOUNT_HOLDER_CREATED for businesses example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-02T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "registrationNumber" : "Reg#1234", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@merchant.com", + "fullPhoneNumber" : "+3112345678", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "shareholderReference" : "SHREF#0000001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutInstrumentTokens" : [ + { + "merchantAccount" : "MA000001", + "payoutInstrumentTokenCode" : "PIT000001", + "payoutInstrumentTokenType" : "CardToken", + "recurringDetailReference" : "RDR0000001", + "shopperReference" : "SR000001" + } + ], + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "Description for account holder", + "legalEntity" : "Business", + "primaryCurrency" : "EUR", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" : { + "summary" : "ACCOUNT_HOLDER_CREATED failed example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "1970-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "mimeType" : "genericNotification", + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "accountState" : { + "allowPayout" : false, + "allowProcessing" : false, + "disableReason" : "Reason for disabled status", + "disabled" : true, + "stateDeadline" : "1970-01-01T01:00:00+01:00", + "stateLimit" : { + "amount" : 100, + "currency" : "EUR" + }, + "stateType" : "Processing", + "tierNumber" : 2 + }, + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "totalAmountBeforeLimit" : { + "currency" : "EUR", + "value" : 100 + }, + "transactionDate" : "1970-01-01T01:00:00+01:00", + "transactionFailed" : false + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" : { + "summary" : "ACCOUNT_HOLDER_CREATED for individuals example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutInstrumentTokens" : [ + { + "merchantAccount" : "MA000001", + "payoutInstrumentTokenCode" : "PIT000001", + "payoutInstrumentTokenType" : "CardToken", + "recurringDetailReference" : "RDR0000001", + "shopperReference" : "SR000001" + } + ], + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "Description for account holder", + "legalEntity" : "Individual", + "primaryCurrency" : "EUR", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT failed example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "10_069", + "text" : "Payout has been failed for account seller1. Details: Payout has been rejected by the beneficiary bank." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT initiated example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amount" : { + "currency" : "EUR", + "value" : 100 + }, + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Initiated" + } + } + } + }, + "post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STATUS_CHANGE example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-02T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_STATUS_CHANGE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "oldStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "1970-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "newStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "reason" : "status change reason", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ] + } + } + }, + "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE example", + "value" : { + "eventDate" : "2019-12-16T10:38:15+01:00", + "eventType" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "executingUserKey" : "Store Status Update", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "store" : "x00x00x00-xx00-0xx0-x000-00xx00xx000000", + "storeReference" : "Ref#000001", + "oldStatus" : "Pending", + "newStatus" : "Active", + "reason" : "Store was successfully set up" + } + } + }, + "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline" : { + "summary" : "ACCOUNT_HOLDER_UPCOMING_DEADLINE example", + "value" : { + "eventDate" : "2019-09-25T09:52:28+02:00", + "eventType" : "ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "live" : false, + "pspReference" : "9315693979482563", + "content" : { + "accountHolderCode" : "testD47", + "event" : "InactivateAccount", + "executionDate" : "2019-10-11", + "reason" : "Processed more than GBP 5000.00 or equivalent, deadline triggered" + } + } + }, + "post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" : { "summary" : "ACCOUNT CLOSED example", "value" : { "error" : { @@ -4012,6 +5092,451 @@ "status" : "Closed" } } + }, + "post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" : { + "summary" : "ACCOUNT_HOLDER_VERIFICATION example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH0000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "kycCheckStatusData" : { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + }, + "shareholderCode" : "SH00000001" + } + } + }, + "post-ACCOUNT_UPDATED-accountUpdated" : { + "summary" : "ACCOUNT_UPDATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "description" : "account description", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutSchedule" : { + "nextScheduledPayout" : "1970-01-02T01:00:00+01:00", + "schedule" : "DAILY" + } + } + } + }, + "post-BENEFICIARY_SETUP-beneficiarySetup" : { + "summary" : "BENEFICIARY_SETUP example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "BENEFICIARY_SETUP", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "destinationAccountCode" : "AC00000001D", + "destinationAccountHolderCode" : "AH00000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000000001", + "sourceAccountCode" : "AC0000001S", + "sourceAccountHolderCode" : "AH000000001S", + "transferDate" : "1970-01-01T01:00:00+01:00" + } + } + }, + "post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" : { + "summary" : "COMPENSATE_NEGATIVE_BALANCE example", + "value" : { + "eventType" : "COMPENSATE_NEGATIVE_BALANCE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "records" : [ + { + "accountCode" : "AC000001", + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "transferDate" : "1970-01-01T01:00:00+01:00" + } + ] + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated" : { + "summary" : "DIRECT_DEBIT_INITIATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-PAYMENT_FAILURE-paymentFailure" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-REFUND_FUNDS_TRANSFER-refundFundsTransfer" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-REPORT_AVAILABLE-reportAvailable" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-SCHEDULED_REFUNDS-scheduledRefunds" : { + "summary" : "SCHEDULED_REFUNDS example", + "value" : { + "eventType" : "SCHEDULED_REFUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountHolderCode" : "AH000001", + "lastPayout" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "refundResults" : [ + { + "originalTransaction" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "pspReference" : "TSTPSPR00000001", + "response" : "response" + } + ] + } + } + }, + "post-TRANSFER_FUNDS-transferFunds" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } } } } diff --git a/json/MarketPayNotificationService-v6.json b/json/MarketPayNotificationService-v6.json index 8f7a247..a4136de 100644 --- a/json/MarketPayNotificationService-v6.json +++ b/json/MarketPayNotificationService-v6.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Adyen for Platforms: Notifications", "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).", + "x-timestamp" : "2022-05-06T09:18:38Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -27,8 +28,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the closure of an account.", - "description" : "This notification is sent when an account has been closed.", + "summary" : "Account closed", + "description" : "Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount).", "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, @@ -80,8 +81,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the creation of an account.", - "description" : "This notification is sent when an account has been created.", + "summary" : "Account created", + "description" : "Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount).", "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, @@ -98,6 +99,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/post-ACCOUNT_CREATED-accountCreated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountCreateNotification" } @@ -108,6 +114,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountCreated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -123,8 +134,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when a liable account current funds are below configured threshold.", - "description" : "This notification is sent when a liable account's current funds are below configured threshold from the Adyen platform.", + "summary" : "Liable account's funds are below configured threshold", + "description" : "Adyen sends this notification when the current funds of your liable account are below the configured threshold.", "operationId" : "post-ACCOUNT_FUNDS_BELOW_THRESHOLD", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -141,6 +152,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountFundsBelowThreshold" : { + "$ref" : "#/components/examples/post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountFundsBelowThresholdNotification" } @@ -151,6 +167,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountFundsBelowThreshold" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -166,8 +187,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the creation of an account holder.", - "description" : "This notification is sent when an account holder has been created.", + "summary" : "Account holder created", + "description" : "Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -184,6 +205,17 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderCreateNotification" } @@ -194,6 +226,17 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderCreated-businesses" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderCreated-individuals" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -209,8 +252,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon a payout to an account holder.", - "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "summary" : "Paid out to account holder", + "description" : "Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) to an account holder is processed and the payout is scheduled.", "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, @@ -227,6 +270,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderPayoutNotification" } @@ -237,6 +288,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderPayout-failed" : { + "$ref" : "#/components/examples/WebhookAck" + }, + "accountHolderPayout-initiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -252,8 +311,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of an account holder.", - "description" : "This notification is sent when the status of an account holder has been changed.", + "summary" : "Account holder status changed", + "description" : "Adyen sends this webhook when [the status of an account holder is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState).", "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -270,6 +329,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStatusChangeNotification" } @@ -280,6 +344,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -295,8 +364,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the status change of a store tied to an account holder.", - "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "summary" : "Store status changed", + "description" : "Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) associated with an account holder is changed.", "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, @@ -313,6 +382,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotification" } @@ -323,6 +397,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderStoreStatusChange" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -338,8 +417,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon an upcoming deadline.", - "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "summary" : "Upcoming deadline", + "description" : "Adyen sends this notification when an account holder's deadline to fulfill the requirements of a specific event is coming up.", "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, @@ -356,6 +435,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpcomingDeadline" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpcomingDeadlineNotification" } @@ -366,6 +450,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpcomingDeadline" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -381,8 +470,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the update of an account holder.", - "description" : "This notification is sent when an account holder has been updated.", + "summary" : "Account holder updated", + "description" : "Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder).", "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, @@ -399,6 +488,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderUpdateNotification" } @@ -409,6 +503,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -424,8 +523,8 @@ "tags" : [ "Account holders" ], - "summary" : "Triggered upon the receipt of KYC Verification results.", - "description" : "This notification is sent when KYC Verification results are made available.", + "summary" : "Verification results received", + "description" : "Adyen sends this webhook when verification results are available.", "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, @@ -442,6 +541,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountHolderVerificationNotification" } @@ -452,6 +556,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountHolderVerification" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -467,8 +576,8 @@ "tags" : [ "Accounts" ], - "summary" : "Triggered upon the update of an account.", - "description" : "This notification is sent when an account has been updated.", + "summary" : "Account updated", + "description" : "Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount).", "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, @@ -485,6 +594,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/post-ACCOUNT_UPDATED-accountUpdated" + } + }, "schema" : { "$ref" : "#/components/schemas/AccountUpdateNotification" } @@ -495,6 +609,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "accountUpdated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -510,8 +629,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the setup of a beneficiary.", - "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "summary" : "Beneficiary defined", + "description" : "Adyen sends this notification when a [benefactor/beneficiary relationship is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, @@ -528,6 +647,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup" + } + }, "schema" : { "$ref" : "#/components/schemas/BeneficiarySetupNotification" } @@ -538,6 +662,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "beneficiarySetup" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -553,8 +682,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the compensation of negative account balances.", - "description" : "This notification is sent when funds have been transferred from your platform's liable account to an overdrawn account in order to compensate for the overdraft.", + "summary" : "Negative account balances compensated", + "description" : "Adyen sends this notification when funds are transferred from your platform's liable account to an overdrawn account to compensate for the overdraft.", "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, @@ -571,6 +700,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" + } + }, "schema" : { "$ref" : "#/components/schemas/CompensateNegativeBalanceNotification" } @@ -581,6 +715,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "compensateNegativeBalance" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -596,8 +735,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered when an automated direct debit is initiated.", - "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "summary" : "Automated direct debit initiated", + "description" : "Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder).", "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, @@ -614,6 +753,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated" + } + }, "schema" : { "$ref" : "#/components/schemas/DirectDebitInitiatedNotification" } @@ -624,6 +768,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "directDebitInitiated" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -639,8 +788,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a booking for a capture or refund fails.", - "description" : "This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to your platform's liable account instead of the account specified in the split data.", + "summary" : "Booking for a capture or refund failed", + "description" : "Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited to or fromyour platform's liable account instead of the account specified in the split data.", "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, @@ -657,6 +806,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/post-PAYMENT_FAILURE-paymentFailure" + } + }, "schema" : { "$ref" : "#/components/schemas/PaymentFailureNotification" } @@ -667,6 +821,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "paymentFailure" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -682,8 +841,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer refund of funds between accounts.", - "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "summary" : "Funds transfer between accounts refunded", + "description" : "Adyen sends this notification when [funds transferred between accounts are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer).", "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, @@ -700,6 +859,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "refundFundsTransfer" : { + "$ref" : "#/components/examples/post-REFUND_FUNDS_TRANSFER-refundFundsTransfer" + } + }, "schema" : { "$ref" : "#/components/schemas/RefundFundsTransferNotification" } @@ -710,6 +874,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "refundFundsTransfer" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -725,8 +894,8 @@ "tags" : [ "Other" ], - "summary" : "Triggered when a report is made available.", - "description" : "This notification is sent when a report has been made available.", + "summary" : "Report available", + "description" : "Adyen sends this notification when a report has been generated and it is available for download.", "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, @@ -743,6 +912,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/post-REPORT_AVAILABLE-reportAvailable" + } + }, "schema" : { "$ref" : "#/components/schemas/ReportAvailableNotification" } @@ -753,6 +927,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "reportAvailable" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -768,8 +947,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", - "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "summary" : "'Refund Transfers Not Paid Out' call processed and refunds scheduled", + "description" : "Adyen sends this notification when a request to [refund transfers that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) is processed and the associated refunds are scheduled.", "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, @@ -786,6 +965,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds" + } + }, "schema" : { "$ref" : "#/components/schemas/ScheduledRefundsNotification" } @@ -796,6 +980,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "scheduledRefunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -811,8 +1000,8 @@ "tags" : [ "Fund management" ], - "summary" : "Triggered upon the transfer of funds between accounts.", - "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "summary" : "Funds transferred between accounts", + "description" : "Adyen sends this notification when [funds are transferred between accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds).", "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, @@ -829,6 +1018,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/post-TRANSFER_FUNDS-transferFunds" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferFundsNotification" } @@ -839,6 +1033,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "transferFunds" : { + "$ref" : "#/components/examples/WebhookAck" + } + }, "schema" : { "$ref" : "#/components/schemas/NotificationResponse" } @@ -1267,6 +1466,11 @@ "description" : "The account number of the bank from which the payout was initiated.", "type" : "string" }, + "payoutBalanceAccountId" : { + "x-addedInVersion" : "6", + "description" : "The balance account id to which payment was made", + "type" : "string" + }, "payoutBankName" : { "x-addedInVersion" : "6", "description" : "The name of the bank the payout from which the payout was initiated.", @@ -1577,6 +1781,7 @@ "CloseAccount", "CloseStores", "DeleteBankAccounts", + "DeleteLiableBankAccount", "DeletePayoutMethods", "DeleteShareholders", "DeleteSignatories", @@ -1918,7 +2123,8 @@ "type" : "string" }, "ownerDateOfBirth" : { - "description" : "The date of birth of the bank account owner.\n", + "deprecated" : true, + "description" : "The date of birth of the bank account owner.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", "type" : "string" }, "ownerHouseNumberOrName" : { @@ -2280,7 +2486,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" }, "verificationProfile" : { "x-addedInVersion" : "6", @@ -2445,7 +2651,7 @@ "type" : "string" }, "splits" : { - "description" : "The split data for the debit request", + "description" : "The split data for the debit request.", "items" : { "$ref" : "#/components/schemas/Split" }, @@ -2496,6 +2702,10 @@ "accountStatus", "accountType", "address", + "balanceAccount", + "balanceAccountActive", + "balanceAccountCode", + "balanceAccountId", "bankAccount", "bankAccountCode", "bankAccountName", @@ -2661,7 +2871,7 @@ } } }, - "KYCCheckResult2" : { + "KYCCheckResult" : { "properties" : { "checks" : { "description" : "A list of the checks and their statuses.", @@ -2841,11 +3051,11 @@ } } }, - "KYCVerificationResult2" : { + "KYCVerificationResult" : { "properties" : { "accountHolder" : { "description" : "The results of the checks on the account holder.", - "$ref" : "#/components/schemas/KYCCheckResult2" + "$ref" : "#/components/schemas/KYCCheckResult" }, "legalArrangements" : { "x-addedInVersion" : "6", @@ -3639,13 +3849,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -4050,7 +4261,7 @@ "verification" : { "x-addedInVersion" : "2", "description" : "The details of KYC Verification of the account holder.", - "$ref" : "#/components/schemas/KYCVerificationResult2" + "$ref" : "#/components/schemas/KYCVerificationResult" }, "verificationProfile" : { "x-addedInVersion" : "6", @@ -4260,6 +4471,869 @@ } }, "post-ACCOUNT_CLOSED-accountClosed" : { + "summary" : "ACCOUNT_CLOSED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_CLOSED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "status" : "Closed" + } + } + }, + "post-ACCOUNT_CREATED-accountCreated" : { + "summary" : "ACCOUNT_CREATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "description" : "account description", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutSchedule" : { + "nextScheduledPayout" : "1970-01-02T01:00:00+01:00", + "schedule" : "DAILY" + }, + "status" : "Active" + } + } + }, + "post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses" : { + "summary" : "ACCOUNT_HOLDER_CREATED for businesses example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-02T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "businessDetails" : { + "doingBusinessAs" : "Business name", + "legalBusinessName" : "Legal Business Co", + "registrationNumber" : "Reg#1234", + "shareholders" : [ + { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "email" : "contact@merchant.com", + "fullPhoneNumber" : "+3112345678", + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + }, + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "shareholderCode" : "SH00001", + "shareholderReference" : "SHREF#0000001", + "webAddress" : "https://www.adyen.com/" + } + ], + "taxId" : "TaxID#1234" + }, + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutInstrumentTokens" : [ + { + "merchantAccount" : "MA000001", + "payoutInstrumentTokenCode" : "PIT000001", + "payoutInstrumentTokenType" : "CardToken", + "recurringDetailReference" : "RDR0000001", + "shopperReference" : "SR000001" + } + ], + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "Description for account holder", + "legalEntity" : "Business", + "primaryCurrency" : "EUR", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "shareholders" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "shareholderCode" : "SH000001" + } + ], + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed" : { + "summary" : "ACCOUNT_HOLDER_CREATED failed example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "1970-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "mimeType" : "genericNotification", + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "accountState" : { + "allowPayout" : false, + "allowProcessing" : false, + "disableReason" : "Reason for disabled status", + "disabled" : true, + "stateDeadline" : "1970-01-01T01:00:00+01:00", + "stateLimit" : { + "amount" : 100, + "currency" : "EUR" + }, + "stateType" : "Processing", + "tierNumber" : 2 + }, + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "totalAmountBeforeLimit" : { + "currency" : "EUR", + "value" : 100 + }, + "transactionDate" : "1970-01-01T01:00:00+01:00", + "transactionFailed" : false + } + } + }, + "post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals" : { + "summary" : "ACCOUNT_HOLDER_CREATED for individuals example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_CREATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "accountHolderCode" : "AHC00000001", + "accountHolderDetails" : { + "address" : { + "city" : "Amsterdam", + "country" : "NL", + "houseNumberOrName" : "96/A", + "postalCode" : "1000AA", + "stateOrProvince" : "NH", + "street" : "Street" + }, + "bankAccountDetails" : [ + { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + } + ], + "email" : "contact@adyen.com", + "fullPhoneNumber" : "+31858888138", + "individualDetails" : { + "name" : { + "firstName" : "Firstname", + "gender" : "UNKNOWN", + "infix" : "infix", + "lastName" : "Lastname" + }, + "personalData" : { + "dateOfBirth" : "1981-02-27", + "documentData" : [ + { + "expirationDate" : "2030-12-31", + "issuerCountry" : "NL", + "issuerState" : "NH", + "number" : "ID#123456", + "type" : "ID" + } + ], + "nationality" : "NL" + } + }, + "merchantCategoryCode" : "1212", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutInstrumentTokens" : [ + { + "merchantAccount" : "MA000001", + "payoutInstrumentTokenCode" : "PIT000001", + "payoutInstrumentTokenType" : "CardToken", + "recurringDetailReference" : "RDR0000001", + "shopperReference" : "SR000001" + } + ], + "phoneNumber" : { + "phoneCountryCode" : "NL", + "phoneNumber" : "858888138", + "phoneType" : "Landline" + }, + "webAddress" : "https://adyen.com" + }, + "accountHolderStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + ] + }, + "description" : "Description for account holder", + "legalEntity" : "Individual", + "primaryCurrency" : "EUR", + "verification" : { + "accountHolder" : { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ] + }, + "bankAccounts" : [ + { + "checks" : [ + { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + } + ], + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000" + } + ] + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT failed example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "10_069", + "text" : "Payout has been failed for account seller1. Details: Payout has been rejected by the beneficiary bank." + }, + "statusCode" : "Failed" + } + } + } + }, + "post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated" : { + "summary" : "ACCOUNT_HOLDER_PAYOUT initiated example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_PAYOUT", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC00000001", + "accountHolderCode" : "AH00000001", + "amounts" : [ + { + "currency" : "EUR", + "value" : 10 + } + ], + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountReference" : "Ref#000001", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "description" : "description of payout", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#00000001", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Initiated" + } + } + } + }, + "post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STATUS_CHANGE example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-02T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_STATUS_CHANGE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "oldStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + ] + }, + "newStatus" : { + "status" : "Active", + "statusReason" : "Reason of status", + "processingState" : { + "disabled" : true, + "disableReason" : "Reason for disabled status", + "processedFrom" : { + "currency" : "EUR", + "value" : 10 + }, + "processedTo" : { + "currency" : "EUR", + "value" : 100 + }, + "tierNumber" : 2 + }, + "payoutState" : { + "allowPayout" : false, + "payoutLimit" : { + "currency" : "EUR", + "value" : 1000 + }, + "disabled" : true, + "disableReason" : "Reason for disabled status", + "tierNumber" : 2, + "notAllowedReason" : "Reason of not allowed" + }, + "events" : [ + { + "AccountEvent" : { + "event" : "InactivateAccount", + "executionDate" : "2019-01-01T01:00:00+01:00", + "reason" : "Reason of event" + } + } + ] + }, + "reason" : "status change reason", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ] + } + } + }, + "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange" : { + "summary" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE example", + "value" : { + "eventDate" : "2019-12-16T10:38:15+01:00", + "eventType" : "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "executingUserKey" : "Store Status Update", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH000001", + "store" : "x00x00x00-xx00-0xx0-x000-00xx00xx000000", + "storeReference" : "Ref#000001", + "oldStatus" : "Pending", + "newStatus" : "Active", + "reason" : "Store was successfully set up" + } + } + }, + "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline" : { + "summary" : "ACCOUNT_HOLDER_UPCOMING_DEADLINE example", + "value" : { + "eventDate" : "2019-09-25T09:52:28+02:00", + "eventType" : "ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "live" : false, + "pspReference" : "9315693979482563", + "content" : { + "accountHolderCode" : "testD47", + "event" : "InactivateAccount", + "executionDate" : "2019-10-11", + "reason" : "Processed more than GBP 5000.00 or equivalent, deadline triggered" + } + } + }, + "post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated" : { "summary" : "ACCOUNT CLOSED example", "value" : { "error" : { @@ -4288,6 +5362,451 @@ "status" : "Closed" } } + }, + "post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification" : { + "summary" : "ACCOUNT_HOLDER_VERIFICATION example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountHolderCode" : "AH0000001", + "payoutMethodCode" : "00000000-0000-0000-0000-000000000000", + "kycCheckStatusData" : { + "type" : "IDENTITY_VERIFICATION", + "status" : "PENDING", + "summary" : { + "kycCheckCode" : 100, + "kycCheckDescription" : "KYC check summary description" + }, + "requiredFields" : [ + "field.missing" + ] + }, + "shareholderCode" : "SH00000001" + } + } + }, + "post-ACCOUNT_UPDATED-accountUpdated" : { + "summary" : "ACCOUNT_UPDATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "ACCOUNT_UPDATED", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "pspReference" : "TSTPSPR0001", + "resultCode" : "Success", + "accountCode" : "AC0000000001", + "description" : "account description", + "metadata" : { + "MetaKey" : "MetaValue" + }, + "payoutSchedule" : { + "nextScheduledPayout" : "1970-01-02T01:00:00+01:00", + "schedule" : "DAILY" + } + } + } + }, + "post-BENEFICIARY_SETUP-beneficiarySetup" : { + "summary" : "BENEFICIARY_SETUP example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "BENEFICIARY_SETUP", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "destinationAccountCode" : "AC00000001D", + "destinationAccountHolderCode" : "AH00000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000000001", + "sourceAccountCode" : "AC0000001S", + "sourceAccountHolderCode" : "AH000000001S", + "transferDate" : "1970-01-01T01:00:00+01:00" + } + } + }, + "post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance" : { + "summary" : "COMPENSATE_NEGATIVE_BALANCE example", + "value" : { + "eventType" : "COMPENSATE_NEGATIVE_BALANCE", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "records" : [ + { + "accountCode" : "AC000001", + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "transferDate" : "1970-01-01T01:00:00+01:00" + } + ] + } + } + }, + "post-DIRECT_DEBIT_INITIATED-directDebitInitiated" : { + "summary" : "DIRECT_DEBIT_INITIATED example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-PAYMENT_FAILURE-paymentFailure" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-REFUND_FUNDS_TRANSFER-refundFundsTransfer" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-REPORT_AVAILABLE-reportAvailable" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } + }, + "post-SCHEDULED_REFUNDS-scheduledRefunds" : { + "summary" : "SCHEDULED_REFUNDS example", + "value" : { + "eventType" : "SCHEDULED_REFUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "accountCode" : "AC000001", + "accountHolderCode" : "AH000001", + "lastPayout" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "refundResults" : [ + { + "originalTransaction" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "bankAccountDetail" : { + "accountNumber" : "00000000", + "accountType" : "checking", + "bankAccountName" : "Account name", + "bankAccountUUID" : "00000000-0000-0000-0000-000000000000", + "bankBicSwift" : "BSWFT", + "bankCity" : "Amsterdam", + "bankCode" : "00000000", + "bankName" : "Bank Name Co", + "branchCode" : "00000000", + "checkCode" : "1234", + "countryCode" : "NL", + "currencyCode" : "EUR", + "iban" : "NL00NONE1234123412", + "ownerCity" : "Amsterdam", + "ownerCountryCode" : "NL", + "ownerDateOfBirth" : "1981-02-27", + "ownerHouseNumberOrName" : "32/B", + "ownerName" : "Owner Name", + "ownerNationality" : "NL", + "ownerPostalCode" : "1000AA", + "ownerState" : "NH", + "ownerStreet" : "Owner Street", + "primaryAccount" : false, + "taxId" : "OT#12345", + "urlForVerification" : "http://adyen.com" + }, + "captureMerchantReference" : "MRef0000001C", + "capturePspReference" : "TSTPSPR00000001C", + "creationDate" : "1970-01-01T01:00:00+01:00", + "description" : "transaction description", + "destinationAccountCode" : "AC0000001D", + "disputePspReference" : "TSTPSPR00000000D", + "disputeReasonCode" : "DRC001", + "merchantReference" : "MRef#00000001", + "paymentPspReference" : "TSTPSPR0000000PO", + "payoutPspReference" : "TSTPSPR000000PI", + "pspReference" : "TSTPSPR000000001", + "sourceAccountCode" : "AC00000001S", + "transactionStatus" : "Debited", + "transferCode" : "TC0001" + }, + "pspReference" : "TSTPSPR00000001", + "response" : "response" + } + ] + } + } + }, + "post-TRANSFER_FUNDS-transferFunds" : { + "summary" : "TRANSFER_FUNDS example", + "value" : { + "error" : { + "errorCode" : "000", + "message" : "test error message" + }, + "eventDate" : "2019-01-01T01:00:00+01:00", + "eventType" : "TRANSFER_FUNDS", + "executingUserKey" : "executing-user-key", + "live" : false, + "pspReference" : "TSTPSPR0001", + "content" : { + "amount" : { + "currency" : "EUR", + "value" : 10 + }, + "destinationAccountCode" : "AC0000001D", + "invalidFields" : [ + { + "errorCode" : 1, + "errorDescription" : "Field is missing", + "fieldType" : { + "field" : "AccountHolderDetails.BusinessDetails.Shareholders.unknown", + "fieldName" : "unknown", + "shareholderCode" : "SH00001" + } + } + ], + "merchantReference" : "MRef#000001", + "sourceAccountCode" : "AC0000001S", + "status" : { + "message" : { + "code" : "100", + "text" : "test message" + }, + "statusCode" : "Success" + }, + "transferCode" : "TC0001" + } + } } } } diff --git a/json/NotificationConfigurationService-v1.json b/json/NotificationConfigurationService-v1.json index 37af315..9648b5d 100644 --- a/json/NotificationConfigurationService-v1.json +++ b/json/NotificationConfigurationService-v1.json @@ -9,7 +9,8 @@ "version" : "1", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -816,9 +857,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -885,9 +928,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -934,9 +979,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1054,6 +1101,150 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802", + "submittedAsync" : "false" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8516480418110057", + "submittedAsync" : "false", + "configurationDetails" : { + "active" : "true", + "apiVersion" : 4, + "description" : "test123", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "SOAP", + "notificationId" : 50061, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "true", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480434183690", + "submittedAsync" : "false", + "configurations" : [ + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + }, + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "just testing things", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/NotificationConfigurationService-v2.json b/json/NotificationConfigurationService-v2.json index e387705..b08aebf 100644 --- a/json/NotificationConfigurationService-v2.json +++ b/json/NotificationConfigurationService-v2.json @@ -9,7 +9,8 @@ "version" : "2", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -816,9 +857,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -885,9 +928,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -934,9 +979,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1054,6 +1101,150 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802", + "submittedAsync" : "false" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8516480418110057", + "submittedAsync" : "false", + "configurationDetails" : { + "active" : "true", + "apiVersion" : 4, + "description" : "test123", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "SOAP", + "notificationId" : 50061, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "true", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480434183690", + "submittedAsync" : "false", + "configurations" : [ + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + }, + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "just testing things", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/NotificationConfigurationService-v3.json b/json/NotificationConfigurationService-v3.json index 217a263..35fc6ff 100644 --- a/json/NotificationConfigurationService-v3.json +++ b/json/NotificationConfigurationService-v3.json @@ -9,7 +9,8 @@ "version" : "3", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -816,9 +857,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -885,9 +928,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -934,9 +979,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1054,6 +1101,150 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802", + "submittedAsync" : "false" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8516480418110057", + "submittedAsync" : "false", + "configurationDetails" : { + "active" : "true", + "apiVersion" : 4, + "description" : "test123", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "SOAP", + "notificationId" : 50061, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "true", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480434183690", + "submittedAsync" : "false", + "configurations" : [ + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + }, + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "just testing things", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/NotificationConfigurationService-v4.json b/json/NotificationConfigurationService-v4.json index 26fa29a..0722d5e 100644 --- a/json/NotificationConfigurationService-v4.json +++ b/json/NotificationConfigurationService-v4.json @@ -9,7 +9,8 @@ "version" : "4", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -816,9 +857,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -885,9 +928,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -934,9 +979,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1054,6 +1101,150 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802", + "submittedAsync" : "false" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8516480418110057", + "submittedAsync" : "false", + "configurationDetails" : { + "active" : "true", + "apiVersion" : 4, + "description" : "test123", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "SOAP", + "notificationId" : 50061, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "true", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480434183690", + "submittedAsync" : "false", + "configurations" : [ + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + }, + { + "NotificationConfigurationDetails" : { + "active" : "true", + "description" : "just testing things", + "eventConfigs" : [ + { + "NotificationEventConfiguration" : { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + } + ], + "messageFormat" : "JSON", + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sendActionHeader" : "false", + "sslProtocol" : "SSLInsecureCiphers" + } + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/NotificationConfigurationService-v5.json b/json/NotificationConfigurationService-v5.json index 7ba92b4..6ede07e 100644 --- a/json/NotificationConfigurationService-v5.json +++ b/json/NotificationConfigurationService-v5.json @@ -9,7 +9,8 @@ "version" : "5", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -1010,9 +1051,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1079,9 +1122,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1128,9 +1173,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1243,6 +1290,131 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8616480378704419", + "configurationDetails" : { + "active" : true, + "apiVersion" : 5, + "description" : "test", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 50054, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480437185726", + "configurations" : [ + { + "active" : true, + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + }, + { + "active" : true, + "description" : "just testing things", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/NotificationConfigurationService-v6.json b/json/NotificationConfigurationService-v6.json index f5b7a3d..2d154b7 100644 --- a/json/NotificationConfigurationService-v6.json +++ b/json/NotificationConfigurationService-v6.json @@ -9,7 +9,8 @@ "version" : "6", "x-publicVersion" : true, "title" : "Adyen for Platforms: Notification Configuration API", - "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration\n```", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a verification check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration\n```", + "x-timestamp" : "2022-05-03T09:24:14Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -31,7 +32,7 @@ "tags" : [ "General" ], - "summary" : "Subscribe to notifications.", + "summary" : "Subscribe to notifications", "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", @@ -134,8 +135,8 @@ "tags" : [ "General" ], - "summary" : "Delete an existing notification subscription configuration.", - "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "summary" : "Delete a notification subscription configuration", + "description" : "Deletes an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL defined in the subscription.", "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, @@ -152,6 +153,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" } @@ -162,6 +168,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-deleteNotificationConfigurations-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GenericResponse" } @@ -227,8 +238,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve an existing notification subscription configuration.", - "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "summary" : "Get a notification subscription configuration", + "description" : "Returns the details of the configuration of a notification subscription.", "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, @@ -245,6 +256,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" } @@ -255,6 +271,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" } @@ -320,8 +341,8 @@ "tags" : [ "General" ], - "summary" : "Retrieve a list of existing notification subscription configurations.", - "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "summary" : "Get a list of notification subscription configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, @@ -338,6 +359,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/EmptyRequest" } @@ -348,6 +374,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-getNotificationConfigurationList-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" } @@ -413,8 +444,8 @@ "tags" : [ "General" ], - "summary" : "Test an existing notification configuration.", - "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "summary" : "Test a notification configuration", + "description" : "Tests an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, @@ -431,6 +462,11 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" } @@ -441,6 +477,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "basic" : { + "$ref" : "#/components/examples/post-testNotificationConfiguration-basic-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" } @@ -506,8 +547,8 @@ "tags" : [ "General" ], - "summary" : "Update an existing notification subscription configuration.", - "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "summary" : "Update a notification subscription configuration", + "description" : "Updates an existing notification subscription configuration. If you are updating the event types, you must provide all event types, otherwise the previous event type configuration will be overwritten.", "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, @@ -1010,9 +1051,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1079,9 +1122,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1128,9 +1173,11 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "PENDING_CREDIT", "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", + "SCORE_SIGNAL_TRIGGERED", "TRANSFER_FUNDS", "TRANSFER_NOT_PAIDOUT_TRANSFERS" ], @@ -1243,6 +1290,131 @@ } } }, + "post-deleteNotificationConfigurations-basic" : { + "summary" : "Delete a notification configuration", + "description" : "Deletes an existing notification subscription configuration", + "value" : { + "notificationIds" : [ + 27891 + ] + } + }, + "post-deleteNotificationConfigurations-basic-200" : { + "summary" : "Delete a notification configuration", + "description" : "Example response of deleting a notification configuration", + "value" : { + "pspReference" : "8516480472498802" + } + }, + "post-getNotificationConfiguration-basic" : { + "summary" : "Get a notification configuration", + "description" : "Returns the details of the configuration of a notification subscription", + "value" : { + "notificationId" : 21259 + } + }, + "post-getNotificationConfiguration-basic-200" : { + "summary" : "Get a notification configuration", + "description" : "Example response with a notification configuration", + "value" : { + "pspReference" : "8616480378704419", + "configurationDetails" : { + "active" : true, + "apiVersion" : 5, + "description" : "test", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 50054, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + } + } + }, + "post-getNotificationConfigurationList-basic" : { + "summary" : "Get a list of configurations", + "description" : "Returns the details of the configurations of all of the notification subscriptions in the platform of the executing user.", + "value" : { + + } + }, + "post-getNotificationConfigurationList-basic-200" : { + "summary" : "Get a list of configuration", + "description" : "Example response with a list of notification configurations for the executing user", + "value" : { + "pspReference" : "8516480437185726", + "configurations" : [ + { + "active" : true, + "description" : "Unique description 12223", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 27893, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + }, + { + "active" : true, + "description" : "just testing things", + "eventConfigs" : [ + { + "eventType" : "ACCOUNT_HOLDER_VERIFICATION", + "includeMode" : "INCLUDE" + } + ], + "notificationId" : 25032, + "notifyURL" : "https://www.adyen.com/notification-handler", + "sslProtocol" : "SSLInsecureCiphers" + } + ] + } + }, + "post-testNotificationConfiguration-basic" : { + "summary" : "Test a notification configuration", + "description" : "Returns the test result for a notification subscription", + "value" : { + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "notificationId" : 25032 + } + }, + "post-testNotificationConfiguration-basic-200" : { + "summary" : "Test a notification configuration", + "description" : "Example response of a test notification configuration request", + "value" : { + "pspReference" : "8616480452462678", + "errorMessages" : [ + "The required string \"[accepted]\" is not in all the results" + ], + "eventTypes" : [ + "ACCOUNT_HOLDER_VERIFICATION" + ], + "exchangeMessages" : [ + { + "messageCode" : "Number", + "messageDescription" : "1" + }, + { + "messageCode" : "Title", + "messageDescription" : "Test 1: 8616480452462678" + } + ], + "notificationId" : 25032, + "okMessages" : [ + "...", + "ResponseTime_ms: 262", + "ResponseCode: 404" + ] + } + }, "post-updateNotificationConfiguration-basic" : { "summary" : "Update notification configurations", "value" : { diff --git a/json/PaymentService-v25.json b/json/PaymentService-v25.json index 7112e08..f0d36ef 100644 --- a/json/PaymentService-v25.json +++ b/json/PaymentService-v25.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v25/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:27Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -165,7 +166,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -278,7 +279,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -391,7 +392,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -509,7 +510,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -627,7 +628,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -745,8 +746,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -2614,7 +2615,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -2850,7 +2851,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -2903,9 +2904,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -3152,7 +3150,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -3178,6 +3176,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -3430,34 +3432,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { diff --git a/json/PaymentService-v30.json b/json/PaymentService-v30.json index 491f8fc..1c63b7c 100644 --- a/json/PaymentService-v30.json +++ b/json/PaymentService-v30.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v30/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:27Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -282,7 +283,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -395,7 +396,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -508,7 +509,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -626,7 +627,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -744,7 +745,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -862,7 +863,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -981,8 +982,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -2972,7 +2973,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -3218,7 +3219,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -3271,9 +3272,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -3525,7 +3523,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -3551,6 +3549,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -3803,34 +3805,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { diff --git a/json/PaymentService-v40.json b/json/PaymentService-v40.json index 95f0689..1e50790 100644 --- a/json/PaymentService-v40.json +++ b/json/PaymentService-v40.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v40/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:27Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1093,7 +1094,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1207,7 +1208,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1326,8 +1327,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3706,7 +3707,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -3985,7 +3986,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4256,7 +4257,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4335,9 +4336,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4608,7 +4606,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4634,6 +4632,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -4906,34 +4908,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5106,13 +5080,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v46.json b/json/PaymentService-v46.json index 9f5365d..5c1c9da 100644 --- a/json/PaymentService-v46.json +++ b/json/PaymentService-v46.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v46/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:27Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1093,7 +1094,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1207,7 +1208,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1326,8 +1327,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3726,7 +3727,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4005,7 +4006,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4276,7 +4277,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4355,9 +4356,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4633,7 +4631,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4659,6 +4657,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -4931,34 +4933,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5139,13 +5113,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v49.json b/json/PaymentService-v49.json index 317846a..1450ab1 100644 --- a/json/PaymentService-v49.json +++ b/json/PaymentService-v49.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v49/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:28Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1093,7 +1094,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1207,7 +1208,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1326,8 +1327,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3726,7 +3727,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4005,7 +4006,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4276,7 +4277,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4355,9 +4356,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4633,7 +4631,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4659,6 +4657,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -4931,34 +4933,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5139,13 +5113,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v50.json b/json/PaymentService-v50.json index 4747516..adb9a28 100644 --- a/json/PaymentService-v50.json +++ b/json/PaymentService-v50.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v50/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:28Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1093,7 +1094,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1207,7 +1208,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1326,8 +1327,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3736,7 +3737,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4021,7 +4022,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4298,7 +4299,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4383,9 +4384,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4661,7 +4659,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4687,6 +4685,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -4959,34 +4961,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5167,13 +5141,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v51.json b/json/PaymentService-v51.json index 6b87b66..56e8dfa 100644 --- a/json/PaymentService-v51.json +++ b/json/PaymentService-v51.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v51/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:28Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "General" ], - "summary" : "Return the authentication result after doing a 3D Secure authentication only.", + "summary" : "Get the 3DS authentication result", "description" : "Return the authentication result after doing a 3D Secure authentication only.", "x-addedInVersion" : "51", "operationId" : "post-getAuthenticationResult", @@ -1089,7 +1090,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1207,7 +1208,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1321,7 +1322,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1440,8 +1441,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3884,7 +3885,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4175,7 +4176,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4458,7 +4459,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4543,9 +4544,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4821,7 +4819,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4847,6 +4845,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -5119,34 +5121,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5327,13 +5301,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v52.json b/json/PaymentService-v52.json index cd421a9..855f8cc 100644 --- a/json/PaymentService-v52.json +++ b/json/PaymentService-v52.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v52/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:28Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "General" ], - "summary" : "Return the authentication result after doing a 3D Secure authentication only.", + "summary" : "Get the 3DS authentication result", "description" : "Return the authentication result after doing a 3D Secure authentication only.", "x-addedInVersion" : "51", "operationId" : "post-getAuthenticationResult", @@ -1089,7 +1090,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1207,7 +1208,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1321,7 +1322,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1440,8 +1441,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3892,7 +3893,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4183,7 +4184,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4466,7 +4467,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4551,9 +4552,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4829,7 +4827,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4855,6 +4853,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -5127,34 +5129,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5335,13 +5309,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v64.json b/json/PaymentService-v64.json index 8523507..a5afb2b 100644 --- a/json/PaymentService-v64.json +++ b/json/PaymentService-v64.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v64/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:28Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "General" ], - "summary" : "Return the authentication result after doing a 3D Secure authentication only.", + "summary" : "Get the 3DS authentication result", "description" : "Return the authentication result after doing a 3D Secure authentication only.", "x-addedInVersion" : "51", "operationId" : "post-getAuthenticationResult", @@ -1089,7 +1090,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1207,7 +1208,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1321,7 +1322,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1440,8 +1441,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3901,7 +3902,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4192,7 +4193,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4475,7 +4476,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4560,9 +4561,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4838,7 +4836,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4864,6 +4862,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -5136,34 +5138,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5344,13 +5318,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v67.json b/json/PaymentService-v67.json index 4e52d71..e3221d4 100644 --- a/json/PaymentService-v67.json +++ b/json/PaymentService-v67.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v67/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:29Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "General" ], - "summary" : "Return the authentication result after doing a 3D Secure authentication only.", + "summary" : "Get the 3DS authentication result", "description" : "Return the authentication result after doing a 3D Secure authentication only.", "x-addedInVersion" : "51", "operationId" : "post-getAuthenticationResult", @@ -1089,7 +1090,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1207,7 +1208,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1321,7 +1322,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1440,8 +1441,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -3895,7 +3896,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4180,7 +4181,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4457,7 +4458,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4542,9 +4543,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4820,7 +4818,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -4846,6 +4844,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -5110,34 +5112,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5318,13 +5292,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PaymentService-v68.json b/json/PaymentService-v68.json index a592e43..2670286 100644 --- a/json/PaymentService-v68.json +++ b/json/PaymentService-v68.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payment API", "description" : "A set of API endpoints that allow you to initiate, settle, and modify payments on the Adyen payments platform. You can use the API to accept card payments (including One-Click and 3D Secure), bank transfers, ewallets, and many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\n## Authentication\nTo connect to the Payments API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nPayments API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v68/authorise\n```", + "x-timestamp" : "2022-05-06T17:19:29Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -35,7 +36,7 @@ "tags" : [ "Modifications" ], - "summary" : "Increases or decreases the authorised amount.", + "summary" : "Change the authorised amount", "description" : "Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or charging the shopper when they have already left the merchant premises.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\n> If you have a [newer integration](https://docs.adyen.com/online-payments), and are doing:\n> * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates) endpoint on Checkout API.\n> * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment), use this endpoint.", "x-addedInVersion" : "30", "operationId" : "post-adjustAuthorisation", @@ -154,7 +155,7 @@ "tags" : [ "General" ], - "summary" : "Creates a payment authorisation.", + "summary" : "Create an authorisation", "description" : "Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don't support this and will automatically capture as part of the authorisation.\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments) endpoint under Checkout API instead.", "operationId" : "post-authorise", "x-groupName" : "General", @@ -285,7 +286,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure payment authorisation.", + "summary" : "Complete a 3DS authorisation", "description" : "For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "operationId" : "post-authorise3d", "x-groupName" : "General", @@ -398,7 +399,7 @@ "tags" : [ "General" ], - "summary" : "Completes a 3D Secure 2 payment authorisation.", + "summary" : "Complete a 3DS2 authorisation", "description" : "For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details) endpoint under Checkout API instead.", "x-addedInVersion" : "37", "operationId" : "post-authorise3ds2", @@ -512,7 +513,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels an authorised payment.", + "summary" : "Cancel an authorisation", "description" : "Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures.\n\nFor more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels) endpoint under Checkout API instead.", "operationId" : "post-cancel", "x-groupName" : "Modifications", @@ -625,7 +626,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels or refunds a payment.", + "summary" : "Cancel or refund a payment", "description" : "Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture).\n\nDo not use this endpoint for payments that involve:\n * [Multiple partial captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/platforms/processing-payments#providing-split-information) either at time of payment or capture for Adyen for Platforms.\n\n Instead, check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund) or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals) endpoint under Checkout API instead.", "operationId" : "post-cancelOrRefund", "x-groupName" : "Modifications", @@ -743,7 +744,7 @@ "tags" : [ "Modifications" ], - "summary" : "Captures an authorised payment.", + "summary" : "Capture an authorisation", "description" : "Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it's also possible to capture a smaller amount, which results in cancelling the remaining authorisation balance.\n\nPayment methods that are captured automatically after authorisation don't need to be captured. However, submitting a capture request on these transactions will not result in double charges. If immediate or delayed auto-capture is enabled, calling the capture method is not neccessary.\n\nFor more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures) endpoint on Checkout API instead.\n\n", "operationId" : "post-capture", "x-groupName" : "Modifications", @@ -861,7 +862,7 @@ "tags" : [ "Modifications" ], - "summary" : "Creates a payment for the specified donation.", + "summary" : "Create a donation", "description" : "Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment.\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations) endpoint under Checkout API instead.", "x-addedInVersion" : "40", "operationId" : "post-donate", @@ -975,7 +976,7 @@ "tags" : [ "General" ], - "summary" : "Return the authentication result after doing a 3D Secure authentication only.", + "summary" : "Get the 3DS authentication result", "description" : "Return the authentication result after doing a 3D Secure authentication only.", "x-addedInVersion" : "51", "operationId" : "post-getAuthenticationResult", @@ -1089,7 +1090,7 @@ "tags" : [ "Modifications" ], - "summary" : "Refunds a captured payment.", + "summary" : "Refund a captured payment", "description" : "Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as long as their sum doesn't exceed the captured amount. Payments which have been authorised, but not captured, cannot be refunded, use the /cancel method instead.\n\nSome payment methods/gateways do not support partial/multiple refunds.\nA margin above the captured limit can be configured to cover shipping/handling costs.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).\n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds) endpoint under Checkout API instead.", "operationId" : "post-refund", "x-groupName" : "Modifications", @@ -1207,7 +1208,7 @@ "tags" : [ "General" ], - "summary" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", + "summary" : "Get the 3DS2 authentication result", "description" : "Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only.", "x-addedInVersion" : "40", "operationId" : "post-retrieve3ds2Result", @@ -1321,7 +1322,7 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a payment using your custom reference.", + "summary" : "Cancel an authorisation using your reference", "description" : "This endpoint allows you to cancel a payment if you do not have the PSP reference of the original payment request available.\n\nIn your call, refer to the original payment by using the `reference` that you specified in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel). \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce). If using a [newer integration](https://docs.adyen.com/online-payments), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels) endpoint under Checkout API instead.", "x-addedInVersion" : "30", "operationId" : "post-technicalCancel", @@ -1440,8 +1441,8 @@ "tags" : [ "Modifications" ], - "summary" : "Cancels a POS refund request before it has been completed.", - "description" : "This endpoint allows you to cancel the refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).", + "summary" : "Cancel an in-person refund", + "description" : "This endpoint allows you to cancel an unreferenced refund request before it has been completed.\n\nIn your call, you can refer to the original refund request either by using the `tenderReference`, or the `pspReference`. We recommend implementing based on the `tenderReference`, as this is generated for both offline and online transactions.\n\nFor more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).", "x-addedInVersion" : "25", "operationId" : "post-voidPendingRefund", "x-groupName" : "Modifications", @@ -4058,7 +4059,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4343,7 +4344,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4620,7 +4621,7 @@ "type" : "string" }, "shopperStatement" : { - "description" : "The text to be shown on the shopper's bank statement. To enable this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.", + "description" : "The text to be shown on the shopper's bank statement.\n We recommend sending a maximum of 22 characters, otherwise banks might truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /**.", "type" : "string" }, "socialSecurityNumber" : { @@ -4705,9 +4706,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -4998,7 +4996,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -5024,6 +5022,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -5288,34 +5290,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -5496,13 +5470,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -5860,7 +5835,7 @@ "value" : "05" } ], - "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)", + "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)", "enum" : [ "01", "02", diff --git a/json/PayoutService-v30.json b/json/PayoutService-v30.json index e3aea5e..2dd1f49 100644 --- a/json/PayoutService-v30.json +++ b/json/PayoutService-v30.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:05Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2126,9 +2127,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2283,7 +2281,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2309,6 +2307,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2561,34 +2563,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { diff --git a/json/PayoutService-v40.json b/json/PayoutService-v40.json index 71e3e9c..ad79a4f 100644 --- a/json/PayoutService-v40.json +++ b/json/PayoutService-v40.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2447,9 +2448,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2615,7 +2613,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2641,6 +2639,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2913,34 +2915,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3113,13 +3087,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v50.json b/json/PayoutService-v50.json index 30068cc..051964c 100644 --- a/json/PayoutService-v50.json +++ b/json/PayoutService-v50.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2457,9 +2458,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2625,7 +2623,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2651,6 +2649,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2923,34 +2925,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3131,13 +3105,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v51.json b/json/PayoutService-v51.json index 5f041b8..58c0bd9 100644 --- a/json/PayoutService-v51.json +++ b/json/PayoutService-v51.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2457,9 +2458,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2625,7 +2623,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2651,6 +2649,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2923,34 +2925,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3131,13 +3105,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v52.json b/json/PayoutService-v52.json index 14766fa..6807d5e 100644 --- a/json/PayoutService-v52.json +++ b/json/PayoutService-v52.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2457,9 +2458,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2625,7 +2623,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2651,6 +2649,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2923,34 +2925,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3131,13 +3105,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v64.json b/json/PayoutService-v64.json index 33b1f35..eddc023 100644 --- a/json/PayoutService-v64.json +++ b/json/PayoutService-v64.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2466,9 +2467,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2634,7 +2632,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2660,6 +2658,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2932,34 +2934,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3140,13 +3114,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v67.json b/json/PayoutService-v67.json index dda6c86..45d49e9 100644 --- a/json/PayoutService-v67.json +++ b/json/PayoutService-v67.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2466,9 +2467,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2634,7 +2632,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2660,6 +2658,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -2924,34 +2926,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3132,13 +3106,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], diff --git a/json/PayoutService-v68.json b/json/PayoutService-v68.json index 684d7f6..b854222 100644 --- a/json/PayoutService-v68.json +++ b/json/PayoutService-v68.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Payout API", "description" : "A set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\nBoth of these API credentials must be authenticated with [basic authentication](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).The following example shows how to authenticate your request when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.[YourCompany]\":\"YourBasicAuthenticationPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new API credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n", + "x-timestamp" : "2022-05-03T09:24:06Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -2629,9 +2630,6 @@ { "$ref" : "#/components/schemas/ResponseAdditionalDataCommon" }, - { - "$ref" : "#/components/schemas/ResponseAdditionalDataDeliveryAddress" - }, { "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments" }, @@ -2812,7 +2810,7 @@ "ResponseAdditionalDataCard" : { "properties" : { "cardBin" : { - "description" : "The Bank Identification Number of a credit card, which is the first six digits of a card number.\n\nExample: 521234", + "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234", "type" : "string" }, "cardHolderName" : { @@ -2838,6 +2836,10 @@ "cardSummary" : { "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.", "type" : "string" + }, + "issuerBin" : { + "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423", + "type" : "string" } } }, @@ -3102,34 +3104,6 @@ } } }, - "ResponseAdditionalDataDeliveryAddress" : { - "properties" : { - "deliveryAddress.city" : { - "description" : "The delivery address city passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.country" : { - "description" : "The delivery address country passed in the payment request.\n\nExample: NL", - "type" : "string" - }, - "deliveryAddress.houseNumberOrName" : { - "description" : "The delivery address house number or name passed in the payment request.", - "type" : "string" - }, - "deliveryAddress.postalCode" : { - "description" : "The delivery address postal code passed in the payment request.\n\nExample: 1011 DJ", - "type" : "string" - }, - "deliveryAddress.stateOrProvince" : { - "description" : "The delivery address state or province passed in the payment request.\n\nExample: NH", - "type" : "string" - }, - "deliveryAddress.street" : { - "description" : "The delivery address street passed in the payment request.", - "type" : "string" - } - } - }, "ResponseAdditionalDataInstallments" : { "properties" : { "installmentPaymentData.installmentType" : { @@ -3310,13 +3284,14 @@ "type" : "string" }, "type" : { - "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**.", + "description" : "The type of split.\nPossible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**.", "enum" : [ "BalanceAccount", "Commission", "Default", "MarketPlace", "PaymentFee", + "Remainder", "VAT", "Verification" ], @@ -3916,7 +3891,7 @@ "value" : "05" } ], - "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)", + "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)", "enum" : [ "01", "02", diff --git a/json/RecurringService-v25.json b/json/RecurringService-v25.json index 53e31f3..f356497 100644 --- a/json/RecurringService-v25.json +++ b/json/RecurringService-v25.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v25/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/RecurringService-v30.json b/json/RecurringService-v30.json index 3d23653..0c7555d 100644 --- a/json/RecurringService-v30.json +++ b/json/RecurringService-v30.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v30/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/RecurringService-v40.json b/json/RecurringService-v40.json index ea38aaa..0558fe0 100644 --- a/json/RecurringService-v40.json +++ b/json/RecurringService-v40.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v40/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/RecurringService-v49.json b/json/RecurringService-v49.json index 57d6242..457e00a 100644 --- a/json/RecurringService-v49.json +++ b/json/RecurringService-v49.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v49/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/RecurringService-v67.json b/json/RecurringService-v67.json index 0ec29c1..a6d5072 100644 --- a/json/RecurringService-v67.json +++ b/json/RecurringService-v67.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v67/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/RecurringService-v68.json b/json/RecurringService-v68.json index 1518346..acb3113 100644 --- a/json/RecurringService-v68.json +++ b/json/RecurringService-v68.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Recurring API", "description" : "The Recurring APIs allow you to manage and remove your tokens or saved payment details. Tokens should be created with validation during a payment request.\n\nFor more information, refer to our [Tokenization documentation](https://docs.adyen.com/online-payments/tokenization).\n## Authentication\nTo connect to the Recurring API, you must use your basic authentication credentials. For this, create your web service user, as described in [How to get the WS user password](https://docs.adyen.com/development-resources/api-credentials). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@Company.YourCompany\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nRecurring API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Recurring/v68/disable\n```", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/StoredValueService-v46.json b/json/StoredValueService-v46.json index 3c78252..390443c 100644 --- a/json/StoredValueService-v46.json +++ b/json/StoredValueService-v46.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Adyen Stored Value API", "description" : "A set of API endpoints to manage stored value products.", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/TestCardService-v1.json b/json/TestCardService-v1.json index c7cb22b..b569317 100644 --- a/json/TestCardService-v1.json +++ b/json/TestCardService-v1.json @@ -9,7 +9,8 @@ "version" : "1", "x-publicVersion" : true, "title" : "Adyen Test Cards API", - "description" : "The Test Cards API provides endpoints for generating custom test card numbers. For more information, refer to [Custom test cards](https://docs.adyen.com/development-resources/test-cards/create-test-cards) documentation.", + "description" : "The Test Cards API provides endpoints for generating custom test card numbers. For more information, refer to [Custom test cards](https://docs.adyen.com/development-resources/testing/create-test-cards) documentation.", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/TfmAPIService-v1.json b/json/TfmAPIService-v1.json index 010a8ad..3f65479 100644 --- a/json/TfmAPIService-v1.json +++ b/json/TfmAPIService-v1.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "POS Terminal Management API", "description" : "This API provides endpoints for managing your point-of-sale (POS) payment terminals. You can use the API to obtain information about a specific terminal, retrieve overviews of your terminals and stores, and assign terminals to a merchant account or store.\n\nFor more information, refer to [Assign terminals](https://docs.adyen.com/point-of-sale/automating-terminal-management/assign-terminals-api).\n\n## Authentication\nEach request to the Terminal Management API must be signed with an API key. For this, obtain an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). Then set this key to the `X-API-Key` header value, for example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: Your_API_key\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nTerminal Management API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://postfmapi-test.adyen.com/postfmapi/terminal/v1/getTerminalsUnderAccount\n```", + "x-timestamp" : "2022-05-03T09:24:09Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", diff --git a/json/TransferService-v1.json b/json/TransferService-v1.json index c9fe0d9..ca2fb91 100644 --- a/json/TransferService-v1.json +++ b/json/TransferService-v1.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Balance Platform Transfers API", "description" : "The Balance Platform Transfers API provides an endpoint that you can use to move funds within your balance platform, or to send funds from your balance platform to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments).\n\nFor information on how the API is used in Adyen Issuing, refer to [Manage funds](https://docs.adyen.com/issuing/manage-funds#transfer).\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\":\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Roles and permissions\nTo use the Balance Platforms Transfers API, you need an additional role for your API credential. Transfers must also be enabled for the source balance account. Your Adyen contact will set up the roles and permissions for you.\n## Versioning\nThe Balance Platform Transfers API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/btl/v1\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the username and password to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-03-21T17:38:03Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -18,25 +19,25 @@ } }, "x-groups" : [ - "General" + "Transfers" ], "tags" : [ { - "name" : "General" + "name" : "Transfers" } ], "paths" : { "/transfers" : { "post" : { "tags" : [ - "General" + "Transfers" ], "summary" : "Transfer funds", - "description" : "Starts a transfer request to move funds within your balance platform, or send funds to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments). Adyen sends the outcome of the transfer request through webhooks.\n\nTo use this endpoint, you need an additional role for your API credential and transfers must be enabled for the source balance account. Your Adyen contact will set these up for you.", + "description" : "Starts a transfer request to move funds within your balance platform, or send funds to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/transferInstruments). Adyen sends the outcome of the transfer request through webhooks.\n\nTo use this endpoint, you need an additional role for your API credential and transfers must be enabled for the source balance account. Your Adyen contact will set these up for you.", "x-addedInVersion" : "1", "operationId" : "post-transfers", - "x-groupName" : "General", - "x-sortIndex" : 0, + "x-groupName" : "Transfers", + "x-sortIndex" : 1, "security" : [ { "ApiKeyAuth" : [ @@ -46,6 +47,14 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferInfoOld" } @@ -56,6 +65,14 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account-200" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferOld" } @@ -116,7 +133,7 @@ "type" : "string" }, "country" : { - "description" : "The two-character country code as defined in ISO-3166-1 alpha-2. For example, **US**.\n> If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.", + "description" : "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.\n> If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.", "type" : "string" }, "houseNumberOrName" : { @@ -128,7 +145,7 @@ "type" : "string" }, "stateOrProvince" : { - "description" : "State or province codes as defined in ISO 3166-2. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.", + "description" : "The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.", "type" : "string" }, "street" : { @@ -445,6 +462,7 @@ "type" : "string" }, "counterparty" : { + "x-addedInVersion" : "1", "description" : "Contains information about the other party in the transaction.", "$ref" : "#/components/schemas/Counterparty" }, @@ -519,6 +537,7 @@ "paymentCost", "refund", "refundReversal", + "reserveAdjustment", "secondChargeback" ], "type" : "string" @@ -663,7 +682,58 @@ } }, "examples" : { - + "post-transfers-payout-to-balance-account" : { + "summary" : "Transfer funds to another balance account", + "description" : "Example request to transfer funds to another balance account", + "value" : { + "source" : { + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4" + }, + "destination" : { + "balanceAccountId" : "BAB1234567890ABC123456789" + }, + "amount" : { + "value" : 10000, + "currency" : "EUR" + }, + "reference" : "Your internal reference for the transfer", + "description" : "Your description" + } + }, + "post-transfers-payout-to-balance-account-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "resultCode" : "Authorised" + } + }, + "post-transfers-payout-to-transfer-instrument" : { + "summary" : "Pay out to a transfer instrument", + "description" : "Example request to pay out to a transfer instrument", + "value" : { + "source" : { + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4" + }, + "destination" : { + "transferInstrumentId" : "SE1234567890ABC1234567890" + }, + "amount" : { + "value" : 10000, + "currency" : "EUR" + }, + "reference" : "Your internal reference for the transfer", + "description" : "Your description" + } + }, + "post-transfers-payout-to-transfer-instrument-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "resultCode" : "Authorised" + } + } } } } \ No newline at end of file diff --git a/json/TransferService-v2.json b/json/TransferService-v2.json index 9a3686c..e334973 100644 --- a/json/TransferService-v2.json +++ b/json/TransferService-v2.json @@ -10,6 +10,7 @@ "x-publicVersion" : true, "title" : "Balance Platform Transfers API", "description" : "The Balance Platform Transfers API provides an endpoint that you can use to move funds within your balance platform, or to send funds from your balance platform to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments).\n\nFor information on how the API is used in Adyen Issuing, refer to [Manage funds](https://docs.adyen.com/issuing/manage-funds#transfer).\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\":\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Roles and permissions\nTo use the Balance Platforms Transfers API, you need an additional role for your API credential. Transfers must also be enabled for the source balance account. Your Adyen contact will set up the roles and permissions for you.\n## Versioning\nThe Balance Platform Transfers API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/btl/v1\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the username and password to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-03-22T20:02:57Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -18,7 +19,7 @@ } }, "x-groups" : [ - "General", + "Transfers", "Transactions" ], "tags" : [ @@ -26,7 +27,7 @@ "name" : "Transactions" }, { - "name" : "General" + "name" : "Transfers" } ], "paths" : { @@ -36,7 +37,7 @@ "Transactions" ], "summary" : "Get all transactions", - "description" : "Returns transactions that match the query parameters.This endpoint supports cursor-based pagination. The response returns the first page of results, and returns links to the next page when applicable. You can use the links to page through the results. The response also returns links to the previous page when applicable.", + "description" : "Returns transactions that match the query parameters. This endpoint supports cursor-based pagination. The response returns the first page of results, and returns links to the next page when applicable. You can use the links to page through the results. The response also returns links to the previous page when applicable.", "x-addedInVersion" : "1", "operationId" : "get-transactions", "x-groupName" : "Transactions", @@ -119,6 +120,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-transactions-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/TransactionSearchResponse" } @@ -201,6 +207,11 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-transactions-id-success-200" + } + }, "schema" : { "$ref" : "#/components/schemas/Transaction" } @@ -254,14 +265,14 @@ "/transfers" : { "post" : { "tags" : [ - "General" + "Transfers" ], "summary" : "Transfer funds", - "description" : "Starts a request to transfer funds to [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts), [transfer instruments](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments), or bank accounts. Adyen sends the outcome of the transfer request through webhooks.\n\nTo use this endpoint, you need an additional role for your API credential and transfers must be enabled for the source balance account. Your Adyen contact will set these up for you.", + "description" : "Starts a request to transfer funds to [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts), [transfer instruments](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments), or third-party bank accounts. Adyen sends the outcome of the transfer request through webhooks.\n\nTo use this endpoint, you need an additional role for your API credential and transfers must be enabled for the source balance account. Your Adyen contact will set these up for you.", "x-addedInVersion" : "2", "operationId" : "post-transfers", - "x-groupName" : "General", - "x-sortIndex" : 0, + "x-groupName" : "Transfers", + "x-sortIndex" : 1, "security" : [ { "ApiKeyAuth" : [ @@ -271,6 +282,17 @@ "requestBody" : { "content" : { "application/json" : { + "examples" : { + "payout-local-transfer-sepa" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-sepa" + }, + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument" + } + }, "schema" : { "$ref" : "#/components/schemas/TransferInfo" } @@ -281,6 +303,17 @@ "200" : { "content" : { "application/json" : { + "examples" : { + "payout-local-transfer-sepa" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-sepa-200" + }, + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account-200" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument-200" + } + }, "schema" : { "$ref" : "#/components/schemas/Transfer" } @@ -392,7 +425,7 @@ "properties" : { "priority" : { "x-addedInVersion" : "1", - "description" : "Sets the priority for the bank transfer. If you don't provide this in the request, Adyen sets the optimal priority.\n\n Possible values:\n\n * **regular**: For normal, low-value transactions.\n\n* **fast**: For high-priority, low-value transactions.\n\n* **wire**: For high-priority, high-value transactions.\n\n", + "description" : "The priority for the bank transfer. This sets the speed at which the transfer is sent and the fees that you have to pay. If you don't provide this in the request, Adyen sets the optimal priority.\n\nPossible values:\n\n* **regular**: For normal, low-value transactions.\n\n* **fast**: Faster way to transfer funds but has higher fees. Recommended for high-priority, low-value transactions.\n\n* **wire**: Fastest way to transfer funds but has the highest fees. Recommended for high-priority, high-value transactions.\n\n", "enum" : [ "fast", "regular", @@ -676,6 +709,7 @@ "type" : "string" }, "counterparty" : { + "x-addedInVersion" : "1", "description" : "Contains information about the other party in the transaction.", "$ref" : "#/components/schemas/Counterparty" }, @@ -750,6 +784,7 @@ "paymentCost", "refund", "refundReversal", + "reserveAdjustment", "secondChargeback" ], "type" : "string" @@ -829,8 +864,8 @@ "type" : "string" }, "id" : { - "x-addedInVersion" : "2", - "description" : "Unique identifier of the transfer.", + "description" : "The ID of the resource.", + "readOnly" : true, "type" : "string" }, "paymentInstrumentId" : { @@ -855,7 +890,7 @@ }, "referenceForBeneficiary" : { "x-addedInVersion" : "2", - "description" : "A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**.Maximum length: 80 characters.", + "description" : " A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both the source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. Maximum length: 80 characters.", "maxLength" : 80, "type" : "string" }, @@ -871,7 +906,6 @@ }, "required" : [ "amount", - "id", "counterparty", "status" ] @@ -893,7 +927,7 @@ "$ref" : "#/components/schemas/Bank" }, "counterparty" : { - "description" : "The recipient of the funds transfer. This can be a balance account, a transfer instrument, or a bank account.", + "description" : "The recipient of the funds transfer. A bank account, a balance account, or a transfer instrument is required.", "$ref" : "#/components/schemas/CounterpartyInfo" }, "description" : { @@ -901,6 +935,11 @@ "description" : "A human-readable description for the transfer. You can use alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated.", "type" : "string" }, + "id" : { + "description" : "The ID of the resource.", + "readOnly" : true, + "type" : "string" + }, "paymentInstrumentId" : { "description" : "Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id).", "type" : "string" @@ -913,7 +952,7 @@ }, "referenceForBeneficiary" : { "x-addedInVersion" : "2", - "description" : "A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**.Maximum length: 80 characters.", + "description" : " A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both the source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. Maximum length: 80 characters.", "maxLength" : 80, "type" : "string" } @@ -936,7 +975,248 @@ } }, "examples" : { - + "get-transactions-id-success-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transaction", + "value" : { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : 9887 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-14T12:01:00+01:00", + "category" : "bank", + "counterparty" : { + "balanceAccountId" : "NL29ADYX0000000001" + }, + "createdAt" : "2022-03-14T12:01:00+01:00", + "description" : "YOUR_DESCRIPTION", + "id" : "IZK7C25U7DYVX03Y", + "instructedAmount" : { + "currency" : "EUR", + "value" : 9887 + }, + "reference" : "2L6C6B5U7DYULLXC", + "referenceForBeneficiary" : "YOUR_REFERENCE_FOR_BENEFICIARY", + "status" : "booked", + "transferId" : "2QP32A5U7IWC5WKG", + "type" : "bankTransfer", + "valueDate" : "2022-03-14T12:01:00+01:00" + } + }, + "get-transactions-success-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a list of transactions", + "value" : { + "data" : [ + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -9 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-11T11:21:24+01:00", + "category" : "internal", + "createdAt" : "2022-03-11T11:21:24+01:00", + "id" : "1VVF0D5U66PIUIVP", + "instructedAmount" : { + "currency" : "EUR", + "value" : -9 + }, + "reference" : "REFERENCE_46e8c40e", + "status" : "booked", + "transferId" : "1VVF0D5U66PIUIVP", + "type" : "fee", + "valueDate" : "2022-03-11T11:21:24+01:00" + }, + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -46 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-12T14:22:52+01:00", + "category" : "internal", + "createdAt" : "2022-03-12T14:22:52+01:00", + "id" : "1WEPGD5U6MS1CFK3", + "instructedAmount" : { + "currency" : "EUR", + "value" : -46 + }, + "reference" : "YOUR_REFERENCE", + "status" : "booked", + "transferId" : "1WEPGD5U6MS1CFK3", + "type" : "fee", + "valueDate" : "2022-03-12T14:22:52+01:00" + }, + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -8 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-14T21:00:48+01:00", + "createdAt" : "2022-03-14T15:00:00+01:00", + "description" : "YOUR_DESCRIPTION_2", + "id" : "2QP32A5U7IWC5WKG", + "instructedAmount" : { + "currency" : "EUR", + "value" : -8 + }, + "status" : "booked", + "valueDate" : "2022-03-14T21:00:48+01:00" + } + ], + "_links" : { + "next" : { + "href" : "https://balanceplatform-api-test.adyen.com/btl/v2/transactions?balancePlatform=Bastronaut&createdUntil=2022-03-21T00%3A00%3A00Z&createdSince=2022-03-11T00%3A00%3A00Z&limit=3&cursor=S2B-TSAjOkIrYlIlbjdqe0RreHRyM32lKRSxubXBHRkhHL2E32XitQQz5SfzpucD5HbHwpM1p6NDR1eXVQLFF6MmY33J32sobDxQYT90MHIud1hwLnd6JitcX32xJ" + } + } + } + }, + "post-transfers-payout-local-transfer-sepa" : { + "summary" : "Make a SEPA funds transfer", + "description" : "Example request to make a US local funds transfer", + "value" : { + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "bankAccount" : { + "iban" : "NL13TEST0123456789", + "ownerName" : { + "fullName" : "A. Klaassen" + } + } + }, + "bank" : { + "priority" : "regular" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description" + } + }, + "post-transfers-payout-local-transfer-sepa-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "bankAccount" : { + "iban" : "NL13TEST0123456789", + "ownerName" : { + "fullName" : "A. Klaassen" + } + } + }, + "bank" : { + "priority" : "regular" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-to-balance-account" : { + "summary" : "Transfer funds to another balance account", + "description" : "Example request to transfer funds to another balance account", + "value" : { + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "balanceAccountId" : "BAB1234567890ABC123456789" + }, + "amount" : { + "value" : 10000, + "currency" : "EUR" + }, + "reference" : "Your internal reference for the transfer", + "description" : "Your description" + } + }, + "post-transfers-payout-to-balance-account-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "currency" : "EUR", + "value" : 10000 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "balanceAccountId" : "BA32272223222B5LPRFDW7J9G" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-to-transfer-instrument" : { + "summary" : "Pay out to a transfer instrument", + "description" : "Example request to pay out to a transfer instrument", + "value" : { + "amount" : { + "value" : 80000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "transferInstrumentId" : "SE1234567890ABC1234567890" + }, + "bank" : { + "priority" : "fast" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description" + } + }, + "post-transfers-payout-to-transfer-instrument-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 80000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "counterparty" : { + "transferInstrumentId" : "SE1234567890ABC1234567890" + }, + "bank" : { + "priority" : "fast" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + } } } } \ No newline at end of file diff --git a/json/TransferService-v3.json b/json/TransferService-v3.json new file mode 100644 index 0000000..281a4bd --- /dev/null +++ b/json/TransferService-v3.json @@ -0,0 +1,1684 @@ +{ + "openapi" : "3.1.0", + "servers" : [ + { + "url" : "https://balanceplatform-api-test.adyen.com/btl/v3" + } + ], + "info" : { + "version" : "3", + "x-publicVersion" : true, + "title" : "Balance Platform Transfers API", + "description" : "The Balance Platform Transfers API provides an endpoint that you can use to move funds within your balance platform, or to send funds from your balance platform to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments).\n\nFor information on how the API is used in Adyen Issuing, refer to [Manage funds](https://docs.adyen.com/issuing/manage-funds#transfer).\n\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\":\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Roles and permissions\nTo use the Balance Platforms Transfers API, you need an additional role for your API credential. Transfers must also be enabled for the source balance account. Your Adyen contact will set up the roles and permissions for you.\n## Versioning\nThe Balance Platform Transfers API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/btl/v1\n```\n## Going live\nWhen going live, your Adyen contact will provide your API credential for the live environment. You can then use the username and password to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live).", + "x-timestamp" : "2022-05-06T17:19:31Z", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://www.adyen.help/hc/en-us/community/topics", + "email" : "developer-experience@adyen.com" + } + }, + "x-groups" : [ + "Transfers", + "Transactions" + ], + "tags" : [ + { + "name" : "Transactions" + }, + { + "name" : "Transfers" + } + ], + "paths" : { + "/transactions" : { + "get" : { + "tags" : [ + "Transactions" + ], + "summary" : "Get all transactions", + "description" : "Returns transactions that match the query parameters. This endpoint supports cursor-based pagination. The response returns the first page of results, and returns links to the next page when applicable. You can use the links to page through the results. The response also returns links to the previous page when applicable.", + "x-addedInVersion" : "1", + "operationId" : "get-transactions", + "x-groupName" : "Transactions", + "x-sortIndex" : 1, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id).", + "name" : "balancePlatform", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/accountHolders/{id}__queryParam_id).", + "name" : "accountHolderId", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__queryParam_id).", + "name" : "balanceAccountId", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "The `cursor` returned in the links of the previous response.", + "name" : "cursor", + "in" : "query", + "required" : false, + "schema" : { + "type" : "string" + } + }, + { + "description" : "Only include transactions that have been created on or after this point in time. The value must be in ISO 8601 format. For example, **2021-05-30T15:07:40Z**.", + "name" : "createdSince", + "in" : "query", + "required" : true, + "schema" : { + "format" : "date-time", + "type" : "string" + } + }, + { + "description" : "Only include transactions that have been created on or before this point in time. The value must be in ISO 8601 format. For example, **2021-05-30T15:07:40Z**.", + "name" : "createdUntil", + "in" : "query", + "required" : true, + "schema" : { + "format" : "date-time", + "type" : "string" + } + }, + { + "description" : "The number of items returned per page, maximum of 100 items. By default, the response returns 10 items per page.", + "name" : "limit", + "in" : "query", + "required" : false, + "schema" : { + "format" : "int32", + "type" : "integer" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-transactions-success-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/TransactionSearchResponse" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/transactions/{id}" : { + "get" : { + "tags" : [ + "Transactions" + ], + "summary" : "Get a transaction", + "description" : "Returns a transaction.", + "x-addedInVersion" : "1", + "operationId" : "get-transactions-id", + "x-groupName" : "Transactions", + "x-sortIndex" : 2, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "parameters" : [ + { + "description" : "Unique identifier of the transaction.", + "name" : "id", + "in" : "path", + "required" : true, + "schema" : { + "type" : "string" + } + } + ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "success" : { + "$ref" : "#/components/examples/get-transactions-id-success-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/Transaction" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + }, + "/transfers" : { + "post" : { + "tags" : [ + "Transfers" + ], + "summary" : "Transfer funds", + "description" : "Starts a request to transfer funds to [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts), [transfer instruments](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments), or third-party bank accounts. Adyen sends the outcome of the transfer request through webhooks.\n\nTo use this endpoint, you need an additional role for your API credential and transfers must be enabled for the source balance account. Your Adyen contact will set these up for you.", + "x-addedInVersion" : "2", + "operationId" : "post-transfers", + "x-groupName" : "Transfers", + "x-sortIndex" : 1, + "security" : [ + { + "ApiKeyAuth" : [ + ] + } + ], + "requestBody" : { + "content" : { + "application/json" : { + "examples" : { + "payout-cross-border" : { + "$ref" : "#/components/examples/post-transfers-payout-cross-border" + }, + "payout-local-transfer-sepa" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-sepa" + }, + "payout-local-transfer-us" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-us" + }, + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument" + } + }, + "schema" : { + "$ref" : "#/components/schemas/TransferInfo" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "examples" : { + "payout-cross-border" : { + "$ref" : "#/components/examples/post-transfers-payout-cross-border-200" + }, + "payout-local-transfer-sepa" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-sepa-200" + }, + "payout-local-transfer-us" : { + "$ref" : "#/components/examples/post-transfers-payout-local-transfer-us-200" + }, + "payout-to-balance-account" : { + "$ref" : "#/components/examples/post-transfers-payout-to-balance-account-200" + }, + "payout-to-transfer-instrument" : { + "$ref" : "#/components/examples/post-transfers-payout-to-transfer-instrument-200" + } + }, + "schema" : { + "$ref" : "#/components/schemas/Transfer" + } + } + }, + "description" : "OK - the request has succeeded." + }, + "401" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unauthorized - authentication required." + }, + "403" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Forbidden - insufficient permissions to process the request." + }, + "422" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Unprocessable Entity - a request validation error." + }, + "500" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RestServiceError" + } + } + }, + "description" : "Internal Server Error - the server could not process the request." + } + } + } + } + }, + "components" : { + "schemas" : { + "AdditionalBankIdentification" : { + "properties" : { + "code" : { + "description" : "The value of the additional bank identification.", + "type" : "string" + }, + "type" : { + "description" : "The type of additional bank identification, depending on the country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or spaces.", + "enum" : [ + "gbSortCode", + "usRoutingNumber" + ], + "type" : "string" + } + } + }, + "Address2" : { + "properties" : { + "city" : { + "description" : "The name of the city.", + "type" : "string" + }, + "country" : { + "description" : "The two-character ISO 3166-1 alpha-2 country code. For example, **US**.\n>If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.", + "type" : "string" + }, + "line1" : { + "description" : "First line of the street address.", + "type" : "string" + }, + "line2" : { + "description" : "Second line of the street address.", + "type" : "string" + }, + "postalCode" : { + "description" : "The postal code.\nMaximum length:\n* 5 digits for an address in the US.\n* 10 characters for an address in all other countries.", + "type" : "string" + }, + "stateOrProvince" : { + "description" : "The two-letter ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.", + "type" : "string" + } + }, + "required" : [ + "country" + ] + }, + "Amount" : { + "properties" : { + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", + "maxLength" : 3, + "minLength" : 3, + "type" : "string" + }, + "value" : { + "description" : "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "value", + "currency" + ] + }, + "BankAccountV3" : { + "properties" : { + "accountHolder" : { + "description" : "Information about the owner of the bank account.", + "$ref" : "#/components/schemas/PartyIdentification2" + }, + "accountIdentification" : { + "description" : "Contains the bank account details. The fields required in this object depend on the country of the bank account and the currency of the transfer.", + "oneOf" : [ + { + "$ref" : "#/components/schemas/CZLocalAccountIdentification" + }, + { + "$ref" : "#/components/schemas/IbanAccountIdentification" + }, + { + "$ref" : "#/components/schemas/NumberAndBicAccountIdentification" + }, + { + "$ref" : "#/components/schemas/PLLocalAccountIdentification" + }, + { + "$ref" : "#/components/schemas/SELocalAccountIdentification" + }, + { + "$ref" : "#/components/schemas/UKLocalAccountIdentification" + }, + { + "$ref" : "#/components/schemas/USLocalAccountIdentification" + } + ] + } + }, + "required" : [ + "accountIdentification", + "accountHolder" + ] + }, + "CZLocalAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The 2-16 digit bank account number (Číslo účtu) in the following format:\n\n- The optional prefix (předčíslí).\n\n- The required second part (základní část) which must be at least two non-zero digits.\n\nExamples:\n\n- **19-123457** (with prefix)\n\n- **123457** (without prefix)\n\n- **000019-0000123457** (with prefix, normalized)\n\n- **000000-0000123457** (without prefix, normalized)", + "maxLength" : 17, + "minLength" : 2, + "type" : "string" + }, + "bankCode" : { + "description" : "The 4-digit bank code (Kód banky), without separators or whitespace.", + "maxLength" : 4, + "minLength" : 4, + "type" : "string" + }, + "type" : { + "default" : "czLocal", + "description" : "**czLocal**", + "enum" : [ + "czLocal" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber", + "bankCode" + ] + }, + "CounterpartyInfoV3" : { + "properties" : { + "balanceAccountId" : { + "description" : "Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).", + "type" : "string" + }, + "bankAccount" : { + "description" : "Contains information about the bank account.", + "$ref" : "#/components/schemas/BankAccountV3" + }, + "transferInstrumentId" : { + "description" : "Unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).", + "type" : "string" + } + } + }, + "CounterpartyV3" : { + "properties" : { + "balanceAccountId" : { + "description" : "Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).", + "type" : "string" + }, + "bankAccount" : { + "description" : "Contains information about the bank account.", + "$ref" : "#/components/schemas/BankAccountV3" + }, + "merchant" : { + "description" : "Contains information about the merchant.", + "$ref" : "#/components/schemas/MerchantData" + }, + "transferInstrumentId" : { + "description" : "Unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).", + "type" : "string" + } + } + }, + "IbanAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "iban" : { + "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard.", + "type" : "string" + }, + "type" : { + "default" : "iban", + "description" : "**iban**", + "enum" : [ + "iban" + ], + "type" : "string" + } + }, + "required" : [ + "iban" + ] + }, + "InvalidField" : { + "properties" : { + "message" : { + "description" : "Description of the validation error.", + "type" : "string" + }, + "name" : { + "description" : "The field that has an invalid value.", + "type" : "string" + }, + "value" : { + "description" : "The invalid value.", + "type" : "string" + } + }, + "required" : [ + "name", + "value", + "message" + ] + }, + "JSONObject" : { + "properties" : { + "paths" : { + "items" : { + "$ref" : "#/components/schemas/JSONPath" + }, + "type" : "array" + }, + "rootPath" : { + "$ref" : "#/components/schemas/JSONPath" + } + } + }, + "JSONPath" : { + "properties" : { + "content" : { + "items" : { + "type" : "string" + }, + "type" : "array" + } + } + }, + "Link" : { + "properties" : { + "href" : { + "type" : "string" + } + } + }, + "Links" : { + "properties" : { + "next" : { + "description" : "Contains a link to the next page.", + "$ref" : "#/components/schemas/Link" + }, + "prev" : { + "description" : "Contains a link to the previous page.", + "$ref" : "#/components/schemas/Link" + } + } + }, + "MerchantData" : { + "properties" : { + "mcc" : { + "description" : "The merchant category code.", + "type" : "string" + }, + "merchantId" : { + "description" : "The merchant identifier.", + "type" : "string" + }, + "nameLocation" : { + "description" : "Contains the merchant's name and location.", + "$ref" : "#/components/schemas/NameLocation" + }, + "postalCode" : { + "description" : "The merchant postal code.", + "type" : "string" + } + } + }, + "NameLocation" : { + "properties" : { + "city" : { + "description" : "The city where the merchant is located.", + "type" : "string" + }, + "country" : { + "description" : "The country where the merchant is located in [three-letter country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) format.", + "type" : "string" + }, + "countryOfOrigin" : { + "description" : "The home country in [three-digit country code](https://en.wikipedia.org/wiki/ISO_3166-1_numeric) format, used for government-controlled merchants such as embassies.", + "type" : "string" + }, + "name" : { + "description" : "The name of the merchant's shop or service.", + "type" : "string" + }, + "rawData" : { + "description" : "The raw data.", + "type" : "string" + }, + "state" : { + "description" : "The state where the merchant is located.", + "type" : "string" + } + } + }, + "NumberAndBicAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The bank account number, without separators or whitespace. The length and format depends on the bank or country.", + "maxLength" : 34, + "type" : "string" + }, + "additionalBankIdentification" : { + "description" : "Additional identification codes of the bank. Some banks may require these identifiers for cross-border transfers.", + "$ref" : "#/components/schemas/AdditionalBankIdentification" + }, + "bic" : { + "description" : "The bank's 8 or 11 character BIC or SWIFT code.", + "maxLength" : 11, + "minLength" : 8, + "type" : "string" + }, + "type" : { + "default" : "numberAndBic", + "description" : "**numberAndBic**", + "enum" : [ + "numberAndBic" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber", + "bic" + ] + }, + "PLLocalAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The 16-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)), without separators or whitespace.", + "maxLength" : 16, + "minLength" : 16, + "type" : "string" + }, + "type" : { + "default" : "plLocal", + "description" : "**plLocal**", + "enum" : [ + "plLocal" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber" + ] + }, + "PartyIdentification2" : { + "properties" : { + "address" : { + "description" : "Address of the bank account owner.", + "$ref" : "#/components/schemas/Address2" + }, + "firstName" : { + "description" : "First name of the individual. Required when `type` is **individual**.", + "type" : "string" + }, + "fullName" : { + "description" : "The name of the entity.", + "type" : "string" + }, + "lastName" : { + "description" : "Last name of the individual. Required when `type` is **individual**.", + "type" : "string" + }, + "type" : { + "default" : "**unknown**", + "description" : "The type of entity that owns the bank account.\n\n Possible values: **individual**, **organization**, or **unknown**.", + "enum" : [ + "individual", + "organization", + "unknown" + ], + "type" : "string" + } + }, + "required" : [ + "fullName" + ] + }, + "RestServiceError" : { + "properties" : { + "detail" : { + "description" : "A human-readable explanation specific to this occurrence of the problem.", + "type" : "string" + }, + "errorCode" : { + "description" : "A code that identifies the problem type.", + "type" : "string" + }, + "errorType" : { + "description" : "A URI that identifies the problem type, pointing to human-readable documentation on this problem type.", + "type" : "string" + }, + "instance" : { + "description" : "A unique URI that identifies the specific occurrence of the problem.", + "type" : "string" + }, + "invalidFields" : { + "description" : "Detailed explanation of each validation error, when applicable.", + "items" : { + "$ref" : "#/components/schemas/InvalidField" + }, + "type" : "array" + }, + "requestId" : { + "description" : "A unique reference for the request, essentially the same as `pspReference`.", + "type" : "string" + }, + "response" : { + "description" : "JSON response payload.", + "$ref" : "#/components/schemas/JSONObject" + }, + "status" : { + "description" : "The HTTP status code.", + "format" : "int32", + "type" : "integer" + }, + "title" : { + "description" : "A short, human-readable summary of the problem type.", + "type" : "string" + } + }, + "required" : [ + "errorType", + "errorCode", + "title", + "detail", + "status" + ] + }, + "SELocalAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The 7-10 digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)) without the clearing number, separators, or whitespace.", + "maxLength" : 10, + "minLength" : 7, + "type" : "string" + }, + "clearingNumber" : { + "description" : "The 4-5 digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)), without separators or spaces.", + "maxLength" : 5, + "minLength" : 4, + "type" : "string" + }, + "type" : { + "default" : "seLocal", + "description" : "**seLocal**", + "enum" : [ + "seLocal" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber", + "clearingNumber" + ] + }, + "Transaction" : { + "properties" : { + "accountHolderId" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the account holder.", + "type" : "string" + }, + "amount" : { + "x-addedInVersion" : "1", + "description" : "The amount.", + "$ref" : "#/components/schemas/Amount" + }, + "balanceAccountId" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the balance account.", + "type" : "string" + }, + "balancePlatform" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the balance platform.", + "type" : "string" + }, + "bookingDate" : { + "x-addedInVersion" : "1", + "description" : "The date the transaction was booked to the balance account.", + "format" : "date-time", + "type" : "string" + }, + "category" : { + "x-addedInVersion" : "1", + "description" : "The category of the transaction indicating the type of activity.\n\n Possible values:\n\n* **platformPayment**: The transaction is a payment or payment modification made with an Adyen merchant account.\n\n* **internal**: The transaction resulted from an internal adjustment such as a deposit correction or invoice deduction.\n\n* **bank**: The transaction is a bank-related activity, such as sending a payout or receiving funds.\n\n* **issuedCard**: The transaction is a card-related activity, such as using an Adyen-issued card to pay online.\n\n", + "enum" : [ + "bank", + "internal", + "issuedCard", + "platformPayment" + ], + "type" : "string" + }, + "counterparty" : { + "x-addedInVersion" : "3", + "description" : "Contains information about the other party in the transaction.", + "$ref" : "#/components/schemas/CounterpartyV3" + }, + "createdAt" : { + "x-addedInVersion" : "1", + "description" : "The date the transaction was created.", + "format" : "date-time", + "type" : "string" + }, + "description" : { + "x-addedInVersion" : "1", + "description" : "The `description` from the `/transfers` request.", + "type" : "string" + }, + "id" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the transaction.", + "type" : "string" + }, + "instructedAmount" : { + "x-addedInVersion" : "1", + "description" : "The amount that the sender instructed their bank to send. This can be higher than `amount.value` when their bank deducts costs for the transfer.", + "$ref" : "#/components/schemas/Amount" + }, + "paymentInstrumentId" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the payment instrument that was used for the transaction.", + "type" : "string" + }, + "reference" : { + "x-addedInVersion" : "1", + "description" : "The [`reference`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_reference) from the from the `/transfers` request. If you haven't provided any, Adyen generates a unique reference.", + "type" : "string" + }, + "referenceForBeneficiary" : { + "x-addedInVersion" : "1", + "description" : "The reference sent to or received from the counterparty.\n\n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary) from the [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_referenceForBeneficiary) request.\n\n * For incoming funds, this is the reference from the sender.", + "type" : "string" + }, + "status" : { + "x-addedInVersion" : "1", + "description" : "The status of the transaction.\n\n Possible values:\n\n* **pending**: The transaction is still pending.\n\n* **booked**: The transaction has been booked to the balance account.\n\n", + "enum" : [ + "booked", + "pending" + ], + "type" : "string" + }, + "transferId" : { + "x-addedInVersion" : "1", + "description" : "Unique identifier of the related transfer.", + "type" : "string" + }, + "type" : { + "x-addedInVersion" : "1", + "description" : "The type of the transaction.\n\n Possible values: **payment**, **capture**, **captureReversal**, **refund** **refundReversal**, **chargeback**, **chargebackReversal**, **secondChargeback**, **atmWithdrawal**, **atmWithdrawalReversal**, **internalTransfer**, **manualCorrection**, **invoiceDeduction**, **depositCorrection**, **bankTransfer**, **miscCost**, **paymentCost**, **fee**", + "enum" : [ + "atmWithdrawal", + "atmWithdrawalReversal", + "bankTransfer", + "capture", + "captureReversal", + "chargeback", + "chargebackReversal", + "depositCorrection", + "fee", + "internalTransfer", + "invoiceDeduction", + "leftover", + "manualCorrection", + "miscCost", + "payment", + "paymentCost", + "refund", + "refundReversal", + "reserveAdjustment", + "secondChargeback" + ], + "type" : "string" + }, + "valueDate" : { + "x-addedInVersion" : "1", + "description" : "The date the transfer amount becomes available in the balance account.", + "format" : "date-time", + "type" : "string" + } + }, + "required" : [ + "id", + "transferId", + "balancePlatform", + "accountHolderId", + "balanceAccountId", + "paymentInstrumentId", + "amount", + "referenceForBeneficiary", + "reference", + "instructedAmount", + "status", + "createdAt", + "bookingDate", + "valueDate", + "counterparty" + ] + }, + "TransactionSearchResponse" : { + "properties" : { + "_links" : { + "description" : "Contains links to the next and previous page whenever applicable.", + "$ref" : "#/components/schemas/Links" + }, + "data" : { + "description" : "Contains the transactions that match the query parameters.", + "items" : { + "$ref" : "#/components/schemas/Transaction" + }, + "type" : "array" + } + } + }, + "Transfer" : { + "properties" : { + "amount" : { + "x-addedInVersion" : "1", + "description" : "The amount of the transfer.", + "$ref" : "#/components/schemas/Amount" + }, + "balanceAccountId" : { + "description" : "Unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).", + "type" : "string" + }, + "category" : { + "x-addedInVersion" : "3", + "description" : "The type of transfer.\n\nPossible values:\n\n - **bank**: Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account.\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform.", + "enum" : [ + "bank", + "internal" + ], + "type" : "string" + }, + "counterparty" : { + "x-addedInVersion" : "3", + "description" : "The other party in the transfer.", + "$ref" : "#/components/schemas/CounterpartyV3" + }, + "description" : { + "x-addedInVersion" : "1", + "description" : "A human-readable description for the transfer. You can use alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated.", + "type" : "string" + }, + "direction" : { + "x-addedInVersion" : "2", + "description" : "The direction of the transfer.\n\nPossible values: **incoming**, **outgoing**.", + "enum" : [ + "incoming", + "outgoing" + ], + "type" : "string" + }, + "id" : { + "description" : "The ID of the resource.", + "readOnly" : true, + "type" : "string" + }, + "paymentInstrumentId" : { + "description" : "Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id).", + "type" : "string" + }, + "priority" : { + "x-addedInVersion" : "3", + "description" : "The priority for the bank transfer. This sets the speed at which the transfer is sent and the fees that you have to pay. Required for transfers with `category` **bank**.\n\nPossible values:\n\n* **regular**: For normal, low-value transactions.\n\n* **fast**: Faster way to transfer funds but has higher fees. Recommended for high-priority, low-value transactions.\n\n* **wire**: Fastest way to transfer funds but has the highest fees. Recommended for high-priority, high-value transactions.\n\n", + "enum" : [ + "fast", + "regular", + "wire" + ], + "type" : "string" + }, + "reason" : { + "x-addedInVersion" : "2", + "description" : "Additional information about the status of the transfer.", + "enum" : [ + "approved", + "notEnoughBalance", + "unknown" + ], + "type" : "string" + }, + "reference" : { + "x-addedInVersion" : "2", + "description" : "A reference for the transfer, only used internally within your platform. If you don't provide this in the request, Adyen generates a unique reference.\nMaximum length: 80 characters.", + "maxLength" : 80, + "type" : "string" + }, + "referenceForBeneficiary" : { + "x-addedInVersion" : "2", + "description" : " A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both the source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. The maximum length depends on the `category`.\n\n- **internal**: 80 characters\n\n- **bank**: 35 characters when transferring to an IBAN, 15 characters for others.", + "maxLength" : 80, + "type" : "string" + }, + "status" : { + "x-addedInVersion" : "2", + "description" : "The result of the transfer.\n\n Possible values: **authorised**, **refused**.", + "enum" : [ + "atmWithdrawal", + "atmWithdrawalReversalPending", + "atmWithdrawalReversed", + "authorised", + "bankTransfer", + "bankTransferPending", + "booked", + "bookingPending", + "cancelled", + "capturePending", + "captureReversalPending", + "captureReversed", + "captured", + "chargeback", + "chargebackPending", + "chargebackReversalPending", + "chargebackReversed", + "depositCorrection", + "depositCorrectionPending", + "error", + "expired", + "failed", + "fee", + "feePending", + "internalTransfer", + "internalTransferPending", + "invoiceDeduction", + "invoiceDeductionPending", + "manualCorrectionPending", + "manuallyCorrected", + "matchedStatement", + "matchedStatementPending", + "merchantPayin", + "merchantPayinPending", + "merchantPayinReversed", + "merchantPayinReversedPending", + "miscCost", + "miscCostPending", + "paymentCost", + "paymentCostPending", + "received", + "refundPending", + "refundReversalPending", + "refundReversed", + "refunded", + "refused", + "reserveAdjustment", + "reserveAdjustmentPending", + "secondChargeback", + "secondChargebackPending" + ], + "type" : "string" + } + }, + "required" : [ + "category", + "amount", + "counterparty", + "status" + ] + }, + "TransferInfo" : { + "properties" : { + "amount" : { + "x-addedInVersion" : "1", + "description" : "The amount of the transfer.", + "$ref" : "#/components/schemas/Amount" + }, + "balanceAccountId" : { + "description" : "Unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).", + "type" : "string" + }, + "category" : { + "x-addedInVersion" : "3", + "description" : "The type of transfer.\n\nPossible values:\n\n - **bank**: Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id) or a bank account.\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform.", + "enum" : [ + "bank", + "internal" + ], + "type" : "string" + }, + "counterparty" : { + "x-addedInVersion" : "3", + "description" : "The recipient of the funds transfer. A bank account, a balance account, or a transfer instrument is required.", + "$ref" : "#/components/schemas/CounterpartyInfoV3" + }, + "description" : { + "x-addedInVersion" : "1", + "description" : "A human-readable description for the transfer. You can use alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated.", + "type" : "string" + }, + "id" : { + "description" : "The ID of the resource.", + "readOnly" : true, + "type" : "string" + }, + "paymentInstrumentId" : { + "description" : "Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id).", + "type" : "string" + }, + "priority" : { + "x-addedInVersion" : "3", + "description" : "The priority for the bank transfer. This sets the speed at which the transfer is sent and the fees that you have to pay. Required for transfers with `category` **bank**.\n\nPossible values:\n\n* **regular**: For normal, low-value transactions.\n\n* **fast**: Faster way to transfer funds but has higher fees. Recommended for high-priority, low-value transactions.\n\n* **wire**: Fastest way to transfer funds but has the highest fees. Recommended for high-priority, high-value transactions.\n\n", + "enum" : [ + "fast", + "regular", + "wire" + ], + "type" : "string" + }, + "reference" : { + "x-addedInVersion" : "2", + "description" : "A reference for the transfer, only used internally within your platform. If you don't provide this in the request, Adyen generates a unique reference.\nMaximum length: 80 characters.", + "maxLength" : 80, + "type" : "string" + }, + "referenceForBeneficiary" : { + "x-addedInVersion" : "2", + "description" : " A reference that is sent to the recipient. This reference is also sent in all notification webhooks related to the transfer, so you can use it to track statuses for both the source and recipient of funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. The maximum length depends on the `category`.\n\n- **internal**: 80 characters\n\n- **bank**: 35 characters when transferring to an IBAN, 15 characters for others.", + "maxLength" : 80, + "type" : "string" + } + }, + "required" : [ + "category", + "amount", + "counterparty" + ] + }, + "UKLocalAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The 8-digit bank account number, without separators or whitespace.", + "maxLength" : 8, + "minLength" : 8, + "type" : "string" + }, + "sortCode" : { + "description" : "The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or spaces.", + "maxLength" : 6, + "minLength" : 6, + "type" : "string" + }, + "type" : { + "default" : "ukLocal", + "description" : "**ukLocal**", + "enum" : [ + "ukLocal" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber", + "sortCode" + ] + }, + "USLocalAccountIdentification" : { + "additionalProperties" : false, + "properties" : { + "accountNumber" : { + "description" : "The bank account number, without separators or whitespace.", + "maxLength" : 18, + "minLength" : 2, + "type" : "string" + }, + "accountType" : { + "default" : "checking", + "description" : "The bank account type.\n\nPossible values: **checking** or **savings**. Defaults to **checking**.", + "enum" : [ + "checking", + "savings" + ], + "type" : "string" + }, + "routingNumber" : { + "description" : "The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or spaces.", + "maxLength" : 9, + "minLength" : 9, + "type" : "string" + }, + "type" : { + "default" : "usLocal", + "description" : "**usLocal**", + "enum" : [ + "usLocal" + ], + "type" : "string" + } + }, + "required" : [ + "accountNumber", + "routingNumber" + ] + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + }, + "examples" : { + "get-transactions-id-success-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transaction", + "value" : { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : 9887 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-14T12:01:00+01:00", + "category" : "bank", + "counterparty" : { + "balanceAccountId" : "NL29ADYX0000000001" + }, + "createdAt" : "2022-03-14T12:01:00+01:00", + "description" : "YOUR_DESCRIPTION", + "id" : "IZK7C25U7DYVX03Y", + "instructedAmount" : { + "currency" : "EUR", + "value" : 9887 + }, + "reference" : "2L6C6B5U7DYULLXC", + "referenceForBeneficiary" : "YOUR_REFERENCE_FOR_BENEFICIARY", + "status" : "booked", + "transferId" : "2QP32A5U7IWC5WKG", + "type" : "bankTransfer", + "valueDate" : "2022-03-14T12:01:00+01:00" + } + }, + "get-transactions-success-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a list of transactions", + "value" : { + "data" : [ + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -9 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-11T11:21:24+01:00", + "category" : "internal", + "createdAt" : "2022-03-11T11:21:24+01:00", + "id" : "1VVF0D5U66PIUIVP", + "instructedAmount" : { + "currency" : "EUR", + "value" : -9 + }, + "reference" : "REFERENCE_46e8c40e", + "status" : "booked", + "transferId" : "1VVF0D5U66PIUIVP", + "type" : "fee", + "valueDate" : "2022-03-11T11:21:24+01:00" + }, + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -46 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-12T14:22:52+01:00", + "category" : "internal", + "createdAt" : "2022-03-12T14:22:52+01:00", + "id" : "1WEPGD5U6MS1CFK3", + "instructedAmount" : { + "currency" : "EUR", + "value" : -46 + }, + "reference" : "YOUR_REFERENCE", + "status" : "booked", + "transferId" : "1WEPGD5U6MS1CFK3", + "type" : "fee", + "valueDate" : "2022-03-12T14:22:52+01:00" + }, + { + "accountHolderId" : "AHA1B2C3D4E5F6G7H8I9J0", + "amount" : { + "currency" : "EUR", + "value" : -8 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "balancePlatform" : "YOUR_BALANCE_PLATFORM", + "bookingDate" : "2022-03-14T21:00:48+01:00", + "createdAt" : "2022-03-14T15:00:00+01:00", + "description" : "YOUR_DESCRIPTION_2", + "id" : "2QP32A5U7IWC5WKG", + "instructedAmount" : { + "currency" : "EUR", + "value" : -8 + }, + "status" : "booked", + "valueDate" : "2022-03-14T21:00:48+01:00" + } + ], + "_links" : { + "next" : { + "href" : "https://balanceplatform-api-test.adyen.com/btl/v2/transactions?balancePlatform=Bastronaut&createdUntil=2022-03-21T00%3A00%3A00Z&createdSince=2022-03-11T00%3A00%3A00Z&limit=3&cursor=S2B-TSAjOkIrYlIlbjdqe0RreHRyM32lKRSxubXBHRkhHL2E32XitQQz5SfzpucD5HbHwpM1p6NDR1eXVQLFF6MmY33J32sobDxQYT90MHIud1hwLnd6JitcX32xJ" + } + } + } + }, + "post-transfers-payout-cross-border" : { + "summary" : "Make a SEPA funds transfer", + "description" : "Example request to make a SEPA funds transfer", + "value" : { + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "accountHolder" : { + "fullName" : "A. Klaassen", + "address" : { + "city" : "San Francisco", + "country" : "US", + "postalCode" : "94678", + "stateOrProvince" : "CA", + "street" : "Brannan Street", + "street2" : "274" + } + }, + "accountIdentification" : { + "type" : "numberBic", + "accountNumber" : "123456789", + "bic" : "BOFAUS3NXXX" + } + }, + "priority" : "wire", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer" + } + }, + "post-transfers-payout-cross-border-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "accountHolder" : { + "fullName" : "A. Klaassen", + "address" : { + "city" : "San Francisco", + "country" : "US", + "postalCode" : "94678", + "stateOrProvince" : "CA", + "street" : "Brannan Street", + "street2" : "274" + } + }, + "accountIdentification" : { + "type" : "numberBic", + "accountNumber" : "123456789", + "bic" : "BOFAUS3NXXX" + } + }, + "priority" : "wire", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-local-transfer-sepa" : { + "summary" : "Make a SEPA funds transfer", + "description" : "Example request to make a US local funds transfer", + "value" : { + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "bankAccount" : { + "accountHolder" : { + "fullName" : "A. Klaassen" + }, + "accountIdentification" : { + "type" : "iban", + "iban" : "NL91ABNA0417164300" + } + } + }, + "priority" : "regular", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer" + } + }, + "post-transfers-payout-local-transfer-sepa-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 110000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "bankAccount" : { + "accountHolder" : { + "fullName" : "A. Klaassen" + }, + "accountIdentification" : { + "type" : "iban", + "iban" : "NL91ABNA0417164300" + } + } + }, + "priority" : "regular", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-local-transfer-us" : { + "summary" : "Make a US local funds transfer", + "description" : "Example request to make a US local funds transfer", + "value" : { + "amount" : { + "value" : 110000, + "currency" : "USD" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "bankAccount" : { + "accountHolder" : { + "fullName" : "A. Klaassen" + }, + "accountIdentification" : { + "type" : "usLocal", + "accountNumber" : "123456789", + "routingNumber" : "011000138" + } + } + }, + "priority" : "regular", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer" + } + }, + "post-transfers-payout-local-transfer-us-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 110000, + "currency" : "USD" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "bankAccount" : { + "accountHolder" : { + "fullName" : "A. Klaassen" + }, + "accountIdentification" : { + "type" : "usLocal", + "accountNumber" : "123456789", + "routingNumber" : "011000138" + } + } + }, + "priority" : "regular", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-to-balance-account" : { + "summary" : "Transfer funds to another balance account", + "description" : "Example request to transfer funds to another balance account", + "value" : { + "amount" : { + "value" : 10000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "internal", + "counterparty" : { + "balanceAccountId" : "BA32272223222B5LPRFDW7J9G" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer" + } + }, + "post-transfers-payout-to-balance-account-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "currency" : "EUR", + "value" : 10000 + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "internal", + "counterparty" : { + "balanceAccountId" : "BA32272223222B5LPRFDW7J9G" + }, + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + }, + "post-transfers-payout-to-transfer-instrument" : { + "summary" : "Pay out to a transfer instrument", + "description" : "Example request to pay out to a transfer instrument", + "value" : { + "amount" : { + "value" : 80000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "transferInstrumentId" : "SE1234567890ABC1234567890" + }, + "priority" : "fast", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer" + } + }, + "post-transfers-payout-to-transfer-instrument-200" : { + "summary" : "Response code - 200 OK", + "description" : "Example response for a transfers request", + "value" : { + "id" : "1W1UG35U8A9J5ZLG", + "amount" : { + "value" : 80000, + "currency" : "EUR" + }, + "balanceAccountId" : "BAB8B2C3D4E5F6G7H8D9J6GD4", + "category" : "bank", + "counterparty" : { + "transferInstrumentId" : "SE1234567890ABC1234567890" + }, + "priority" : "fast", + "referenceForBeneficiary" : "Your reference sent to the beneficiary", + "reference" : "Your internal reference for the transfer", + "description" : "Your description for the transfer", + "direction" : "outgoing", + "reason" : "approved", + "status" : "authorised" + } + } + } + } +} \ No newline at end of file diff --git a/json/Webhooks-v1.json b/json/Webhooks-v1.json index ccff14b..0a576a0 100644 --- a/json/Webhooks-v1.json +++ b/json/Webhooks-v1.json @@ -5,6 +5,7 @@ "x-publicVersion" : true, "title" : "Notification webhooks", "description" : "We use webhooks to send you notifications about payment status updates, newly available reports, and other events that you can subscribe to. For more information, refer to our [documentation](https://docs.adyen.com/development-resources/webhooks).", + "x-timestamp" : "2022-05-03T09:24:07Z", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Developer Experience team", @@ -1848,24 +1849,276 @@ }, "AuthorisationNotificationAdditionalData" : { "properties" : { + "PaymentAccountReference" : { + "description" : "Reference of the payment account.", + "type" : "string" + }, + "acquirerAccountCode" : { + "description" : "The acquirer account code.", + "type" : "string" + }, + "acquirerCode" : { + "description" : "The acquirer code.", + "type" : "string" + }, + "acquirerReference" : { + "description" : "The acquirer reference.", + "type" : "string" + }, + "acsRenderingType.acsInterface" : { + "description" : "ACS interface. Related to 3DS.", + "type" : "string" + }, + "acsRenderingType.acsUiTemplate" : { + "description" : "ACS UI template.", + "type" : "string" + }, + "alias" : { + "description" : "Alias for this card.", + "type" : "string" + }, + "aliasType" : { + "description" : "Alias type.", + "type" : "string" + }, + "arn" : { + "description" : "Acquirer Reference Number of the dispute.", + "type" : "string" + }, "authCode" : { - "description" : "When the payment is authorised successfully, this fields holds the authorisation code for the payment, otherwise it's empty.", + "description" : "Authcode of the scheme.", + "type" : "string" + }, + "authenticationType" : { + "description" : "3DS authentication type", + "type" : "string" + }, + "authorisationMid" : { + "description" : "Authorisation MID of the acquirer.", "type" : "string" }, "authorisedAmountCurrency" : { - "description" : "Currency of the authorised amount.", + "description" : "The currency authorised for a dynamic zero auth request.", "type" : "string" }, "authorisedAmountValue" : { - "description" : "Value of the amount authorised. ", + "description" : "The amount authorised for a dynamic zero auth request.", + "type" : "string" + }, + "avsResult" : { + "description" : "Address Verification Service result.", + "type" : "string" + }, + "avsResultRaw" : { + "description" : "Address Verification Service result raw.", + "type" : "string" + }, + "bankAccountNumber" : { + "description" : "The bank account number.", + "type" : "string" + }, + "bankLocation" : { + "description" : "The bank location.", + "type" : "string" + }, + "bankLocationId" : { + "description" : "The bank location ID.", + "type" : "string" + }, + "bankName" : { + "description" : "The bank name.", + "type" : "string" + }, + "bankVerificationResult" : { + "description" : "The bank verificaiton result.", + "type" : "string" + }, + "bankVerificationResultRaw" : { + "description" : "The bank verification result raw.", + "type" : "string" + }, + "bic" : { + "description" : "Business Identifier Code.", + "type" : "string" + }, + "billingAddress.city" : { + "description" : "BillingAddress: county.", + "type" : "string" + }, + "billingAddress.houseNumberOrName" : { + "description" : "BillingAddress: house number or name.", + "type" : "string" + }, + "billingAddress.postalCode" : { + "description" : "BillingAddress: postal code.", + "type" : "string" + }, + "billingAddress.stateOrProvince" : { + "description" : "BillingAddress: state or province", + "type" : "string" + }, + "billingAddress.street" : { + "description" : "BillingAddress: street", + "type" : "string" + }, + "browserCode" : { + "description" : "Browser code.", + "type" : "string" + }, + "captureDelayHours" : { + "description" : "The amount of delay after authorisation.", + "type" : "string" + }, + "captureMerchantReference" : { + "description" : "The merchant reference of the capture.", + "type" : "string" + }, + "capturePspReference" : { + "description" : "The PSP reference of the capture.", + "type" : "string" + }, + "cardBin" : { + "description" : "Card Bank Identification number.", + "type" : "string" + }, + "cardIssuingBank" : { + "description" : "Card issuing bank.", + "type" : "string" + }, + "cardIssuingCountry" : { + "description" : "Card issuing country.", + "type" : "string" + }, + "cardIssuingCurrency" : { + "description" : "Card issuing currency.", + "type" : "string" + }, + "cardPaymentMethod" : { + "description" : "Card payment method.", + "type" : "string" + }, + "cardSchemeEnhancedDataLevel" : { + "description" : "Card scheme enhanced data level.", "type" : "string" }, "cardSummary" : { - "description" : "Returns the last 4 digits of the credit card.", + "description" : "Card summary", + "type" : "string" + }, + "cavv" : { + "description" : "Secure Cardholder Authentication Verification Value.", + "type" : "string" + }, + "cavvAlgorithm" : { + "description" : "CAVV algorithm.", + "type" : "string" + }, + "challengeCancel" : { + "description" : "Information about the 3DS challenge being canceled.", + "type" : "string" + }, + "checkoutSessionId" : { + "description" : "ID of the Checkout Session.", + "type" : "string" + }, + "cvcResult" : { + "description" : "Card Verification Code result.", + "type" : "string" + }, + "cvcResultRaw" : { + "description" : "Card Verification Code result raw.", + "type" : "string" + }, + "deliveryAddress.city" : { + "description" : "Delivery address: city.", + "type" : "string" + }, + "deliveryAddress.country" : { + "description" : "Delivery address: country.", + "type" : "string" + }, + "deliveryAddress.houseNumberOrName" : { + "description" : "Delivery address: house number or name.", + "type" : "string" + }, + "deliveryAddress.postalCode" : { + "description" : "Delivery address: postal code.", + "type" : "string" + }, + "deliveryAddress.stateOrProvince" : { + "description" : "Delivery address: state or province.", + "type" : "string" + }, + "deliveryAddress.street" : { + "description" : "Delivery address: street.", + "type" : "string" + }, + "deviceType" : { + "description" : "Type of device the request was made from.", + "type" : "string" + }, + "directdebit_GB.dateOfSignature" : { + "description" : "Direct debit GB: date of signature.", + "type" : "string" + }, + "directdebit_GB.mandateId" : { + "description" : "Direct debit GB: mandate ID.", + "type" : "string" + }, + "directdebit_GB.sequenceType" : { + "description" : "Direct debit GB: sequence type.", + "type" : "string" + }, + "directdebit_GB.serviceUserName" : { + "description" : "Direct debit GB: service user name.", + "type" : "string" + }, + "directdebit_GB.serviceUserNumber" : { + "description" : "Direct debit GB: service user number.", + "type" : "string" + }, + "eci" : { + "description" : "3DS: Electronic Commerce Indicator.", "type" : "string" }, "expiryDate" : { - "description" : "Returns the card expiry date.", + "description" : "Expiry date of the card.", + "type" : "string" + }, + "extraCostsCurrency" : { + "description" : "Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification).", + "type" : "string" + }, + "extraCostsValue" : { + "description" : "Related additional cost value.", + "type" : "string" + }, + "fraudCheck--" : { + "description" : "Information on the fraud check in a dynamic format.", + "type" : "string" + }, + "fraudManualReview" : { + "description" : "Indicates if the risk check was done manually.", + "type" : "string" + }, + "fraudOffset" : { + "description" : "The fraud offset.", + "type" : "string" + }, + "fraudResultType" : { + "description" : "Result type of the fraud check.", + "type" : "string" + }, + "fundingSource" : { + "description" : "Funding source.", + "type" : "string" + }, + "grossCurrency" : { + "description" : "Chargeback gross currency.", + "type" : "string" + }, + "grossValue" : { + "description" : "Chargeback gross value.", "type" : "string" }, "iDealConsumerAccountNumber" : { @@ -1896,14 +2149,121 @@ "description" : "Only included for iDeal payments.", "type" : "string" }, + "iban" : { + "description" : "International Bank Account Number.", + "type" : "string" + }, + "installments.value" : { + "description" : "The number of installments that the payment amount should be charged with.\n\nExample: 5\n> Only relevant for card payments in countries that support installments.", + "type" : "string" + }, + "interactionCounter" : { + "description" : "3DS interaction counter.", + "type" : "string" + }, + "issuerComments.cardholderName" : { + "description" : "Card holder name.", + "type" : "string" + }, + "issuerCountry" : { + "description" : "Country of the card issuer.", + "type" : "string" + }, + "latestCard.bin" : { + "description" : "Recurring: Latest card BIN.", + "type" : "string" + }, + "latestCard.expiryDate" : { + "description" : "Recurring: Latest card expiry date.", + "type" : "string" + }, + "latestCard.summary" : { + "description" : "Recurring: Latest card summary.", + "type" : "string" + }, + "liabilityShift" : { + "description" : "Risk liability shift.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "A set of key-value pairs provided in the request, prefixed with 'metadata.'. For example, 'metadata.myField: myValue'", + "type" : "object" + }, + "networkToken.available" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.bin" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.tokenSummary" : { + "description" : "Recurring related.", + "type" : "string" + }, + "nfc.expire" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.issue" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.pin.provided" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.uid" : { + "description" : "NFC related.", + "type" : "string" + }, "opi.transToken" : { "description" : "The transaction token to be used in your Oracle Opera integration.", "type" : "string" }, + "ownerCity" : { + "description" : "Owner city.", + "type" : "string" + }, + "ownerName" : { + "description" : "Owner name.", + "type" : "string" + }, + "payULatamTrazabilityCode" : { + "description" : "Related to PayU in LATAM.", + "type" : "string" + }, + "paymentLinkId" : { + "description" : "ID of the Checkout payment link.", + "type" : "string" + }, + "paypalAddressStatus" : { + "description" : "Related to PayPal.", + "type" : "string" + }, + "paypalBillingName" : { + "description" : "Related to PayPal.", + "type" : "string" + }, "paypalEmail" : { "description" : "The buyer's PayPal account email address.\n\nExample: paypaltest@adyen.com", "type" : "string" }, + "paypalErrorCode" : { + "description" : "Related to PayPal.", + "type" : "string" + }, + "paypalErrorDescription" : { + "description" : "Related to PayPal.", + "type" : "string" + }, + "paypalPairingId" : { + "description" : "Related to PayPal.", + "type" : "string" + }, "paypalPayerId" : { "description" : "The buyer's PayPal ID.\n\nExample: LF5HCWWBRV2KL", "type" : "string" @@ -1916,10 +2276,54 @@ "description" : "The status of the buyer's PayPal account.\n\nExample: unverified", "type" : "string" }, + "paypalPhone" : { + "description" : "Related to PayPal.", + "type" : "string" + }, "paypalProtectionEligibility" : { "description" : "The eligibility for PayPal Seller Protection for this payment.\n\nExample: Ineligible", "type" : "string" }, + "paypalRisk" : { + "description" : "Related to PayPal.", + "type" : "string" + }, + "realtimeAccountUpdaterStatus" : { + "description" : "Real time Account Update status.", + "type" : "string" + }, + "recurring.contractTypes" : { + "description" : "Recurring contract types.", + "type" : "string" + }, + "recurring.firstPspReference" : { + "description" : "Recurring first PSP reference.", + "type" : "string" + }, + "recurring.recurringDetailReference" : { + "description" : "recurring detail reference.", + "type" : "string" + }, + "referred" : { + "description" : "If the payment is referred, this field is set to true.\n\nThis field is unavailable if the payment is referred and is usually not returned with ecommerce transactions.\n\nExample: true", + "type" : "string" + }, + "refusalReasonRaw" : { + "description" : "Raw refusal reason received from the acquirer, where available.\n\nExample: AUTHORISED", + "type" : "string" + }, + "retry.rescueScheduled" : { + "description" : "Indicates if an auto rescue for a pyment is scheduled.", + "type" : "string" + }, + "riskProfile" : { + "description" : "Related to Risk.", + "type" : "string" + }, + "riskProfileReference" : { + "description" : "Related to Risk.", + "type" : "string" + }, "sepadirectdebit.dateOfSignature" : { "description" : "The transaction signature date.\n\nFormat: yyyy-MM-dd", "type" : "string" @@ -1931,6 +2335,82 @@ "sepadirectdebit.sequenceType" : { "description" : "This field can take one of the following values:\n* OneOff: (OOFF) Direct debit instruction to initiate exactly one direct debit transaction.\n\n* First: (FRST) Initial/first collection in a series of direct debit instructions.\n* Recurring: (RCUR) Direct debit instruction to carry out regular direct debit transactions initiated by the creditor.\n* Final: (FNAL) Last/final collection in a series of direct debit instructions.\n\nExample: OOFF", "type" : "string" + }, + "shopperCountry" : { + "description" : "Country of the shopper.", + "type" : "string" + }, + "shopperIP" : { + "description" : "IP of the shopper.", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "The shopper interaction type of the payment request.\n\nExample: Ecommerce", + "type" : "string" + }, + "shopperLocale" : { + "description" : "The locale of the shopper.", + "type" : "string" + }, + "shopperSocialSecurityNumber" : { + "description" : "The social security number of the shopper.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.", + "type" : "string" + }, + "shopperTelephone" : { + "description" : "The telephone number of the shopper.", + "type" : "string" + }, + "store" : { + "description" : "Identifier of the store processing the transaction.", + "type" : "string" + }, + "tenderReference" : { + "description" : "Tender reference. For point-of-sale integrations only.", + "type" : "string" + }, + "terminalId" : { + "description" : "Terminal ID. For point-of-sale integrations only.", + "type" : "string" + }, + "threeDAuthenticated" : { + "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment.\n\nExample: true", + "type" : "string" + }, + "threeDAuthenticatedResponse" : { + "description" : "The raw 3DS authentication result from the card issuer.\n\nExample: N", + "type" : "string" + }, + "threeDOffered" : { + "description" : "A Boolean value indicating whether 3DS was offered for this payment.\n\nExample: true", + "type" : "string" + }, + "threeDOfferedResponse" : { + "description" : "The raw enrollment result from the 3DS directory services of the card schemes.\n\nExample: Y", + "type" : "string" + }, + "threeDSVersion" : { + "description" : "The 3D Secure 2 version.", + "type" : "string" + }, + "tokenTxVariant" : { + "description" : "Payment method variant of the token/wallet payment method.", + "type" : "string" + }, + "totalFraudScore" : { + "description" : "Total fraud score from risk.", + "type" : "string" + }, + "untokenisedCardSummary" : { + "description" : "Card summary without tokenization.", + "type" : "string" + }, + "xid" : { + "description" : "The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field.\n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA=", + "type" : "string" } } }, @@ -2022,24 +2502,479 @@ }, "NotificationAdditionalData" : { "properties" : { + "PaymentAccountReference" : { + "description" : "Reference of the payment account.", + "type" : "string" + }, + "acquirerAccountCode" : { + "description" : "The acquirer account code.", + "type" : "string" + }, + "acquirerCode" : { + "description" : "The acquirer code.", + "type" : "string" + }, + "acquirerReference" : { + "description" : "The acquirer reference.", + "type" : "string" + }, + "acsRenderingType.acsInterface" : { + "description" : "ACS interface. Related to 3DS.", + "type" : "string" + }, + "acsRenderingType.acsUiTemplate" : { + "description" : "ACS UI template.", + "type" : "string" + }, + "alias" : { + "description" : "Alias for this card.", + "type" : "string" + }, + "aliasType" : { + "description" : "Alias type.", + "type" : "string" + }, + "arn" : { + "description" : "Acquirer Reference Number of the dispute.", + "type" : "string" + }, "authCode" : { - "description" : "When the payment is authorised successfully, this fields holds the authorisation code for the payment, otherwise it's empty.", + "description" : "Authcode of the scheme.", + "type" : "string" + }, + "authenticationType" : { + "description" : "3DS authentication type", + "type" : "string" + }, + "authorisationMid" : { + "description" : "Authorisation MID of the acquirer.", "type" : "string" }, "authorisedAmountCurrency" : { - "description" : "Currency of the authorised amount.", + "description" : "The currency authorised for a dynamic zero auth request.", "type" : "string" }, "authorisedAmountValue" : { - "description" : "Value of the amount authorised. ", + "description" : "The amount authorised for a dynamic zero auth request.", + "type" : "string" + }, + "avsResult" : { + "description" : "Address Verification Service result.", + "type" : "string" + }, + "avsResultRaw" : { + "description" : "Address Verification Service result raw.", + "type" : "string" + }, + "bankAccountNumber" : { + "description" : "The bank account number.", + "type" : "string" + }, + "bankLocation" : { + "description" : "The bank location.", + "type" : "string" + }, + "bankLocationId" : { + "description" : "The bank location ID.", + "type" : "string" + }, + "bankName" : { + "description" : "The bank name.", + "type" : "string" + }, + "bankVerificationResult" : { + "description" : "The bank verificaiton result.", + "type" : "string" + }, + "bankVerificationResultRaw" : { + "description" : "The bank verification result raw.", + "type" : "string" + }, + "bic" : { + "description" : "Business Identifier Code.", + "type" : "string" + }, + "billingAddress.city" : { + "description" : "BillingAddress: county.", + "type" : "string" + }, + "billingAddress.houseNumberOrName" : { + "description" : "BillingAddress: house number or name.", + "type" : "string" + }, + "billingAddress.postalCode" : { + "description" : "BillingAddress: postal code.", + "type" : "string" + }, + "billingAddress.stateOrProvince" : { + "description" : "BillingAddress: state or province", + "type" : "string" + }, + "billingAddress.street" : { + "description" : "BillingAddress: street", + "type" : "string" + }, + "browserCode" : { + "description" : "Browser code.", + "type" : "string" + }, + "captureDelayHours" : { + "description" : "The amount of delay after authorisation.", + "type" : "string" + }, + "captureMerchantReference" : { + "description" : "The merchant reference of the capture.", + "type" : "string" + }, + "capturePspReference" : { + "description" : "The PSP reference of the capture.", + "type" : "string" + }, + "cardBin" : { + "description" : "Card Bank Identification number.", + "type" : "string" + }, + "cardIssuingBank" : { + "description" : "Card issuing bank.", + "type" : "string" + }, + "cardIssuingCountry" : { + "description" : "Card issuing country.", + "type" : "string" + }, + "cardIssuingCurrency" : { + "description" : "Card issuing currency.", + "type" : "string" + }, + "cardPaymentMethod" : { + "description" : "Card payment method.", + "type" : "string" + }, + "cardSchemeEnhancedDataLevel" : { + "description" : "Card scheme enhanced data level.", "type" : "string" }, "cardSummary" : { - "description" : "Returns the last 4 digits of the credit card.", + "description" : "Card summary", + "type" : "string" + }, + "cavv" : { + "description" : "Secure Cardholder Authentication Verification Value.", + "type" : "string" + }, + "cavvAlgorithm" : { + "description" : "CAVV algorithm.", + "type" : "string" + }, + "challengeCancel" : { + "description" : "Information about the 3DS challenge being canceled.", + "type" : "string" + }, + "checkoutSessionId" : { + "description" : "ID of the Checkout Session.", + "type" : "string" + }, + "cvcResult" : { + "description" : "Card Verification Code result.", + "type" : "string" + }, + "cvcResultRaw" : { + "description" : "Card Verification Code result raw.", + "type" : "string" + }, + "deliveryAddress.city" : { + "description" : "Delivery address: city.", + "type" : "string" + }, + "deliveryAddress.country" : { + "description" : "Delivery address: country.", + "type" : "string" + }, + "deliveryAddress.houseNumberOrName" : { + "description" : "Delivery address: house number or name.", + "type" : "string" + }, + "deliveryAddress.postalCode" : { + "description" : "Delivery address: postal code.", + "type" : "string" + }, + "deliveryAddress.stateOrProvince" : { + "description" : "Delivery address: state or province.", + "type" : "string" + }, + "deliveryAddress.street" : { + "description" : "Delivery address: street.", + "type" : "string" + }, + "deviceType" : { + "description" : "Type of device the request was made from.", + "type" : "string" + }, + "directdebit_GB.dateOfSignature" : { + "description" : "Direct debit GB: date of signature.", + "type" : "string" + }, + "directdebit_GB.mandateId" : { + "description" : "Direct debit GB: mandate ID.", + "type" : "string" + }, + "directdebit_GB.sequenceType" : { + "description" : "Direct debit GB: sequence type.", + "type" : "string" + }, + "directdebit_GB.serviceUserName" : { + "description" : "Direct debit GB: service user name.", + "type" : "string" + }, + "directdebit_GB.serviceUserNumber" : { + "description" : "Direct debit GB: service user number.", + "type" : "string" + }, + "eci" : { + "description" : "3DS: Electronic Commerce Indicator.", "type" : "string" }, "expiryDate" : { - "description" : "Returns the card expiry date.", + "description" : "Expiry date of the card.", + "type" : "string" + }, + "extraCostsCurrency" : { + "description" : "Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification).", + "type" : "string" + }, + "extraCostsValue" : { + "description" : "Related additional cost value.", + "type" : "string" + }, + "fraudCheck--" : { + "description" : "Information on the fraud check in a dynamic format.", + "type" : "string" + }, + "fraudManualReview" : { + "description" : "Indicates if the risk check was done manually.", + "type" : "string" + }, + "fraudOffset" : { + "description" : "The fraud offset.", + "type" : "string" + }, + "fraudResultType" : { + "description" : "Result type of the fraud check.", + "type" : "string" + }, + "fundingSource" : { + "description" : "Funding source.", + "type" : "string" + }, + "grossCurrency" : { + "description" : "Chargeback gross currency.", + "type" : "string" + }, + "grossValue" : { + "description" : "Chargeback gross value.", + "type" : "string" + }, + "iban" : { + "description" : "International Bank Account Number.", + "type" : "string" + }, + "installments.value" : { + "description" : "The number of installments that the payment amount should be charged with.\n\nExample: 5\n> Only relevant for card payments in countries that support installments.", + "type" : "string" + }, + "interactionCounter" : { + "description" : "3DS interaction counter.", + "type" : "string" + }, + "issuerComments.cardholderName" : { + "description" : "Card holder name.", + "type" : "string" + }, + "issuerCountry" : { + "description" : "Country of the card issuer.", + "type" : "string" + }, + "latestCard.bin" : { + "description" : "Recurring: Latest card BIN.", + "type" : "string" + }, + "latestCard.expiryDate" : { + "description" : "Recurring: Latest card expiry date.", + "type" : "string" + }, + "latestCard.summary" : { + "description" : "Recurring: Latest card summary.", + "type" : "string" + }, + "liabilityShift" : { + "description" : "Risk liability shift.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "A set of key-value pairs provided in the request, prefixed with 'metadata.'. For example, 'metadata.myField: myValue'", + "type" : "object" + }, + "networkToken.available" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.bin" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.tokenSummary" : { + "description" : "Recurring related.", + "type" : "string" + }, + "nfc.expire" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.issue" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.pin.provided" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.uid" : { + "description" : "NFC related.", + "type" : "string" + }, + "opi.transToken" : { + "description" : "Trans token related to Oracle Opera.", + "type" : "string" + }, + "ownerCity" : { + "description" : "Owner city.", + "type" : "string" + }, + "ownerName" : { + "description" : "Owner name.", + "type" : "string" + }, + "payULatamTrazabilityCode" : { + "description" : "Related to PayU in LATAM.", + "type" : "string" + }, + "paymentLinkId" : { + "description" : "ID of the Checkout payment link.", + "type" : "string" + }, + "realtimeAccountUpdaterStatus" : { + "description" : "Real time Account Update status.", + "type" : "string" + }, + "recurring.contractTypes" : { + "description" : "Recurring contract types.", + "type" : "string" + }, + "recurring.firstPspReference" : { + "description" : "Recurring first PSP reference.", + "type" : "string" + }, + "recurring.recurringDetailReference" : { + "description" : "recurring detail reference.", + "type" : "string" + }, + "referred" : { + "description" : "If the payment is referred, this field is set to true.\n\nThis field is unavailable if the payment is referred and is usually not returned with ecommerce transactions.\n\nExample: true", + "type" : "string" + }, + "refusalReasonRaw" : { + "description" : "Raw refusal reason received from the acquirer, where available.\n\nExample: AUTHORISED", + "type" : "string" + }, + "retry.rescueScheduled" : { + "description" : "Indicates if an auto rescue for a pyment is scheduled.", + "type" : "string" + }, + "riskProfile" : { + "description" : "Related to Risk.", + "type" : "string" + }, + "riskProfileReference" : { + "description" : "Related to Risk.", + "type" : "string" + }, + "shopperCountry" : { + "description" : "Country of the shopper.", + "type" : "string" + }, + "shopperIP" : { + "description" : "IP of the shopper.", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "The shopper interaction type of the payment request.\n\nExample: Ecommerce", + "type" : "string" + }, + "shopperLocale" : { + "description" : "The locale of the shopper.", + "type" : "string" + }, + "shopperSocialSecurityNumber" : { + "description" : "The social security number of the shopper.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.", + "type" : "string" + }, + "shopperTelephone" : { + "description" : "The telephone number of the shopper.", + "type" : "string" + }, + "store" : { + "description" : "Identifier of the store processing the transaction.", + "type" : "string" + }, + "tenderReference" : { + "description" : "Tender reference. For point-of-sale integrations only.", + "type" : "string" + }, + "terminalId" : { + "description" : "Terminal ID. For point-of-sale integrations only.", + "type" : "string" + }, + "threeDAuthenticated" : { + "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment.\n\nExample: true", + "type" : "string" + }, + "threeDAuthenticatedResponse" : { + "description" : "The raw 3DS authentication result from the card issuer.\n\nExample: N", + "type" : "string" + }, + "threeDOffered" : { + "description" : "A Boolean value indicating whether 3DS was offered for this payment.\n\nExample: true", + "type" : "string" + }, + "threeDOfferedResponse" : { + "description" : "The raw enrollment result from the 3DS directory services of the card schemes.\n\nExample: Y", + "type" : "string" + }, + "threeDSVersion" : { + "description" : "The 3D Secure 2 version.", + "type" : "string" + }, + "tokenTxVariant" : { + "description" : "Payment method variant of the token/wallet payment method.", + "type" : "string" + }, + "totalFraudScore" : { + "description" : "Total fraud score from risk.", + "type" : "string" + }, + "untokenisedCardSummary" : { + "description" : "Card summary without tokenization.", + "type" : "string" + }, + "xid" : { + "description" : "The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field.\n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA=", "type" : "string" } } @@ -2255,33 +3190,488 @@ }, "RecurringContractNotificationAdditionalData" : { "properties" : { + "PaymentAccountReference" : { + "description" : "Reference of the payment account.", + "type" : "string" + }, + "acquirerAccountCode" : { + "description" : "The acquirer account code.", + "type" : "string" + }, + "acquirerCode" : { + "description" : "The acquirer code.", + "type" : "string" + }, + "acquirerReference" : { + "description" : "The acquirer reference.", + "type" : "string" + }, + "acsRenderingType.acsInterface" : { + "description" : "ACS interface. Related to 3DS.", + "type" : "string" + }, + "acsRenderingType.acsUiTemplate" : { + "description" : "ACS UI template.", + "type" : "string" + }, + "alias" : { + "description" : "Alias for this card.", + "type" : "string" + }, + "aliasType" : { + "description" : "Alias type.", + "type" : "string" + }, + "arn" : { + "description" : "Acquirer Reference Number of the dispute.", + "type" : "string" + }, "authCode" : { - "description" : "When the payment is authorised successfully, this fields holds the authorisation code for the payment, otherwise it's empty.", + "description" : "Authcode of the scheme.", + "type" : "string" + }, + "authenticationType" : { + "description" : "3DS authentication type", + "type" : "string" + }, + "authorisationMid" : { + "description" : "Authorisation MID of the acquirer.", "type" : "string" }, "authorisedAmountCurrency" : { - "description" : "Currency of the authorised amount.", + "description" : "The currency authorised for a dynamic zero auth request.", "type" : "string" }, "authorisedAmountValue" : { - "description" : "Value of the amount authorised. ", + "description" : "The amount authorised for a dynamic zero auth request.", + "type" : "string" + }, + "avsResult" : { + "description" : "Address Verification Service result.", + "type" : "string" + }, + "avsResultRaw" : { + "description" : "Address Verification Service result raw.", + "type" : "string" + }, + "bankAccountNumber" : { + "description" : "The bank account number.", + "type" : "string" + }, + "bankLocation" : { + "description" : "The bank location.", + "type" : "string" + }, + "bankLocationId" : { + "description" : "The bank location ID.", + "type" : "string" + }, + "bankName" : { + "description" : "The bank name.", + "type" : "string" + }, + "bankVerificationResult" : { + "description" : "The bank verificaiton result.", + "type" : "string" + }, + "bankVerificationResultRaw" : { + "description" : "The bank verification result raw.", + "type" : "string" + }, + "bic" : { + "description" : "Business Identifier Code.", + "type" : "string" + }, + "billingAddress.city" : { + "description" : "BillingAddress: county.", + "type" : "string" + }, + "billingAddress.houseNumberOrName" : { + "description" : "BillingAddress: house number or name.", + "type" : "string" + }, + "billingAddress.postalCode" : { + "description" : "BillingAddress: postal code.", + "type" : "string" + }, + "billingAddress.stateOrProvince" : { + "description" : "BillingAddress: state or province", + "type" : "string" + }, + "billingAddress.street" : { + "description" : "BillingAddress: street", + "type" : "string" + }, + "browserCode" : { + "description" : "Browser code.", + "type" : "string" + }, + "captureDelayHours" : { + "description" : "The amount of delay after authorisation.", + "type" : "string" + }, + "captureMerchantReference" : { + "description" : "The merchant reference of the capture.", + "type" : "string" + }, + "capturePspReference" : { + "description" : "The PSP reference of the capture.", + "type" : "string" + }, + "cardBin" : { + "description" : "Card Bank Identification number.", + "type" : "string" + }, + "cardIssuingBank" : { + "description" : "Card issuing bank.", + "type" : "string" + }, + "cardIssuingCountry" : { + "description" : "Card issuing country.", + "type" : "string" + }, + "cardIssuingCurrency" : { + "description" : "Card issuing currency.", + "type" : "string" + }, + "cardPaymentMethod" : { + "description" : "Card payment method.", + "type" : "string" + }, + "cardSchemeEnhancedDataLevel" : { + "description" : "Card scheme enhanced data level.", "type" : "string" }, "cardSummary" : { - "description" : "Returns the last 4 digits of the credit card.", + "description" : "Card summary", + "type" : "string" + }, + "cavv" : { + "description" : "Secure Cardholder Authentication Verification Value.", + "type" : "string" + }, + "cavvAlgorithm" : { + "description" : "CAVV algorithm.", + "type" : "string" + }, + "challengeCancel" : { + "description" : "Information about the 3DS challenge being canceled.", + "type" : "string" + }, + "checkoutSessionId" : { + "description" : "ID of the Checkout Session.", + "type" : "string" + }, + "cvcResult" : { + "description" : "Card Verification Code result.", + "type" : "string" + }, + "cvcResultRaw" : { + "description" : "Card Verification Code result raw.", + "type" : "string" + }, + "deliveryAddress.city" : { + "description" : "Delivery address: city.", + "type" : "string" + }, + "deliveryAddress.country" : { + "description" : "Delivery address: country.", + "type" : "string" + }, + "deliveryAddress.houseNumberOrName" : { + "description" : "Delivery address: house number or name.", + "type" : "string" + }, + "deliveryAddress.postalCode" : { + "description" : "Delivery address: postal code.", + "type" : "string" + }, + "deliveryAddress.stateOrProvince" : { + "description" : "Delivery address: state or province.", + "type" : "string" + }, + "deliveryAddress.street" : { + "description" : "Delivery address: street.", + "type" : "string" + }, + "deviceType" : { + "description" : "Type of device the request was made from.", + "type" : "string" + }, + "directdebit_GB.dateOfSignature" : { + "description" : "Direct debit GB: date of signature.", + "type" : "string" + }, + "directdebit_GB.mandateId" : { + "description" : "Direct debit GB: mandate ID.", + "type" : "string" + }, + "directdebit_GB.sequenceType" : { + "description" : "Direct debit GB: sequence type.", + "type" : "string" + }, + "directdebit_GB.serviceUserName" : { + "description" : "Direct debit GB: service user name.", + "type" : "string" + }, + "directdebit_GB.serviceUserNumber" : { + "description" : "Direct debit GB: service user number.", + "type" : "string" + }, + "eci" : { + "description" : "3DS: Electronic Commerce Indicator.", "type" : "string" }, "expiryDate" : { - "description" : "Returns the card expiry date.", + "description" : "Expiry date of the card.", + "type" : "string" + }, + "extraCostsCurrency" : { + "description" : "Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification).", + "type" : "string" + }, + "extraCostsValue" : { + "description" : "Related additional cost value.", + "type" : "string" + }, + "fraudCheck--" : { + "description" : "Information on the fraud check in a dynamic format.", + "type" : "string" + }, + "fraudManualReview" : { + "description" : "Indicates if the risk check was done manually.", + "type" : "string" + }, + "fraudOffset" : { + "description" : "The fraud offset.", + "type" : "string" + }, + "fraudResultType" : { + "description" : "Result type of the fraud check.", + "type" : "string" + }, + "fundingSource" : { + "description" : "Funding source.", + "type" : "string" + }, + "grossCurrency" : { + "description" : "Chargeback gross currency.", + "type" : "string" + }, + "grossValue" : { + "description" : "Chargeback gross value.", + "type" : "string" + }, + "iban" : { + "description" : "International Bank Account Number.", + "type" : "string" + }, + "installments.value" : { + "description" : "The number of installments that the payment amount should be charged with.\n\nExample: 5\n> Only relevant for card payments in countries that support installments.", + "type" : "string" + }, + "interactionCounter" : { + "description" : "3DS interaction counter.", + "type" : "string" + }, + "issuerComments.cardholderName" : { + "description" : "Card holder name.", + "type" : "string" + }, + "issuerCountry" : { + "description" : "Country of the card issuer.", + "type" : "string" + }, + "latestCard.bin" : { + "description" : "Recurring: Latest card BIN.", + "type" : "string" + }, + "latestCard.expiryDate" : { + "description" : "Recurring: Latest card expiry date.", + "type" : "string" + }, + "latestCard.summary" : { + "description" : "Recurring: Latest card summary.", + "type" : "string" + }, + "liabilityShift" : { + "description" : "Risk liability shift.", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "A set of key-value pairs provided in the request, prefixed with 'metadata.'. For example, 'metadata.myField: myValue'", + "type" : "object" + }, + "networkToken.available" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.bin" : { + "description" : "Recurring related.", + "type" : "string" + }, + "networkToken.tokenSummary" : { + "description" : "Recurring related.", + "type" : "string" + }, + "nfc.expire" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.issue" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.pin.provided" : { + "description" : "NFC related.", + "type" : "string" + }, + "nfc.uid" : { + "description" : "NFC related.", + "type" : "string" + }, + "opi.transToken" : { + "description" : "Trans token related to Oracle Opera.", + "type" : "string" + }, + "ownerCity" : { + "description" : "Owner city.", + "type" : "string" + }, + "ownerName" : { + "description" : "Owner name.", + "type" : "string" + }, + "payULatamTrazabilityCode" : { + "description" : "Related to PayU in LATAM.", + "type" : "string" + }, + "paymentLinkId" : { + "description" : "ID of the Checkout payment link.", + "type" : "string" + }, + "realtimeAccountUpdaterStatus" : { + "description" : "Real time Account Update status.", + "type" : "string" + }, + "recurring.contractTypes" : { + "description" : "Recurring contract types.", + "type" : "string" + }, + "recurring.firstPspReference" : { + "description" : "Recurring first PSP reference.", + "type" : "string" + }, + "recurring.recurringDetailReference" : { + "description" : "recurring detail reference.", + "type" : "string" + }, + "referred" : { + "description" : "If the payment is referred, this field is set to true.\n\nThis field is unavailable if the payment is referred and is usually not returned with ecommerce transactions.\n\nExample: true", + "type" : "string" + }, + "refusalReasonRaw" : { + "description" : "Raw refusal reason received from the acquirer, where available.\n\nExample: AUTHORISED", + "type" : "string" + }, + "retry.rescueScheduled" : { + "description" : "Indicates if an auto rescue for a pyment is scheduled.", + "type" : "string" + }, + "riskProfile" : { + "description" : "Related to Risk.", + "type" : "string" + }, + "riskProfileReference" : { + "description" : "Related to Risk.", + "type" : "string" + }, + "shopperCountry" : { + "description" : "Country of the shopper.", "type" : "string" }, "shopperEmail" : { "description" : "The shopper's email address.", "type" : "string" }, + "shopperIP" : { + "description" : "IP of the shopper.", + "type" : "string" + }, + "shopperInteraction" : { + "description" : "The shopper interaction type of the payment request.\n\nExample: Ecommerce", + "type" : "string" + }, + "shopperLocale" : { + "description" : "The locale of the shopper.", + "type" : "string" + }, "shopperReference" : { "description" : "The ID that uniquely identifies the shopper. The `shopperReference` is the same as the `shopperReference` used in the initial payment.", "type" : "string" + }, + "shopperSocialSecurityNumber" : { + "description" : "The social security number of the shopper.", + "type" : "string" + }, + "shopperStatement" : { + "description" : "The text to be shown on the shopper's bank statement.", + "type" : "string" + }, + "shopperTelephone" : { + "description" : "The telephone number of the shopper.", + "type" : "string" + }, + "store" : { + "description" : "Identifier of the store processing the transaction.", + "type" : "string" + }, + "tenderReference" : { + "description" : "Tender reference. For point-of-sale integrations only.", + "type" : "string" + }, + "terminalId" : { + "description" : "Terminal ID. For point-of-sale integrations only.", + "type" : "string" + }, + "threeDAuthenticated" : { + "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment.\n\nExample: true", + "type" : "string" + }, + "threeDAuthenticatedResponse" : { + "description" : "The raw 3DS authentication result from the card issuer.\n\nExample: N", + "type" : "string" + }, + "threeDOffered" : { + "description" : "A Boolean value indicating whether 3DS was offered for this payment.\n\nExample: true", + "type" : "string" + }, + "threeDOfferedResponse" : { + "description" : "The raw enrollment result from the 3DS directory services of the card schemes.\n\nExample: Y", + "type" : "string" + }, + "threeDSVersion" : { + "description" : "The 3D Secure 2 version.", + "type" : "string" + }, + "tokenTxVariant" : { + "description" : "Payment method variant of the token/wallet payment method.", + "type" : "string" + }, + "totalFraudScore" : { + "description" : "Total fraud score from risk.", + "type" : "string" + }, + "untokenisedCardSummary" : { + "description" : "Card summary without tokenization.", + "type" : "string" + }, + "xid" : { + "description" : "The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field.\n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA=", + "type" : "string" } } }, diff --git a/yaml/AccountService-v3.yaml b/yaml/AccountService-v3.yaml index ede0947..f514677 100644 --- a/yaml/AccountService-v3.yaml +++ b/yaml/AccountService-v3.yaml @@ -5,51 +5,24 @@ info: version: '3' x-publicVersion: true title: 'Adyen for Platforms: Account API' - description: 'The Account API provides endpoints for managing account-related entities - on your platform. These related entities include account holders, accounts, bank - accounts, shareholders, and KYC-related documents. The management operations include - actions such as creation, retrieval, updating, and deletion of them. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Account API, you must use basic authentication credentials of - your web service user. If you don''t have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Account/v3/createAccountHolder - - ```' + description: "The Account API provides endpoints for managing account-related entities\ + \ on your platform. These related entities include account holders, accounts,\ + \ bank accounts, shareholders, and verification-related documents. The management\ + \ operations include actions such as creation, retrieval, updating, and deletion\ + \ of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v3/createAccountHolder\n\ + ```" + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,10 +41,10 @@ paths: post: tags: - Accounts - summary: Close an account. + summary: Close an account description: Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed - account, the payments will be directed to your liable account. + account, the payments are sent to your liable account. operationId: post-closeAccount x-groupName: Accounts x-sortIndex: 3 @@ -140,12 +113,12 @@ paths: post: tags: - Account holders - summary: Close an account holder. + summary: Close an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to - an account of an account holder with a **Closed** status,the payments will - be directed to your liable account. + an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), + the payments are sent to your liable account. operationId: post-closeAccountHolder x-groupName: Account holders x-sortIndex: 7 @@ -214,7 +187,7 @@ paths: post: tags: - Accounts - summary: Create a new account. + summary: Create an account description: Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts). operationId: post-createAccount @@ -285,9 +258,8 @@ paths: post: tags: - Account holders - summary: Create a new account holder. - description: Creates an account holder, which [represents the sub-merchant's - entity](https://docs.adyen.com/platforms/account-structure#your-platform) + summary: Create an account holder + description: Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types). @@ -370,8 +342,8 @@ paths: post: tags: - Verification - summary: Delete bank accounts. - description: 'Deletes one or more bank accounts of an account holder. ' + summary: Delete bank accounts + description: 'Deletes bank accounts associated with an account holder. ' operationId: post-deleteBankAccounts x-groupName: Verification x-sortIndex: 4 @@ -440,8 +412,8 @@ paths: post: tags: - Verification - summary: Delete shareholders. - description: Deletes one or more shareholders from an account holder. + summary: Delete shareholders + description: Deletes shareholders associated with an account holder. operationId: post-deleteShareholders x-groupName: Verification x-sortIndex: 6 @@ -510,8 +482,8 @@ paths: post: tags: - Verification - summary: Delete signatories. - description: Deletes one or more signatories from an account holder. + summary: Delete signatories + description: Deletes signatories associated with an account holder. operationId: post-deleteSignatories x-groupName: Verification x-sortIndex: 7 @@ -577,8 +549,8 @@ paths: post: tags: - Account holders - summary: Get an account holder. - description: Retrieves the details of an account holder. + summary: Get an account holder + description: Returns the details of an account holder. operationId: post-getAccountHolder x-groupName: Account holders x-sortIndex: 2 @@ -649,7 +621,7 @@ paths: post: tags: - Account holders - summary: Get a tax form. + summary: Get a tax form description: Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms). operationId: post-getTaxForm @@ -713,9 +685,9 @@ paths: post: tags: - Verification - summary: Get documents. - description: 'Retrieves documents that were previously uploaded for an account - holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + summary: Get documents + description: 'Returns documents that were previously uploaded for an account + holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process). ' operationId: post-getUploadedDocuments @@ -779,7 +751,7 @@ paths: post: tags: - Account holders - summary: Suspend an account holder. + summary: Suspend an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**. operationId: post-suspendAccountHolder @@ -850,15 +822,14 @@ paths: post: tags: - Account holders - summary: Unsuspend an account holder. - description: 'Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) - from **Suspended** to **Inactive**. Account holders can have a **Suspended** - status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) - endpoint or if a KYC deadline expires. - - - You can only unsuspend account holders if they _do not_ have verification - checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).' + summary: Unsuspend an account holder + description: "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses)\ + \ from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)\ + \ if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder)\ + \ endpoint or if a verification deadline expires.\n\nYou can only unsuspend\ + \ account holders if they do not have verification checks with a **FAILED**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)." operationId: post-unSuspendAccountHolder x-groupName: Account holders x-sortIndex: 6 @@ -927,7 +898,7 @@ paths: post: tags: - Accounts - summary: Update an account. + summary: Update an account description: Updates the description or payout schedule of an account. operationId: post-updateAccount x-groupName: Accounts @@ -997,16 +968,16 @@ paths: post: tags: - Account holders - summary: Update an account holder. + summary: Update an account holder description: "Updates the `accountHolderDetails` and `processingTier` of an\ \ account holder, and adds bank accounts and shareholders.\n\nWhen updating\ \ `accountHolderDetails`, parameters that are not included in the request\ - \ are left unchanged except for the objects below.\n\n* `metadata`: Updating\ + \ are left unchanged except for the following object:\n\n* `metadata`: Updating\ \ the metadata replaces the entire object. This means that to update an existing\ - \ key-value pair, you must provide the changes along with other existing key-value\ - \ pairs.\n\nWhen updating any field in the following objects, you must submit\ - \ all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\ - \n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ + \ key-value pair, you must provide the changes, as well as other existing\ + \ key-value pairs.\n\nWhen updating any field in the following objects, you\ + \ must submit all the fields required for validation:\n\n * `address`\n\n\ + * `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ \n For example, to update the `address.postalCode`, you must also submit the\ \ `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince`\ \ so that the address can be validated.\n\nTo add a bank account or shareholder,\ @@ -1086,7 +1057,7 @@ paths: post: tags: - Account holders - summary: Update payout or processing state. + summary: Update payout or processing state description: Disables or enables the processing or payout state of an account holder. operationId: post-updateAccountHolderState @@ -1157,9 +1128,9 @@ paths: post: tags: - Verification - summary: Upload a document. + summary: Upload a document description: Uploads a document for an account holder. Adyen uses the documents - in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + during the [verification process](https://docs.adyen.com/platforms/verification-process). operationId: post-uploadDocument x-groupName: Verification x-sortIndex: 1 @@ -1570,9 +1541,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1828,7 +1800,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -2078,6 +2050,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2300,7 +2276,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - legalEntity @@ -2441,7 +2417,7 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2527,11 +2503,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -2935,7 +2911,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification diff --git a/yaml/AccountService-v4.yaml b/yaml/AccountService-v4.yaml index 20efff4..439c6d9 100644 --- a/yaml/AccountService-v4.yaml +++ b/yaml/AccountService-v4.yaml @@ -5,51 +5,24 @@ info: version: '4' x-publicVersion: true title: 'Adyen for Platforms: Account API' - description: 'The Account API provides endpoints for managing account-related entities - on your platform. These related entities include account holders, accounts, bank - accounts, shareholders, and KYC-related documents. The management operations include - actions such as creation, retrieval, updating, and deletion of them. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Account API, you must use basic authentication credentials of - your web service user. If you don''t have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Account/v4/createAccountHolder - - ```' + description: "The Account API provides endpoints for managing account-related entities\ + \ on your platform. These related entities include account holders, accounts,\ + \ bank accounts, shareholders, and verification-related documents. The management\ + \ operations include actions such as creation, retrieval, updating, and deletion\ + \ of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v4/createAccountHolder\n\ + ```" + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,10 +41,10 @@ paths: post: tags: - Accounts - summary: Close an account. + summary: Close an account description: Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed - account, the payments will be directed to your liable account. + account, the payments are sent to your liable account. operationId: post-closeAccount x-groupName: Accounts x-sortIndex: 3 @@ -140,12 +113,12 @@ paths: post: tags: - Account holders - summary: Close an account holder. + summary: Close an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to - an account of an account holder with a **Closed** status,the payments will - be directed to your liable account. + an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), + the payments are sent to your liable account. operationId: post-closeAccountHolder x-groupName: Account holders x-sortIndex: 7 @@ -214,7 +187,7 @@ paths: post: tags: - Accounts - summary: Create a new account. + summary: Create an account description: Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts). operationId: post-createAccount @@ -285,9 +258,8 @@ paths: post: tags: - Account holders - summary: Create a new account holder. - description: Creates an account holder, which [represents the sub-merchant's - entity](https://docs.adyen.com/platforms/account-structure#your-platform) + summary: Create an account holder + description: Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types). @@ -354,8 +326,8 @@ paths: post: tags: - Verification - summary: Delete bank accounts. - description: 'Deletes one or more bank accounts of an account holder. ' + summary: Delete bank accounts + description: 'Deletes bank accounts associated with an account holder. ' operationId: post-deleteBankAccounts x-groupName: Verification x-sortIndex: 4 @@ -424,8 +396,8 @@ paths: post: tags: - Verification - summary: Delete shareholders. - description: Deletes one or more shareholders from an account holder. + summary: Delete shareholders + description: Deletes shareholders associated with an account holder. operationId: post-deleteShareholders x-groupName: Verification x-sortIndex: 6 @@ -494,8 +466,8 @@ paths: post: tags: - Verification - summary: Delete signatories. - description: Deletes one or more signatories from an account holder. + summary: Delete signatories + description: Deletes signatories associated with an account holder. operationId: post-deleteSignatories x-groupName: Verification x-sortIndex: 7 @@ -561,8 +533,8 @@ paths: post: tags: - Account holders - summary: Get an account holder. - description: Retrieves the details of an account holder. + summary: Get an account holder + description: Returns the details of an account holder. operationId: post-getAccountHolder x-groupName: Account holders x-sortIndex: 2 @@ -633,7 +605,7 @@ paths: post: tags: - Account holders - summary: Get a tax form. + summary: Get a tax form description: Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms). operationId: post-getTaxForm @@ -697,9 +669,9 @@ paths: post: tags: - Verification - summary: Get documents. - description: 'Retrieves documents that were previously uploaded for an account - holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + summary: Get documents + description: 'Returns documents that were previously uploaded for an account + holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process). ' operationId: post-getUploadedDocuments @@ -763,7 +735,7 @@ paths: post: tags: - Account holders - summary: Suspend an account holder. + summary: Suspend an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**. operationId: post-suspendAccountHolder @@ -834,15 +806,14 @@ paths: post: tags: - Account holders - summary: Unsuspend an account holder. - description: 'Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) - from **Suspended** to **Inactive**. Account holders can have a **Suspended** - status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) - endpoint or if a KYC deadline expires. - - - You can only unsuspend account holders if they _do not_ have verification - checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).' + summary: Unsuspend an account holder + description: "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses)\ + \ from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)\ + \ if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder)\ + \ endpoint or if a verification deadline expires.\n\nYou can only unsuspend\ + \ account holders if they do not have verification checks with a **FAILED**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)." operationId: post-unSuspendAccountHolder x-groupName: Account holders x-sortIndex: 6 @@ -911,7 +882,7 @@ paths: post: tags: - Accounts - summary: Update an account. + summary: Update an account description: Updates the description or payout schedule of an account. operationId: post-updateAccount x-groupName: Accounts @@ -981,16 +952,16 @@ paths: post: tags: - Account holders - summary: Update an account holder. + summary: Update an account holder description: "Updates the `accountHolderDetails` and `processingTier` of an\ \ account holder, and adds bank accounts and shareholders.\n\nWhen updating\ \ `accountHolderDetails`, parameters that are not included in the request\ - \ are left unchanged except for the objects below.\n\n* `metadata`: Updating\ + \ are left unchanged except for the following object:\n\n* `metadata`: Updating\ \ the metadata replaces the entire object. This means that to update an existing\ - \ key-value pair, you must provide the changes along with other existing key-value\ - \ pairs.\n\nWhen updating any field in the following objects, you must submit\ - \ all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\ - \n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ + \ key-value pair, you must provide the changes, as well as other existing\ + \ key-value pairs.\n\nWhen updating any field in the following objects, you\ + \ must submit all the fields required for validation:\n\n * `address`\n\n\ + * `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ \n For example, to update the `address.postalCode`, you must also submit the\ \ `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince`\ \ so that the address can be validated.\n\nTo add a bank account or shareholder,\ @@ -1070,7 +1041,7 @@ paths: post: tags: - Account holders - summary: Update payout or processing state. + summary: Update payout or processing state description: Disables or enables the processing or payout state of an account holder. operationId: post-updateAccountHolderState @@ -1141,9 +1112,9 @@ paths: post: tags: - Verification - summary: Upload a document. + summary: Upload a document description: Uploads a document for an account holder. Adyen uses the documents - in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + during the [verification process](https://docs.adyen.com/platforms/verification-process). operationId: post-uploadDocument x-groupName: Verification x-sortIndex: 1 @@ -1563,9 +1534,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1848,7 +1820,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -2109,6 +2081,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2348,7 +2324,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - legalEntity @@ -2489,7 +2465,7 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2575,11 +2551,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -3006,7 +2982,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification diff --git a/yaml/AccountService-v5.yaml b/yaml/AccountService-v5.yaml index e5faff6..d966011 100644 --- a/yaml/AccountService-v5.yaml +++ b/yaml/AccountService-v5.yaml @@ -5,51 +5,24 @@ info: version: '5' x-publicVersion: true title: 'Adyen for Platforms: Account API' - description: 'The Account API provides endpoints for managing account-related entities - on your platform. These related entities include account holders, accounts, bank - accounts, shareholders, and KYC-related documents. The management operations include - actions such as creation, retrieval, updating, and deletion of them. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Account API, you must use basic authentication credentials of - your web service user. If you don''t have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Account/v5/createAccountHolder - - ```' + description: "The Account API provides endpoints for managing account-related entities\ + \ on your platform. These related entities include account holders, accounts,\ + \ bank accounts, shareholders, and verification-related documents. The management\ + \ operations include actions such as creation, retrieval, updating, and deletion\ + \ of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v5/createAccountHolder\n\ + ```" + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,9 +41,9 @@ paths: post: tags: - Verification - summary: Trigger verification. - description: Triggers the KYC verification for an account holder even if the - checks are not yet required for the volume that they currently process. + summary: Trigger verification + description: Triggers the verification of an account holder even if the checks + are not yet required for the volume that they are currently processing. x-addedInVersion: '5' operationId: post-checkAccountHolder x-groupName: Verification @@ -140,10 +113,10 @@ paths: post: tags: - Accounts - summary: Close an account. + summary: Close an account description: Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed - account, the payments will be directed to your liable account. + account, the payments are sent to your liable account. operationId: post-closeAccount x-groupName: Accounts x-sortIndex: 3 @@ -212,12 +185,12 @@ paths: post: tags: - Account holders - summary: Close an account holder. + summary: Close an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to - an account of an account holder with a **Closed** status,the payments will - be directed to your liable account. + an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), + the payments are sent to your liable account. operationId: post-closeAccountHolder x-groupName: Account holders x-sortIndex: 7 @@ -286,8 +259,8 @@ paths: post: tags: - Account holders - summary: Close stores. - description: Close one or more stores of the account holder. + summary: Close stores + description: Closes stores associated with an account holder. x-addedInVersion: '5' operationId: post-closeStores x-groupName: Account holders @@ -347,7 +320,7 @@ paths: post: tags: - Accounts - summary: Create a new account. + summary: Create an account description: Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts). operationId: post-createAccount @@ -418,9 +391,8 @@ paths: post: tags: - Account holders - summary: Create a new account holder. - description: Creates an account holder, which [represents the sub-merchant's - entity](https://docs.adyen.com/platforms/account-structure#your-platform) + summary: Create an account holder + description: Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types). @@ -487,8 +459,8 @@ paths: post: tags: - Verification - summary: Delete bank accounts. - description: 'Deletes one or more bank accounts of an account holder. ' + summary: Delete bank accounts + description: 'Deletes bank accounts associated with an account holder. ' operationId: post-deleteBankAccounts x-groupName: Verification x-sortIndex: 4 @@ -557,8 +529,8 @@ paths: post: tags: - Verification - summary: Delete payout methods. - description: Deletes one or more payout methods of an account holder. + summary: Delete payout methods + description: Deletes payout methods associated with an account holder. x-addedInVersion: '5' operationId: post-deletePayoutMethods x-groupName: Verification @@ -628,8 +600,8 @@ paths: post: tags: - Verification - summary: Delete shareholders. - description: Deletes one or more shareholders from an account holder. + summary: Delete shareholders + description: Deletes shareholders associated with an account holder. operationId: post-deleteShareholders x-groupName: Verification x-sortIndex: 6 @@ -698,8 +670,8 @@ paths: post: tags: - Verification - summary: Delete signatories. - description: Deletes one or more signatories from an account holder. + summary: Delete signatories + description: Deletes signatories associated with an account holder. operationId: post-deleteSignatories x-groupName: Verification x-sortIndex: 7 @@ -765,8 +737,8 @@ paths: post: tags: - Account holders - summary: Get an account holder. - description: Retrieves the details of an account holder. + summary: Get an account holder + description: Returns the details of an account holder. operationId: post-getAccountHolder x-groupName: Account holders x-sortIndex: 2 @@ -837,7 +809,7 @@ paths: post: tags: - Account holders - summary: Get a tax form. + summary: Get a tax form description: Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms). operationId: post-getTaxForm @@ -901,9 +873,9 @@ paths: post: tags: - Verification - summary: Get documents. - description: 'Retrieves documents that were previously uploaded for an account - holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + summary: Get documents + description: 'Returns documents that were previously uploaded for an account + holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process). ' operationId: post-getUploadedDocuments @@ -967,7 +939,7 @@ paths: post: tags: - Account holders - summary: Suspend an account holder. + summary: Suspend an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**. operationId: post-suspendAccountHolder @@ -1038,15 +1010,14 @@ paths: post: tags: - Account holders - summary: Unsuspend an account holder. - description: 'Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) - from **Suspended** to **Inactive**. Account holders can have a **Suspended** - status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) - endpoint or if a KYC deadline expires. - - - You can only unsuspend account holders if they _do not_ have verification - checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).' + summary: Unsuspend an account holder + description: "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses)\ + \ from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)\ + \ if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder)\ + \ endpoint or if a verification deadline expires.\n\nYou can only unsuspend\ + \ account holders if they do not have verification checks with a **FAILED**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)." operationId: post-unSuspendAccountHolder x-groupName: Account holders x-sortIndex: 6 @@ -1115,7 +1086,7 @@ paths: post: tags: - Accounts - summary: Update an account. + summary: Update an account description: Updates the description or payout schedule of an account. operationId: post-updateAccount x-groupName: Accounts @@ -1185,16 +1156,16 @@ paths: post: tags: - Account holders - summary: Update an account holder. + summary: Update an account holder description: "Updates the `accountHolderDetails` and `processingTier` of an\ \ account holder, and adds bank accounts and shareholders.\n\nWhen updating\ \ `accountHolderDetails`, parameters that are not included in the request\ - \ are left unchanged except for the objects below.\n\n* `metadata`: Updating\ + \ are left unchanged except for the following object:\n\n* `metadata`: Updating\ \ the metadata replaces the entire object. This means that to update an existing\ - \ key-value pair, you must provide the changes along with other existing key-value\ - \ pairs.\n\nWhen updating any field in the following objects, you must submit\ - \ all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\ - \n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ + \ key-value pair, you must provide the changes, as well as other existing\ + \ key-value pairs.\n\nWhen updating any field in the following objects, you\ + \ must submit all the fields required for validation:\n\n * `address`\n\n\ + * `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ \n For example, to update the `address.postalCode`, you must also submit the\ \ `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince`\ \ so that the address can be validated.\n\nTo add a bank account or shareholder,\ @@ -1274,7 +1245,7 @@ paths: post: tags: - Account holders - summary: Update payout or processing state. + summary: Update payout or processing state description: Disables or enables the processing or payout state of an account holder. operationId: post-updateAccountHolderState @@ -1345,9 +1316,9 @@ paths: post: tags: - Verification - summary: Upload a document. + summary: Upload a document description: Uploads a document for an account holder. Adyen uses the documents - in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + during the [verification process](https://docs.adyen.com/platforms/verification-process). operationId: post-uploadDocument x-groupName: Verification x-sortIndex: 1 @@ -1833,9 +1804,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -2121,7 +2093,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -2459,6 +2431,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2696,7 +2672,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - legalEntity @@ -2835,7 +2811,7 @@ components: payoutMethodCode: description: The unique ID of the card to which the check applies. type: string - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2922,11 +2898,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -3498,7 +3474,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification diff --git a/yaml/AccountService-v6.yaml b/yaml/AccountService-v6.yaml index 2345e21..62061a6 100644 --- a/yaml/AccountService-v6.yaml +++ b/yaml/AccountService-v6.yaml @@ -5,51 +5,24 @@ info: version: '6' x-publicVersion: true title: 'Adyen for Platforms: Account API' - description: 'The Account API provides endpoints for managing account-related entities - on your platform. These related entities include account holders, accounts, bank - accounts, shareholders, and KYC-related documents. The management operations include - actions such as creation, retrieval, updating, and deletion of them. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Account API, you must use basic authentication credentials of - your web service user. If you don''t have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder - - ```' + description: "The Account API provides endpoints for managing account-related entities\ + \ on your platform. These related entities include account holders, accounts,\ + \ bank accounts, shareholders, and verification-related documents. The management\ + \ operations include actions such as creation, retrieval, updating, and deletion\ + \ of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/platforms).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder\n\ + ```" + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,9 +41,9 @@ paths: post: tags: - Verification - summary: Trigger verification. - description: Triggers the KYC verification for an account holder even if the - checks are not yet required for the volume that they currently process. + summary: Trigger verification + description: Triggers the verification of an account holder even if the checks + are not yet required for the volume that they are currently processing. x-addedInVersion: '5' operationId: post-checkAccountHolder x-groupName: Verification @@ -140,10 +113,10 @@ paths: post: tags: - Accounts - summary: Close an account. + summary: Close an account description: Closes an account. If an account is closed, you cannot process transactions, pay out its funds, or reopen it. If payments are made to a closed - account, the payments will be directed to your liable account. + account, the payments are sent to your liable account. operationId: post-closeAccount x-groupName: Accounts x-sortIndex: 3 @@ -212,12 +185,12 @@ paths: post: tags: - Account holders - summary: Close an account holder. + summary: Close an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Closed**. This state is final. If an account holder is closed, you can't process transactions, pay out funds, or reopen it. If payments are made to - an account of an account holder with a **Closed** status,the payments will - be directed to your liable account. + an account of an account holder with a **Closed** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status), + the payments are sent to your liable account. operationId: post-closeAccountHolder x-groupName: Account holders x-sortIndex: 7 @@ -286,8 +259,8 @@ paths: post: tags: - Account holders - summary: Close stores. - description: Close one or more stores of the account holder. + summary: Close stores + description: Closes stores associated with an account holder. x-addedInVersion: '5' operationId: post-closeStores x-groupName: Account holders @@ -347,7 +320,7 @@ paths: post: tags: - Accounts - summary: Create a new account. + summary: Create an account description: Creates an account under an account holder. An account holder can have [multiple accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#create-additional-accounts). operationId: post-createAccount @@ -418,9 +391,8 @@ paths: post: tags: - Account holders - summary: Create a new account holder. - description: Creates an account holder, which [represents the sub-merchant's - entity](https://docs.adyen.com/platforms/account-structure#your-platform) + summary: Create an account holder + description: Creates an account holder that [represents the sub-merchant's entity](https://docs.adyen.com/platforms/account-structure#your-platform) in your platform. The details that you need to provide in the request depend on the sub-merchant's legal entity type. For more information, refer to [Account holder and accounts](https://docs.adyen.com/platforms/account-holders-and-accounts#legal-entity-types). @@ -487,8 +459,8 @@ paths: post: tags: - Verification - summary: Delete bank accounts. - description: 'Deletes one or more bank accounts of an account holder. ' + summary: Delete bank accounts + description: 'Deletes bank accounts associated with an account holder. ' operationId: post-deleteBankAccounts x-groupName: Verification x-sortIndex: 4 @@ -557,8 +529,8 @@ paths: post: tags: - Verification - summary: Delete payout methods. - description: Deletes one or more payout methods of an account holder. + summary: Delete payout methods + description: Deletes payout methods associated with an account holder. x-addedInVersion: '5' operationId: post-deletePayoutMethods x-groupName: Verification @@ -628,8 +600,8 @@ paths: post: tags: - Verification - summary: Delete shareholders. - description: Deletes one or more shareholders from an account holder. + summary: Delete shareholders + description: Deletes shareholders associated with an account holder. operationId: post-deleteShareholders x-groupName: Verification x-sortIndex: 6 @@ -698,8 +670,8 @@ paths: post: tags: - Verification - summary: Delete signatories. - description: Deletes one or more signatories from an account holder. + summary: Delete signatories + description: Deletes signatories associated with an account holder. operationId: post-deleteSignatories x-groupName: Verification x-sortIndex: 7 @@ -765,8 +737,8 @@ paths: post: tags: - Account holders - summary: Get an account holder. - description: Retrieves the details of an account holder. + summary: Get an account holder + description: Returns the details of an account holder. operationId: post-getAccountHolder x-groupName: Account holders x-sortIndex: 2 @@ -837,7 +809,7 @@ paths: post: tags: - Account holders - summary: Get a tax form. + summary: Get a tax form description: Generates a tax form for account holders operating in the US. For more information, refer to [Providing tax forms](https://docs.adyen.com/platforms/tax-forms). operationId: post-getTaxForm @@ -901,9 +873,9 @@ paths: post: tags: - Verification - summary: Get documents. - description: 'Retrieves documents that were previously uploaded for an account - holder. Adyen uses the documents in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + summary: Get documents + description: 'Returns documents that were previously uploaded for an account + holder. Adyen uses the documents during the [verification process](https://docs.adyen.com/platforms/verification-process). ' operationId: post-getUploadedDocuments @@ -967,7 +939,7 @@ paths: post: tags: - Account holders - summary: Suspend an account holder. + summary: Suspend an account holder description: Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) to **Suspended**. operationId: post-suspendAccountHolder @@ -1038,15 +1010,14 @@ paths: post: tags: - Account holders - summary: Unsuspend an account holder. - description: 'Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses) - from **Suspended** to **Inactive**. Account holders can have a **Suspended** - status if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder) - endpoint or if a KYC deadline expires. - - - You can only unsuspend account holders if they _do not_ have verification - checks with a **FAILED** [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status).' + summary: Unsuspend an account holder + description: "Changes the [status of an account holder](https://docs.adyen.com/platforms/account-holders-and-accounts#account-holder-statuses)\ + \ from **Suspended** to **Inactive**. \nAccount holders can have a **Suspended**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)\ + \ if you suspend them through the [`/suspendAccountHolder`](https://docs.adyen.com/api-explorer/#/Account/v5/post/suspendAccountHolder)\ + \ endpoint or if a verification deadline expires.\n\nYou can only unsuspend\ + \ account holders if they do not have verification checks with a **FAILED**\ + \ [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)." operationId: post-unSuspendAccountHolder x-groupName: Account holders x-sortIndex: 6 @@ -1115,7 +1086,7 @@ paths: post: tags: - Accounts - summary: Update an account. + summary: Update an account description: Updates the description or payout schedule of an account. operationId: post-updateAccount x-groupName: Accounts @@ -1185,16 +1156,16 @@ paths: post: tags: - Account holders - summary: Update an account holder. + summary: Update an account holder description: "Updates the `accountHolderDetails` and `processingTier` of an\ \ account holder, and adds bank accounts and shareholders.\n\nWhen updating\ \ `accountHolderDetails`, parameters that are not included in the request\ - \ are left unchanged except for the objects below.\n\n* `metadata`: Updating\ + \ are left unchanged except for the following object:\n\n* `metadata`: Updating\ \ the metadata replaces the entire object. This means that to update an existing\ - \ key-value pair, you must provide the changes along with other existing key-value\ - \ pairs.\n\nWhen updating any field in the following objects, you must submit\ - \ all the fields required for validation.\n\n * `address`\n\n* `fullPhoneNumber`\n\ - \n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ + \ key-value pair, you must provide the changes, as well as other existing\ + \ key-value pairs.\n\nWhen updating any field in the following objects, you\ + \ must submit all the fields required for validation:\n\n * `address`\n\n\ + * `fullPhoneNumber`\n\n* `bankAccountDetails.BankAccountDetail`\n\n* `businessDetails.shareholders.ShareholderContact`\n\ \n For example, to update the `address.postalCode`, you must also submit the\ \ `address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince`\ \ so that the address can be validated.\n\nTo add a bank account or shareholder,\ @@ -1274,7 +1245,7 @@ paths: post: tags: - Account holders - summary: Update payout or processing state. + summary: Update payout or processing state description: Disables or enables the processing or payout state of an account holder. operationId: post-updateAccountHolderState @@ -1345,9 +1316,9 @@ paths: post: tags: - Verification - summary: Upload a document. + summary: Upload a document description: Uploads a document for an account holder. Adyen uses the documents - in the [KYC verification checks](https://docs.adyen.com/platforms/verification-checks). + during the [verification process](https://docs.adyen.com/platforms/verification-process). operationId: post-uploadDocument x-groupName: Verification x-sortIndex: 1 @@ -1840,9 +1811,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -2148,7 +2120,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' verificationProfile: x-addedInVersion: '6' description: The identifier of the profile that applies to this entity. @@ -2501,6 +2473,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2740,7 +2716,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' verificationProfile: x-addedInVersion: '6' description: The identifier of the profile that applies to this entity. @@ -2863,7 +2839,7 @@ components: personalData: description: Personal information of the individual. $ref: '#/components/schemas/ViasPersonalData' - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -3007,11 +2983,11 @@ components: description: The code of the Ultimate Parent Company to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' legalArrangements: x-addedInVersion: '6' description: The results of the checks on the legal arrangements. @@ -3766,7 +3742,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' verificationProfile: x-addedInVersion: '6' description: The identifier of the profile that applies to this entity. diff --git a/yaml/BalancePlatformNotificationService-v1.yaml b/yaml/BalancePlatformNotificationService-v1.yaml index cf4c842..22d25ed 100644 --- a/yaml/BalancePlatformNotificationService-v1.yaml +++ b/yaml/BalancePlatformNotificationService-v1.yaml @@ -12,6 +12,7 @@ info: \ balances in your own dashboards or to keep track of incoming funds.\n\nRefer\ \ to [Notification webhooks](https://docs.adyen.com/issuing/notification-webhooks)\ \ for more information." + x-timestamp: '2022-04-20T09:24:21Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -33,7 +34,7 @@ webhooks: summary: Account holder created description: Adyen sends this webhook when you successfully [create an account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders). - operationId: post-alancePlatform.accountHolder.created + operationId: post-balancePlatform.accountHolder.created x-groupName: Account holder and balance account x-sortIndex: 5 security: @@ -57,7 +58,7 @@ webhooks: summary: Account holder updated description: Adyen sends this webhook when you successfully [update an account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/accountHolders/{id}). - operationId: post-alancePlatform.accountHolder.updated + operationId: post-balancePlatform.accountHolder.updated x-groupName: Account holder and balance account x-sortIndex: 5 security: @@ -81,7 +82,7 @@ webhooks: summary: Balance account created description: Adyen sends this webhook when you successfully [create a balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts). - operationId: post-alancePlatform.balanceAccount.created + operationId: post-balancePlatform.balanceAccount.created x-groupName: Account holder and balance account x-sortIndex: 5 security: @@ -98,6 +99,75 @@ webhooks: schema: $ref: '#/components/schemas/BalancePlatformNotificationResponse' description: OK - the request has succeeded. + balancePlatform.balanceAccountSweep.created: + post: + tags: + - Account holder and balance account + summary: Balance account sweep created + description: Adyen sends this webhook when you successfully [create a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts/{balanceAccountId}/sweeps). + operationId: post-balancePlatform.balanceAccountSweep.created + x-groupName: Account holder and balance account + x-sortIndex: 6 + security: + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SweepConfigurationNotificationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BalancePlatformNotificationResponse' + description: OK - the request has succeeded. + balancePlatform.balanceAccountSweep.deleted: + post: + tags: + - Account holder and balance account + summary: Balance account sweep deleted + description: Adyen sends this webhook when you successfully [delete a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/delete/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}). + operationId: post-balancePlatform.balanceAccountSweep.deleted + x-groupName: Account holder and balance account + x-sortIndex: 6 + security: + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SweepConfigurationNotificationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BalancePlatformNotificationResponse' + description: OK - the request has succeeded. + balancePlatform.balanceAccountSweep.updated: + post: + tags: + - Account holder and balance account + summary: Balance account sweep updated + description: Adyen sends this webhook when you successfully [update a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}). + operationId: post-balancePlatform.balanceAccountSweep.updated + x-groupName: Account holder and balance account + x-sortIndex: 6 + security: + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SweepConfigurationNotificationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BalancePlatformNotificationResponse' + description: OK - the request has succeeded. balancePlatform.incomingTransfer.created: post: tags: @@ -115,7 +185,8 @@ webhooks: * For incoming fund transfers, the webhook only includes information about the balance account.' - operationId: post-alancePlatform.incomingTransfer.created + x-addedInVersion: '1' + operationId: post-balancePlatform.incomingTransfer.created x-groupName: Fund movements x-sortIndex: 1 security: @@ -143,7 +214,8 @@ webhooks: \ webhook.\n\nThe `status` field indicates the event that triggered the webhook.\ \ \n\n* For refunds, the `status` is **Refunded**. \n\n* For incoming fund\ \ transfers, the `status` is **IncomingTransfer**." - operationId: post-alancePlatform.incomingTransfer.updated + x-addedInVersion: '1' + operationId: post-balancePlatform.incomingTransfer.updated x-groupName: Fund movements x-sortIndex: 1 security: @@ -171,7 +243,8 @@ webhooks: \ `status` field indicates the event that triggered the webhook. \n\n* For\ \ captures, the `status` will be **Captured**. \n\n* For outgoing fund transfers,\ \ the `status` will be **OutgoingTransfer**." - operationId: post-alancePlatform.outgoingTransfer.created + x-addedInVersion: '1' + operationId: post-balancePlatform.outgoingTransfer.created x-groupName: Fund movements x-sortIndex: 1 security: @@ -200,7 +273,8 @@ webhooks: Use the `data.id` to track the original outgoing transfer resource from the `balancePlatform.outgoingTransfer.created` webhook.' - operationId: post-alancePlatform.outgoingTransfer.updated + x-addedInVersion: '1' + operationId: post-balancePlatform.outgoingTransfer.updated x-groupName: Fund movements x-sortIndex: 1 security: @@ -236,7 +310,8 @@ webhooks: \ for [payment events](https://docs.adyen.com/issuing/notification-types/payment-events)\ \ and [fund transfers](https://docs.adyen.com/issuing/notification-types/fund-transfers-webhooks)\ \ for more information." - operationId: post-alancePlatform.payment.created + x-addedInVersion: '1' + operationId: post-balancePlatform.payment.created x-groupName: Authorisation, refund, or transfer requests x-sortIndex: 1 security: @@ -261,7 +336,8 @@ webhooks: description: Adyen sends this webhook when a payment authorisation has expired or has been cancelled. Use the `data.id` to track the original payment authorisation from the `balancePlatform.payment.created` webhook. - operationId: post-alancePlatform.payment.updated + x-addedInVersion: '1' + operationId: post-balancePlatform.payment.updated x-groupName: Authorisation, refund, or transfer requests x-sortIndex: 1 security: @@ -287,7 +363,7 @@ webhooks: \ instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments).\ \ \n>The notification does not include the card number when creating virtual\ \ cards. You can only get the card number in the POST response." - operationId: post-alancePlatform.paymentInstrument.created + operationId: post-balancePlatform.paymentInstrument.created x-groupName: Payment Instrument x-sortIndex: 3 security: @@ -311,7 +387,7 @@ webhooks: summary: Payment instrument updated description: 'Adyen sends this webhook when you successfully [update a payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/paymentInstruments/{id}). ' - operationId: post-alancePlatform.paymentInstrument.updated + operationId: post-balancePlatform.paymentInstrument.updated x-groupName: Payment Instrument x-sortIndex: 3 security: @@ -340,9 +416,9 @@ webhooks: Before you download reports, ask your Adyen contact for your report credentials. You must use your the credentials to authenticate your GET request.' - operationId: post-alancePlatform.report.created + operationId: post-balancePlatform.report.created x-groupName: Reports - x-sortIndex: 6 + x-sortIndex: 7 security: - ApiKeyAuth: [] requestBody: @@ -371,7 +447,7 @@ components: $ref: '#/components/schemas/AccountHolderCapability' description: Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your - integration. For example, **issueCard** for Issuing.The value is an object + integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability. type: object contactDetails: @@ -405,7 +481,7 @@ components: type: string status: description: "The status of the account holder.\n\nPossible values: \n\n\ - \ * **Active**: The account holder is active. This the default status\ + \ * **Active**: The account holder is active. This is the default status\ \ when creating an account holder. \n\n * **Suspended**: The account holder\ \ is temporarily suspended. You can set the account back to active or\ \ close it permanently. \n\n* **Closed**: The account holder is permanently\ @@ -416,19 +492,13 @@ components: - Inactive - Suspended type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify configurations for balance\ - \ sweeps per currency code. A sweep pulls in or pushes out funds based\ - \ on a defined schedule, amount, and a source (for pulling funds) or a\ - \ destination (for pushing funds).\n\n Sweep configurations on the account\ - \ holder level applies to all of the account holder's balance accounts.\n\ - \n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ - \ in uppercase. For example, **EUR**. The value must be an object containing\ - \ the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`,\ - \ or `merchantAccount` must be specified in the request." - type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the account + holder. For example, **Europe/Amsterdam**. + + If not set, the time zone of the balance account will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - legalEntityId - id @@ -523,8 +593,6 @@ components: balancePlatform: description: Unique identifier of the balance platform. type: string - required: - - balancePlatform AccountHolderNotificationRequest: properties: data: @@ -546,7 +614,7 @@ components: - environment - type - data - Address2: + Address: properties: city: description: The name of the city. @@ -687,6 +755,11 @@ components: status: description: "The status of the balance account, set to **Active** by default.\ \ \n" + enum: + - Active + - Closed + - Inactive + - Suspended type: string sweepConfigurations: additionalProperties: @@ -697,14 +770,17 @@ components: (for pushing funds). - Sweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) - configurations. - - The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.' type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. + + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - accountHolderId - id @@ -715,8 +791,6 @@ components: balancePlatform: description: Unique identifier of the balance platform. type: string - required: - - balancePlatform BalanceAccountNotificationRequest: properties: data: @@ -738,41 +812,24 @@ components: - environment - type - data - BalancePlatformNotificationData: - properties: - balancePlatform: - description: Unique identifier of the balance platform. - type: string - creationDate: - description: Date and time when the event was triggered, in ISO 8601 extended - format. For example, **2020-12-18T10:15:30+01:00**. - format: date-time - type: string - id: - description: The ID of the resource. - type: string - required: - - balancePlatform - - id - - creationDate BalancePlatformNotificationResponse: properties: notificationResponse: description: Respond with **HTTP 200 OK** and `[accepted]` in the response body to [accept the webhook](https://docs.adyen.com/issuing/notification-webhooks#accept-notifications). type: string - BankAccountInfo2: + BankAccountInfo: properties: address: description: The address of the bank account owner. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' iban: description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard. type: string ownerName: description: The name of the bank account owner. - $ref: '#/components/schemas/Name3' + $ref: '#/components/schemas/Name2' BulkAddress: properties: city: @@ -1000,7 +1057,7 @@ components: properties: address: description: The address of the contact. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' email: description: The e-mail address of the contact. type: string @@ -1012,13 +1069,13 @@ components: type: string name: description: The name of the contact. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' personalData: description: Personal data of the contact. $ref: '#/components/schemas/PersonalData' phoneNumber: description: The phone number of the contact. - $ref: '#/components/schemas/PhoneNumber2' + $ref: '#/components/schemas/PhoneNumber' webAddress: description: The URL of the website of the contact. type: string @@ -1026,7 +1083,7 @@ components: properties: address: description: The address of the account holder. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' email: description: The email address of the account holder. type: string @@ -1047,7 +1104,7 @@ components: type: string bankAccount: description: Contains information about the bank account. - $ref: '#/components/schemas/BankAccountInfo2' + $ref: '#/components/schemas/BankAccountInfo' merchant: description: Contains information about the merchant. $ref: '#/components/schemas/MerchantData' @@ -1143,9 +1200,6 @@ components: format: date-time type: string required: - - balancePlatform - - id - - creationDate - counterparty IncomingTransferNotificationRequest: properties: @@ -1196,7 +1250,7 @@ components: postalCode: description: The merchant postal code. type: string - Name2: + Name: properties: firstName: description: The first name. @@ -1207,7 +1261,7 @@ components: required: - firstName - lastName - Name3: + Name2: properties: firstName: description: The first name. @@ -1368,9 +1422,6 @@ components: format: date-time type: string required: - - balancePlatform - - id - - creationDate - counterparty OutgoingTransferNotificationRequest: properties: @@ -1411,8 +1462,8 @@ components: type: string issuingCountryCode: description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) - country code where the payment instrument is issued. For example, **NL**, - **US**. + country code where the payment instrument is issued. For example, **NL** + or **US**. type: string paymentInstrumentGroupId: description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/paymentInstrumentGroups__resParam_id) @@ -1483,8 +1534,6 @@ components: description: Contains information about the payment instrument resource that triggered the event. $ref: '#/components/schemas/PaymentInstrument' - required: - - balancePlatform PaymentInstrumentReference: properties: id: @@ -1587,10 +1636,6 @@ components: items: $ref: '#/components/schemas/ValidationResult' type: array - required: - - balancePlatform - - id - - creationDate PaymentNotificationRequest: properties: data: @@ -1667,7 +1712,7 @@ components: required: - number - type - PhoneNumber2: + PhoneNumber: properties: phoneCountryCode: description: 'The two-character ISO-3166-1 alpha-2 country code of the phone @@ -1777,8 +1822,6 @@ components: description: Type of report. type: string required: - - balancePlatform - - creationDate - fileName - reportType - downloadUrl @@ -1802,6 +1845,19 @@ components: - environment - type - data + Resource: + properties: + balancePlatform: + description: Unique identifier of the balance platform. + type: string + creationDate: + description: Date and time when the event was triggered, in ISO 8601 extended + format. For example, **2020-12-18T10:15:30+01:00**. + format: date-time + type: string + id: + description: The ID of the resource. + type: string ResourceReference: properties: description: @@ -1816,10 +1872,13 @@ components: SweepConfiguration: properties: balanceAccountId: - description: The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) - that will be the source or destination of the balance sweep. This can - only be used for periodic sweep schedules such as `schedule.type` **daily** - or **monthly**. + description: "The unique identifier of the destination or source [balance\ + \ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\ + \n You can only use this for periodic sweep schedules such as `schedule.type`\ + \ **daily** or **monthly**." + type: string + id: + description: The unique identifier of the sweep. type: string merchantAccount: description: The merchant account that will be the source of funds. You @@ -1831,6 +1890,22 @@ components: balance meets the threshold, funds are pushed out of or pulled in to the balance account. $ref: '#/components/schemas/SweepSchedule' + status: + x-enum: + - description: The sweep is enabled and funds will be pulled in or pushed + out based on the defined configuration + value: active + - description: The sweep is disabled and cannot be triggered. + value: inactive + description: "The status of the sweep. If not provided, by default, this\ + \ is set to **active**.\n\nPossible values: \n\n * **active**: the sweep\ + \ is enabled and funds will be pulled in or pushed out based on the defined\ + \ configuration. \n\n * **inactive**: the sweep is disabled and cannot\ + \ be triggered. \n\n" + enum: + - active + - inactive + type: string sweepAmount: description: The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both. @@ -1841,18 +1916,18 @@ components: both. $ref: '#/components/schemas/Amount' transferInstrumentId: - description: 'The unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id) - that will be the source or destination of the balance sweep. This can - be used for periodic or instant sweep schedules. + description: 'The unique identifier of the destination or source [transfer + instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id). - If specified in combination with a merchant account, it instructs a direct - debit from this instrument for the configured merchant account.' + You can also use this in combination with a `merchantAccount` and a `type` + **pull** to start a direct debit request from the source transfer instrument. + To use this feature, reach out to your Adyen contact.' type: string triggerAmount: - description: 'The threshold amount that triggers the sweep. If not specified, - the amount defaults to zero. The `triggerAmount` is evaluated according - to the specified `schedule.type`. + description: 'The threshold amount that triggers the sweep. If not provided, + by default, the amount is set to zero. The `triggerAmount` is evaluated + according to the specified `schedule.type`. * For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, @@ -1864,17 +1939,156 @@ components: $ref: '#/components/schemas/Amount' type: default: push - description: "The direction of sweep.\n\nPossible values:\n\n * **push**:\ - \ _Push funds out_ to a destination balance account or transfer instrument.\n\ - \n * **pull**: _Pull funds in_ from a source merchant account, transfer\ - \ instrument, or balance account. " + description: "The direction of sweep, whether pushing out or pulling in\ + \ funds to the balance account. If not provided, by default, this is set\ + \ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\ + \ a destination balance account or transfer instrument.\n\n * **pull**:\ + \ _pull in funds_ from a source merchant account, transfer instrument,\ + \ or balance account." enum: - pull - push type: string required: + - id - schedule + SweepConfigurationNotificationData: + properties: + accountId: + description: The unique identifier of the balance account for which the + sweep was configured. + type: string + balancePlatform: + description: Unique identifier of the balance platform. + type: string + sweep: + description: Contains information about the sweep resource that triggered + the event. + $ref: '#/components/schemas/SweepConfigurationV2' + SweepConfigurationNotificationRequest: + properties: + data: + description: Contains event details. + $ref: '#/components/schemas/SweepConfigurationNotificationData' + environment: + description: 'The environment from which the webhook originated. + + + Possible values: **test**, **live**.' + type: string + type: + description: Type of notification. + enum: + - balancePlatform.balanceAccountSweep.created + - balancePlatform.balanceAccountSweep.updated + - balancePlatform.balanceAccountSweep.deleted + type: string + required: + - environment - type + - data + SweepConfigurationV2: + properties: + counterparty: + description: 'The destination or the source of the funds, depending on the + `type`. + + + Either a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` + is required.' + $ref: '#/components/schemas/SweepCounterparty' + currency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) + in uppercase. For example, **EUR**. + + + The sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).' + type: string + id: + description: The unique identifier of the sweep. + type: string + schedule: + description: The schedule when the `triggerAmount` is evaluated. If the + balance meets the threshold, funds are pushed out of or pulled in to the + balance account. + $ref: '#/components/schemas/SweepSchedule' + status: + x-enum: + - description: The sweep is enabled and funds will be pulled in or pushed + out based on the defined configuration + value: active + - description: The sweep is disabled and cannot be triggered. + value: inactive + description: "The status of the sweep. If not provided, by default, this\ + \ is set to **active**.\n\nPossible values: \n\n * **active**: the sweep\ + \ is enabled and funds will be pulled in or pushed out based on the defined\ + \ configuration. \n\n * **inactive**: the sweep is disabled and cannot\ + \ be triggered. \n\n" + enum: + - active + - inactive + type: string + sweepAmount: + description: The amount that must be pushed out or pulled in. You can configure + either `sweepAmount` or `targetAmount`, not both. + $ref: '#/components/schemas/Amount' + targetAmount: + description: The amount that must be available in the balance account after + the sweep. You can configure either `sweepAmount` or `targetAmount`, not + both. + $ref: '#/components/schemas/Amount' + triggerAmount: + description: 'The threshold amount that triggers the sweep. If not provided, + by default, the amount is set to zero. The `triggerAmount` is evaluated + according to the specified `schedule.type`. + + + * For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, + funds are pulled in to the balance account. + + + * For `type` **push**, if the balance is more than or equal to the `triggerAmount`, + funds are pushed out of the balance account.' + $ref: '#/components/schemas/Amount' + type: + default: push + description: "The direction of sweep, whether pushing out or pulling in\ + \ funds to the balance account. If not provided, by default, this is set\ + \ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\ + \ a destination balance account or transfer instrument.\n\n * **pull**:\ + \ _pull in funds_ from a source merchant account, transfer instrument,\ + \ or balance account." + enum: + - pull + - push + type: string + required: + - id + - schedule + - currency + - counterparty + SweepCounterparty: + properties: + balanceAccountId: + description: "The unique identifier of the destination or source [balance\ + \ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\ + \n You can only use this for periodic sweep schedules such as `schedule.type`\ + \ **daily** or **monthly**." + type: string + merchantAccount: + description: The merchant account that will be the source of funds, if you + are processing payments with Adyen. You can only use this with sweeps + of `type` **pull** and `schedule.type` **balance**. + type: string + transferInstrumentId: + description: 'The unique identifier of the destination or source [transfer + instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id). + + + You can also use this in combination with a `merchantAccount` and a `type` + **pull** to start a direct debit request from the source transfer instrument. + To use this feature, reach out to your Adyen contact.' + type: string SweepSchedule: properties: type: @@ -1884,18 +2098,18 @@ components: Possible values: - * **daily**: Push out funds daily at 07:00 AM CET. + * **daily**: push out funds daily at 07:00 AM CET. - * **weekly**: Push out funds every Monday at 07:00 AM CET. + * **weekly**: push out funds every Monday at 07:00 AM CET. - * **monthly**: Push out funds every 1st of the month at 07:00 AM CET. + * **monthly**: push out funds every first of the month at 07:00 AM CET. - * **balance**: Only for sweeps of `type` **pull** and with a `merchantAccount` - or `transferInstrument` source. Pull in funds instantly if the balance - is less than or equal to the `triggerAmount`.' + * **balance**: pull in funds instantly if the balance is less than or + equal to the `triggerAmount`. You can only use this for sweeps of `type` + **pull** and when the source is a `merchantAccount` or `transferInstrument`.' enum: - balance - daily @@ -2030,9 +2244,6 @@ components: format: date-time type: string required: - - balancePlatform - - id - - creationDate - counterparty TransactionRuleSource: properties: diff --git a/yaml/BalancePlatformService-v1.yaml b/yaml/BalancePlatformService-v1.yaml index 30de5cf..9114acc 100644 --- a/yaml/BalancePlatformService-v1.yaml +++ b/yaml/BalancePlatformService-v1.yaml @@ -23,6 +23,7 @@ info: \ credential for the live environment. You can then use the API key or the username\ \ and password to send requests to `https://balanceplatform-api-live.adyen.com/bcl/v1`.\n\ \nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-03-22T19:59:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -1845,14 +1846,14 @@ paths: tags: - Transaction rules summary: Create a transaction rule - description: 'Creates a transaction rule to define conditions for automatically - approving or denying transactions. You can apply transaction rules to a specific - payment instrument, a group of payment instruments, or to all the payment - instruments in your balance platform. + description: 'Creates a [transaction rule](https://docs.adyen.com/issuing/transaction-rules). + When your user makes a transaction with their Adyen-issued card, the transaction + is allowed or declined based on the conditions and outcome defined in the + transaction rule. You can apply the transaction rule to several cards, such + as all the cards in your balance platform, or to a specific card. - For more information on how you can set conditions, refer to [Transaction - rules](https://docs.adyen.com/issuing/transaction-rules).' + For use cases, see [examples](https://docs.adyen.com/issuing/transaction-rules/examples).' x-addedInVersion: '1' operationId: post-transactionRules x-groupName: Transaction rules @@ -2407,7 +2408,7 @@ components: $ref: '#/components/schemas/AccountHolderCapability' description: Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your - integration. For example, **issueCard** for Issuing.The value is an object + integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability. type: object contactDetails: @@ -2419,6 +2420,7 @@ components: type: string id: description: The unique identifier of the account holder. + readOnly: true type: string legalEntityId: description: 'The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) @@ -2441,7 +2443,7 @@ components: type: string status: description: "The status of the account holder.\n\nPossible values: \n\n\ - \ * **Active**: The account holder is active. This the default status\ + \ * **Active**: The account holder is active. This is the default status\ \ when creating an account holder. \n\n * **Suspended**: The account holder\ \ is temporarily suspended. You can set the account back to active or\ \ close it permanently. \n\n* **Closed**: The account holder is permanently\ @@ -2452,19 +2454,13 @@ components: - Inactive - Suspended type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify configurations for balance\ - \ sweeps per currency code. A sweep pulls in or pushes out funds based\ - \ on a defined schedule, amount, and a source (for pulling funds) or a\ - \ destination (for pushing funds).\n\n Sweep configurations on the account\ - \ holder level applies to all of the account holder's balance accounts.\n\ - \n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ - \ in uppercase. For example, **EUR**. The value must be an object containing\ - \ the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`,\ - \ or `merchantAccount` must be specified in the request." - type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the account + holder. For example, **Europe/Amsterdam**. + + If not set, the time zone of the balance account will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - legalEntityId - id @@ -2563,6 +2559,14 @@ components: to which the account holder belongs. Required in the request if your API credentials can be used for multiple balance platforms. type: string + capabilities: + additionalProperties: + $ref: '#/components/schemas/AccountHolderCapability' + description: Contains key-value pairs that specify the actions that an account + holder can do in your platform. The key is a capability required for your + integration. For example, **issueCard** for Issuing. The value is an object + containing the settings for the capability. + type: object contactDetails: description: Contact details of the account holder. $ref: '#/components/schemas/ContactDetails' @@ -2583,51 +2587,15 @@ components: description: Your reference for the account holder, maximum 150 characters. maxLength: 150 type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify configurations for balance\ - \ sweeps per currency code. A sweep pulls in or pushes out funds based\ - \ on a defined schedule, amount, and a source (for pulling funds) or a\ - \ destination (for pushing funds).\n\n Sweep configurations on the account\ - \ holder level applies to all of the account holder's balance accounts.\n\ - \n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ - \ in uppercase. For example, **EUR**. The value must be an object containing\ - \ the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`,\ - \ or `merchantAccount` must be specified in the request." - type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the account + holder. For example, **Europe/Amsterdam**. + + If not set, the time zone of the balance account will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - legalEntityId - Address: - properties: - city: - description: 'The name of the city. Required if `stateOrProvince` is provided. - - - If you specify the city, you must also send `postalCode` and `street`.' - type: string - country: - description: The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) - country code. - type: string - postalCode: - description: Postal code. Required if `stateOrProvince` and/or `city` is - provided. - type: string - stateOrProvince: - description: "The two-letter ISO 3166-2 state or province code. For example,\ - \ **CA** in the US. \n\nIf you specify the state or province, you must\ - \ also send `city`, `postalCode`, and `street`." - type: string - street: - description: The name of the street, and the house or building number. Required - if `stateOrProvince` and/or `city` is provided. - type: string - street2: - description: The apartment, unit, or suite number. - type: string - required: - - country Address2: properties: city: @@ -2797,6 +2765,11 @@ components: status: description: "The status of the balance account, set to **Active** by default.\ \ \n" + enum: + - Active + - Closed + - Inactive + - Suspended type: string sweepConfigurations: additionalProperties: @@ -2807,14 +2780,17 @@ components: (for pushing funds). - Sweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) - configurations. - - The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.' type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. + + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - accountHolderId - id @@ -2849,14 +2825,17 @@ components: (for pushing funds). - Sweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) - configurations. - - The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**. The value must be an object containing the sweep configuration.' type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. + + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - accountHolderId BalanceAccountUpdateRequest: @@ -2865,12 +2844,21 @@ components: description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id) associated with the balance account. type: string + defaultCurrencyCode: + description: "The default currency code of this balance account, in three-character\ + \ [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ + \ format. \nThe default value is **EUR**." + type: string description: description: A human-readable description of the balance account, maximum 300 characters. You can use this parameter to distinguish between multiple balance accounts under an account holder. maxLength: 300 type: string + reference: + description: Your reference to the balance account, maximum 150 characters. + maxLength: 150 + type: string status: description: 'The status of the balance account. Payment instruments linked to the balance account can only be used if the balance account status @@ -2887,14 +2875,21 @@ components: sweepConfigurations: additionalProperties: $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify [balance sweep configuration\ - \ per currency code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\ - \nYou can update the balance account to add, update, or delete configurations.\n\ - \n* To add a configuration, send the currency code as a key and the configuration\ - \ as the object.\n\n * To update a configuration, send the whole configuration\ - \ with your updates.\n\n* To delete a configuration, set the value to\ - \ **null**. For example, `\"EUR\": null`." + description: "Contains key-value pairs that specify [balance sweep per currency\ + \ code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\ + \nYou can update the balance account to add, update, or delete sweeps.\n\ + \n* To add a sweep, send the currency code as a key and the configuration\ + \ as the object.\n\n * To update a sweep, send the whole configuration\ + \ with your updates.\n\n* To delete a sweep, set the value to **null**.\ + \ For example, `\"EUR\": null`." type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. + + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string BalancePlatform: properties: description: @@ -4289,11 +4284,11 @@ components: type: string endDate: description: 'The date when the rule will stop being evaluated, in ISO 8601 - extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. + extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. - If not provided when creating a transaction rule, the rule will be evaluated - until the rule status is set to **inactive**.' + If not provided, the rule will be evaluated until the rule status is set + to **inactive**.' type: string entryModes: description: 'List of point-of-sale entry modes to which the rule applies. @@ -4319,7 +4314,8 @@ components: description: The unique identifier of the transaction rule. type: string interval: - description: The interval when the rule conditions must be applied. + description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) + when the rule conditions apply. $ref: '#/components/schemas/TransactionRuleInterval' maxTransactions: description: The maximum number of transactions that a payment instrument @@ -4431,11 +4427,11 @@ components: type: string endDate: description: 'The date when the rule will stop being evaluated, in ISO 8601 - extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. + extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. - If not provided when creating a transaction rule, the rule will be evaluated - until the rule status is set to **inactive**.' + If not provided, the rule will be evaluated until the rule status is set + to **inactive**.' type: string entryModes: description: 'List of point-of-sale entry modes to which the rule applies. @@ -4458,7 +4454,8 @@ components: type: string type: array interval: - description: The interval when the rule conditions must be applied. + description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) + when the rule conditions apply. $ref: '#/components/schemas/TransactionRuleInterval' maxTransactions: description: The maximum number of transactions that a payment instrument @@ -4551,14 +4548,14 @@ components: TransactionRuleInterval: properties: type: - description: "Defines the period during which the rule conditions and limits\ - \ apply, and how often the amount and transaction counters are reset.\n\ - \nPossible values:\n * **perTransaction**: The conditions are evaluated\ - \ and the counters are reset for every transaction.\n * **daily**: The\ - \ counters are reset daily at 00:00:00 UTC.\n * **weekly**: The counters\ - \ are reset every Monday at 00:00:00 UTC. \n * **monthly**: The counters\ - \ reset every 1st day of the month at 00:00:00 UTC. \n * **lifetime**:\ - \ The conditions and limits apply to the lifetime of the payment instrument." + description: "The [type of interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals)\ + \ during which the rule conditions and limits apply, and how often counters\ + \ are reset.\n\nPossible values:\n * **perTransaction**: conditions are\ + \ evaluated and the counters are reset for every transaction.\n * **daily**:\ + \ the counters are reset daily at 00:00:00 UTC.\n * **weekly**: the counters\ + \ are reset every Monday at 00:00:00 UTC. \n * **monthly**: the counters\ + \ reset every first day of the month at 00:00:00 UTC. \n * **lifetime**:\ + \ conditions are applied to the lifetime of the payment instrument.\n" enum: - daily - lifetime @@ -4649,6 +4646,7 @@ components: enum: - dataMissing - invalidInput + - pendingStatus type: string VerificationError-recursive: properties: @@ -4664,6 +4662,7 @@ components: enum: - dataMissing - invalidInput + - pendingStatus type: string remediatingActions: description: Contains the actions that you can take to resolve the verification diff --git a/yaml/BalancePlatformService-v2.yaml b/yaml/BalancePlatformService-v2.yaml index 949d802..988da25 100644 --- a/yaml/BalancePlatformService-v2.yaml +++ b/yaml/BalancePlatformService-v2.yaml @@ -23,6 +23,7 @@ info: \ credential for the live environment. You can then use the API key or the username\ \ and password to send requests to `https://balanceplatform-api-live.adyen.com/bcl/v1`.\n\ \nFor more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-05-06T17:19:23Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -73,8 +74,8 @@ paths: content: application/json: examples: - success: - $ref: '#/components/examples/post-accountHolders-success-200' + createAccountHolder: + $ref: '#/components/examples/post-accountHolders-createAccountHolder-200' schema: $ref: '#/components/schemas/AccountHolder' description: OK - the request has succeeded. @@ -408,8 +409,8 @@ paths: content: application/json: examples: - success: - $ref: '#/components/examples/post-balanceAccounts-success-200' + createBalanceAccount: + $ref: '#/components/examples/post-balanceAccounts-createBalanceAccount-200' schema: $ref: '#/components/schemas/BalanceAccount' description: OK - the request has succeeded. @@ -458,6 +459,435 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. + /balanceAccounts/{balanceAccountId}/sweeps: + get: + tags: + - Balance accounts + summary: Get all sweeps for a balance account + description: 'Returns a list of the sweeps configured for a balance account. + + + To fetch multiple pages, use the query parameters. For example, to limit the + page to 5 sweeps and to skip the first 10, use `/balanceAccounts/{balanceAccountId}/sweeps?limit=5&offset=10`.' + x-addedInVersion: '2' + operationId: get-balanceAccounts-balanceAccountId-sweeps + x-groupName: Balance accounts + x-sortIndex: 7 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the balance account. + name: balanceAccountId + in: path + required: true + schema: + type: string + - description: The number of items that you want to skip. + name: offset + in: query + required: false + schema: + format: int32 + type: integer + - description: The number of items returned per page, maximum 100 items. By + default, the response returns 10 items per page. + name: limit + in: query + required: false + schema: + format: int32 + type: integer + responses: + '200': + content: + application/json: + examples: + success: + $ref: '#/components/examples/get-balanceAccounts-balanceAccountId-sweeps-success-200' + schema: + $ref: '#/components/schemas/BalanceSweepConfigurationsResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + post: + tags: + - Balance accounts + summary: Create a sweep + description: 'Creates a sweep that results in moving funds from or to a balance + account. + + + A sweep pulls in or pushes out funds based on a defined schedule, amount, + currency, and a source or a destination.' + x-addedInVersion: '2' + operationId: post-balanceAccounts-balanceAccountId-sweeps + x-groupName: Balance accounts + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + createSweep-pull: + $ref: '#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull' + createSweep-push: + $ref: '#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push' + schema: + $ref: '#/components/schemas/SweepConfigurationV2' + parameters: + - description: The unique identifier of the balance account. + name: balanceAccountId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + createSweep-pull: + $ref: '#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull-200' + createSweep-push: + $ref: '#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-200' + schema: + $ref: '#/components/schemas/SweepConfigurationV2' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /balanceAccounts/{balanceAccountId}/sweeps/{sweepId}: + delete: + tags: + - Balance accounts + summary: Delete a sweep + description: Deletes a sweep for a balance account. + x-addedInVersion: '2' + operationId: delete-balanceAccounts-balanceAccountId-sweeps-sweepId + x-groupName: Balance accounts + x-sortIndex: 9 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the balance account. + name: balanceAccountId + in: path + required: true + schema: + type: string + - description: The unique identifier of the sweep. + name: sweepId + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + get: + tags: + - Balance accounts + summary: Get a sweep + description: Returns a sweep. + x-addedInVersion: '2' + operationId: get-balanceAccounts-balanceAccountId-sweeps-sweepId + x-groupName: Balance accounts + x-sortIndex: 8 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the balance account. + name: balanceAccountId + in: path + required: true + schema: + type: string + - description: The unique identifier of the sweep. + name: sweepId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + success: + $ref: '#/components/examples/get-balanceAccounts-balanceAccountId-sweeps-sweepId-success-200' + schema: + $ref: '#/components/schemas/SweepConfigurationV2' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Balance accounts + summary: Update a sweep + description: Updates a sweep. When updating a sweep resource, note that if a + request parameter is not provided, the parameter is left unchanged. + x-addedInVersion: '2' + operationId: patch-balanceAccounts-balanceAccountId-sweeps-sweepId + x-groupName: Balance accounts + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + updateSweep-status: + $ref: '#/components/examples/patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status' + schema: + $ref: '#/components/schemas/SweepConfigurationV2' + parameters: + - description: The unique identifier of the balance account. + name: balanceAccountId + in: path + required: true + schema: + type: string + - description: The unique identifier of the sweep. + name: sweepId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + updateSweep-status: + $ref: '#/components/examples/patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status-200' + schema: + $ref: '#/components/schemas/SweepConfigurationV2' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. /balanceAccounts/{id}: get: tags: @@ -1289,8 +1719,10 @@ paths: content: application/json: examples: - success: - $ref: '#/components/examples/patch-paymentInstruments-id-success-200' + updatePaymentInstrumentBalanceAccount: + $ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200' + updatePaymentInstrumentStatus: + $ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentStatus-200' schema: $ref: '#/components/schemas/PaymentInstrument' description: OK - the request has succeeded. @@ -1327,8 +1759,6 @@ paths: examples: generic: $ref: '#/components/examples/generic-422' - invalidData: - $ref: '#/components/examples/patch-paymentInstruments-id-invalidData-422' schema: $ref: '#/components/schemas/RestServiceError' description: Unprocessable Entity - a request validation error. @@ -1421,14 +1851,14 @@ paths: tags: - Transaction rules summary: Create a transaction rule - description: 'Creates a transaction rule to define conditions for automatically - approving or denying transactions. You can apply transaction rules to a specific - payment instrument, a group of payment instruments, or to all the payment - instruments in your balance platform. + description: 'Creates a [transaction rule](https://docs.adyen.com/issuing/transaction-rules). + When your user makes a transaction with their Adyen-issued card, the transaction + is allowed or declined based on the conditions and outcome defined in the + transaction rule. You can apply the transaction rule to several cards, such + as all the cards in your balance platform, or to a specific card. - For more information on how you can set conditions, refer to [Transaction - rules](https://docs.adyen.com/issuing/transaction-rules).' + For use cases, see [examples](https://docs.adyen.com/issuing/transaction-rules/examples).' x-addedInVersion: '1' operationId: post-transactionRules x-groupName: Transaction rules @@ -1440,8 +1870,14 @@ paths: content: application/json: examples: - createTransactionRule: - $ref: '#/components/examples/post-transactionRules-createTransactionRule' + createTransactionRuleAllowPos: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleAllowPos' + createTransactionRuleIncreaseScore: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleIncreaseScore' + createTransactionRuleLimitSliding: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleLimitSliding' + createTransactionRuleLimitTransaction: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleLimitTransaction' schema: $ref: '#/components/schemas/TransactionRuleInfo' responses: @@ -1449,8 +1885,14 @@ paths: content: application/json: examples: - success: - $ref: '#/components/examples/post-transactionRules-success-200' + createTransactionRuleAllowPos: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleAllowPos-200' + createTransactionRuleIncreaseScore: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleIncreaseScore-200' + createTransactionRuleLimitSliding: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleLimitSliding-200' + createTransactionRuleLimitTransaction: + $ref: '#/components/examples/post-transactionRules-createTransactionRuleLimitTransaction-200' schema: $ref: '#/components/schemas/TransactionRule' description: OK - the request has succeeded. @@ -1748,7 +2190,7 @@ components: $ref: '#/components/schemas/AccountHolderCapability' description: Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your - integration. For example, **issueCard** for Issuing.The value is an object + integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability. type: object contactDetails: @@ -1760,6 +2202,7 @@ components: type: string id: description: The unique identifier of the account holder. + readOnly: true type: string legalEntityId: description: 'The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) @@ -1782,7 +2225,7 @@ components: type: string status: description: "The status of the account holder.\n\nPossible values: \n\n\ - \ * **Active**: The account holder is active. This the default status\ + \ * **Active**: The account holder is active. This is the default status\ \ when creating an account holder. \n\n * **Suspended**: The account holder\ \ is temporarily suspended. You can set the account back to active or\ \ close it permanently. \n\n* **Closed**: The account holder is permanently\ @@ -1793,19 +2236,13 @@ components: - inactive - suspended type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify configurations for balance\ - \ sweeps per currency code. A sweep pulls in or pushes out funds based\ - \ on a defined schedule, amount, and a source (for pulling funds) or a\ - \ destination (for pushing funds).\n\n Sweep configurations on the account\ - \ holder level applies to all of the account holder's balance accounts.\n\ - \n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ - \ in uppercase. For example, **EUR**. The value must be an object containing\ - \ the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`,\ - \ or `merchantAccount` must be specified in the request." - type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the account + holder. For example, **Europe/Amsterdam**. + + If not set, the time zone of the balance account will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - legalEntityId - id @@ -1834,11 +2271,6 @@ components: the account holder. readOnly: true $ref: '#/components/schemas/JSONObject' - deadline: - description: Contains capability deadline date and corresponding action - to be taken at this date. - readOnly: true - $ref: '#/components/schemas/CapabilityDeadline' enabled: description: Indicates whether the capability is enabled. If **false**, the capability is temporarily disabled for the account holder. @@ -1909,6 +2341,14 @@ components: to which the account holder belongs. Required in the request if your API credentials can be used for multiple balance platforms. type: string + capabilities: + additionalProperties: + $ref: '#/components/schemas/AccountHolderCapability' + description: Contains key-value pairs that specify the actions that an account + holder can do in your platform. The key is a capability required for your + integration. For example, **issueCard** for Issuing. The value is an object + containing the settings for the capability. + type: object contactDetails: description: Contact details of the account holder. $ref: '#/components/schemas/ContactDetails' @@ -1929,25 +2369,31 @@ components: description: Your reference for the account holder, maximum 150 characters. maxLength: 150 type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify configurations for balance\ - \ sweeps per currency code. A sweep pulls in or pushes out funds based\ - \ on a defined schedule, amount, and a source (for pulling funds) or a\ - \ destination (for pushing funds).\n\n Sweep configurations on the account\ - \ holder level applies to all of the account holder's balance accounts.\n\ - \n The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ - \ in uppercase. For example, **EUR**. The value must be an object containing\ - \ the sweep configuration.\n\nEither `balanceAccountId`, `transferInstrumentId`,\ - \ or `merchantAccount` must be specified in the request." - type: object + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the account + holder. For example, **Europe/Amsterdam**. + + If not set, the time zone of the balance account will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - legalEntityId - Address2: + ActiveNetworkTokensRestriction: + properties: + operation: + description: Defines how the condition must be evaluated. + type: string + value: + description: The number of tokens. + format: int32 + type: integer + required: + - operation + Address: properties: city: - description: 'The name of the city. ' + description: 'The name of the city. Maximum length: 3000 characters.' + maxLength: 3000 type: string country: description: 'The two-character ISO-3166-1 alpha-2 country code. For example, @@ -1957,7 +2403,8 @@ components: the shopper, provide `country` as `ZZ`.' type: string houseNumberOrName: - description: 'The number or name of the house. ' + description: 'The number or name of the house. Maximum length: 3000 characters.' + maxLength: 3000 type: string postalCode: description: A maximum of five digits for an address in the US, or a maximum @@ -1970,8 +2417,11 @@ components: > Required for the US and Canada.' type: string street: - description: "The name of the street. \n> The house number should not be\ - \ included in this field; it should be separately provided via `houseNumberOrName`." + description: 'The name of the street. Maximum length: 3000 characters. + + > The house number should not be included in this field; it should be + separately provided via `houseNumberOrName`.' + maxLength: 3000 type: string required: - street @@ -1979,7 +2429,7 @@ components: - city - postalCode - country - Address3: + Address2: properties: city: description: The name of the city. @@ -2118,26 +2568,21 @@ components: maxLength: 150 type: string status: - description: "The status of the balance account, set to **Active** by default.\ + description: "The status of the balance account, set to **active** by default.\ \ \n" + enum: + - active + - closed + - inactive + - suspended type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: 'Contains key-value pairs that specify configurations for balance - sweeps per currency code. A sweep pulls in or pushes out funds based on - a defined schedule, amount, and a source (for pulling funds) or a destination - (for pushing funds). + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. - - Sweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) - configurations. - - - The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) - in uppercase. For example, **EUR**. The value must be an object containing - the sweep configuration.' - type: object + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - accountHolderId - id @@ -2163,23 +2608,13 @@ components: description: Your reference for the balance account, maximum 150 characters. maxLength: 150 type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: 'Contains key-value pairs that specify configurations for balance - sweeps per currency code. A sweep pulls in or pushes out funds based on - a defined schedule, amount, and a source (for pulling funds) or a destination - (for pushing funds). + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. - - Sweep configurations on the balance account override [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/accountHolders__reqParam_sweepConfigurations) - configurations. - - - The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) - in uppercase. For example, **EUR**. The value must be an object containing - the sweep configuration.' - type: object + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' + type: string required: - accountHolderId BalanceAccountUpdateRequest: @@ -2188,36 +2623,41 @@ components: description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id) associated with the balance account. type: string + defaultCurrencyCode: + description: "The default currency code of this balance account, in three-character\ + \ [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\ + \ format. \nThe default value is **EUR**." + type: string description: description: A human-readable description of the balance account, maximum 300 characters. You can use this parameter to distinguish between multiple balance accounts under an account holder. maxLength: 300 type: string + reference: + description: Your reference to the balance account, maximum 150 characters. + maxLength: 150 + type: string status: description: 'The status of the balance account. Payment instruments linked to the balance account can only be used if the balance account status - is **Active**. + is **active**. - Possible values: **Active**, **Inactive**, **Closed**, **Suspended**.' + Possible values: **active**, **inactive**, **closed**, **suspended**.' enum: - - Active - - Closed - - Inactive - - Suspended + - active + - closed + - inactive + - suspended + type: string + timeZone: + description: 'The [time zone](https://www.iana.org/time-zones) of the balance + account. For example, **Europe/Amsterdam**. + + If not set, the time zone of the account holder will be used. For possible + values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).' type: string - sweepConfigurations: - additionalProperties: - $ref: '#/components/schemas/SweepConfiguration' - description: "Contains key-value pairs that specify [balance sweep configuration\ - \ per currency code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\ - \nYou can update the balance account to add, update, or delete configurations.\n\ - \n* To add a configuration, send the currency code as a key and the configuration\ - \ as the object.\n\n * To update a configuration, send the whole configuration\ - \ with your updates.\n\n* To delete a configuration, set the value to\ - \ **null**. For example, `\"EUR\": null`." - type: object BalancePlatform: properties: description: @@ -2235,6 +2675,23 @@ components: type: string required: - id + BalanceSweepConfigurationsResponse: + properties: + hasNext: + description: Indicates whether there are more items on the next page. + type: boolean + hasPrevious: + description: Indicates whether there are more items on the previous page. + type: boolean + sweeps: + description: List of sweeps associated with the balance account. + items: + $ref: '#/components/schemas/SweepConfigurationV2' + type: array + required: + - sweeps + - hasPrevious + - hasNext BrandVariantsRestriction: properties: operation: @@ -2298,17 +2755,6 @@ components: type: string required: - country - CapabilityDeadline: - properties: - action: - description: Action that will be executed at executesAt date - enum: - - deactivateAccount - type: string - executesAt: - description: Capability deadline date. The date is in ISO-8601 format yyyy-mm-dd - (e.g. 2000-01-31). - type: string CapabilityProblem: properties: entity: @@ -2541,7 +2987,7 @@ components: properties: address: description: The address of the account holder. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' email: description: The email address of the account holder. type: string @@ -2572,7 +3018,7 @@ components: properties: address: description: The address of the contact. - $ref: '#/components/schemas/Address3' + $ref: '#/components/schemas/Address2' email: description: The email address of the contact. type: string @@ -2584,10 +3030,10 @@ components: type: string name: description: The name of the contact. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' phoneNumber: description: The phone number of the contact. - $ref: '#/components/schemas/PhoneNumber2' + $ref: '#/components/schemas/PhoneNumber' webAddress: description: The URL of the contact's website. type: string @@ -2615,6 +3061,29 @@ components: type: boolean required: - operation + Duration: + properties: + unit: + description: 'The unit of time. You can only use **minutes** and **hours** + if the `interval.type` is **sliding**. + + + Possible values: **minutes**, **hours**, **days**, **weeks**, or **months**' + enum: + - days + - hours + - minutes + - months + - weeks + type: string + value: + description: 'The length of time by the unit. For example, 5 days. + + + The maximum duration is 90 days or an equivalent in other units. For example, + 3 months.' + format: int32 + type: integer EntryModesRestriction: properties: operation: @@ -2748,7 +3217,7 @@ components: type: array required: - operation - Name2: + Name: properties: firstName: description: The first name. @@ -2841,12 +3310,6 @@ components: type: string status: x-enum: - - description: The payment instrument is suspended. Either because it was - stolen or lost. - value: blocked - - description: The payment instrument is permanently closed. This action - cannot be undone. - value: discarded - description: The payment instrument is active and can be used to make payments. value: active @@ -2872,9 +3335,7 @@ components: \ undone. \n\n" enum: - active - - blocked - closed - - discarded - inactive - suspended type: string @@ -2997,12 +3458,6 @@ components: type: string status: x-enum: - - description: The payment instrument is suspended. Either because it was - stolen or lost. - value: blocked - - description: The payment instrument is permanently closed. This action - cannot be undone. - value: discarded - description: The payment instrument is active and can be used to make payments. value: active @@ -3028,9 +3483,7 @@ components: \ undone. \n\n" enum: - active - - blocked - closed - - discarded - inactive - suspended type: string @@ -3080,12 +3533,6 @@ components: $ref: '#/components/schemas/CardInfo' status: x-enum: - - description: The payment instrument is suspended. Either because it was - stolen or lost. - value: blocked - - description: The payment instrument is permanently closed. This action - cannot be undone. - value: discarded - description: The payment instrument is active and can be used to make payments. value: active @@ -3111,9 +3558,7 @@ components: \ undone. \n\n" enum: - active - - blocked - closed - - discarded - inactive - suspended type: string @@ -3159,7 +3604,7 @@ components: required: - number - type - PhoneNumber2: + PhoneNumber: properties: phoneCountryCode: description: 'The two-character ISO-3166-1 alpha-2 country code of the phone @@ -3264,24 +3709,48 @@ components: - title - detail - status - SweepConfiguration: + SweepConfigurationV2: properties: - balanceAccountId: - description: The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) - that will be the source or destination of the balance sweep. This can - only be used for periodic sweep schedules such as `schedule.type` **daily** - or **monthly**. + counterparty: + description: 'The destination or the source of the funds, depending on the + `type`. + + + Either a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` + is required.' + $ref: '#/components/schemas/SweepCounterparty' + currency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) + in uppercase. For example, **EUR**. + + + The sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).' type: string - merchantAccount: - description: The merchant account that will be the source of funds. You - can only use this if you are processing payments with Adyen. This can - only be used for sweeps of `type` **pull** and `schedule.type` **balance**. + id: + description: The unique identifier of the sweep. + readOnly: true type: string schedule: description: The schedule when the `triggerAmount` is evaluated. If the balance meets the threshold, funds are pushed out of or pulled in to the balance account. $ref: '#/components/schemas/SweepSchedule' + status: + x-enum: + - description: The sweep is enabled and funds will be pulled in or pushed + out based on the defined configuration + value: active + - description: The sweep is disabled and cannot be triggered. + value: inactive + description: "The status of the sweep. If not provided, by default, this\ + \ is set to **active**.\n\nPossible values: \n\n * **active**: the sweep\ + \ is enabled and funds will be pulled in or pushed out based on the defined\ + \ configuration. \n\n * **inactive**: the sweep is disabled and cannot\ + \ be triggered. \n\n" + enum: + - active + - inactive + type: string sweepAmount: description: The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both. @@ -3291,19 +3760,10 @@ components: the sweep. You can configure either `sweepAmount` or `targetAmount`, not both. $ref: '#/components/schemas/Amount' - transferInstrumentId: - description: 'The unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id) - that will be the source or destination of the balance sweep. This can - be used for periodic or instant sweep schedules. - - - If specified in combination with a merchant account, it instructs a direct - debit from this instrument for the configured merchant account.' - type: string triggerAmount: - description: 'The threshold amount that triggers the sweep. If not specified, - the amount defaults to zero. The `triggerAmount` is evaluated according - to the specified `schedule.type`. + description: 'The threshold amount that triggers the sweep. If not provided, + by default, the amount is set to zero. The `triggerAmount` is evaluated + according to the specified `schedule.type`. * For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, @@ -3315,17 +3775,43 @@ components: $ref: '#/components/schemas/Amount' type: default: push - description: "The direction of sweep.\n\nPossible values:\n\n * **push**:\ - \ _Push funds out_ to a destination balance account or transfer instrument.\n\ - \n * **pull**: _Pull funds in_ from a source merchant account, transfer\ - \ instrument, or balance account. " + description: "The direction of sweep, whether pushing out or pulling in\ + \ funds to the balance account. If not provided, by default, this is set\ + \ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\ + \ a destination balance account or transfer instrument.\n\n * **pull**:\ + \ _pull in funds_ from a source merchant account, transfer instrument,\ + \ or balance account." enum: - pull - push type: string required: + - id - schedule - - type + - currency + - counterparty + SweepCounterparty: + properties: + balanceAccountId: + description: "The unique identifier of the destination or source [balance\ + \ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\ + \n You can only use this for periodic sweep schedules such as `schedule.type`\ + \ **daily** or **monthly**." + type: string + merchantAccount: + description: The merchant account that will be the source of funds, if you + are processing payments with Adyen. You can only use this with sweeps + of `type` **pull** and `schedule.type` **balance**. + type: string + transferInstrumentId: + description: 'The unique identifier of the destination or source [transfer + instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id). + + + You can also use this in combination with a `merchantAccount` and a `type` + **pull** to start a direct debit request from the source transfer instrument. + To use this feature, reach out to your Adyen contact.' + type: string SweepSchedule: properties: type: @@ -3335,23 +3821,23 @@ components: Possible values: - * **daily**: Push out funds daily at 07:00 AM CET. + * **daily**: push out funds daily at 07:00 AM CET. - * **weekly**: Push out funds every Monday at 07:00 AM CET. + * **weekly**: push out funds every Monday at 07:00 AM CET. - * **monthly**: Push out funds every 1st of the month at 07:00 AM CET. + * **monthly**: push out funds every first of the month at 07:00 AM CET. - * **balance**: Only for sweeps of `type` **pull** and with a `merchantAccount` - or `transferInstrument` source. Pull in funds instantly if the balance - is less than or equal to the `triggerAmount`.' + * **balance**: pull in funds instantly if the balance is less than or + equal to the `triggerAmount`. You can only use this for sweeps of `type` + **pull** and when the source is a `merchantAccount` or `transferInstrument`.' enum: - - balance - daily - - monthly - weekly + - monthly + - balance type: string TimeOfDay: properties: @@ -3390,42 +3876,79 @@ components: - operation TransactionRule: properties: + aggregationLevel: + x-addedInVersion: '2' + description: 'The level at which data must be accumulated, used in rules + with `type` **velocity** or **maxUsage**. The level must be the [same + or lower in hierarchy](https://docs.adyen.com/issuing/transaction-rules#accumulate-data) + than the `entityKey`. + + + If not provided, by default, the rule will accumulate data at the **paymentInstrument** + level. + + + Possible values: **paymentInstrument**, **paymentInstrumentGroup**, **balanceAccount**, + **accountHolder**, **balancePlatform**.' + type: string description: description: Your description for the transaction rule, maximum 300 characters. maxLength: 300 type: string endDate: description: 'The date when the rule will stop being evaluated, in ISO 8601 - extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. + extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. - If not provided when creating a transaction rule, the rule will be evaluated - until the rule status is set to **inactive**.' + If not provided, the rule will be evaluated until the rule status is set + to **inactive**.' type: string entityKey: x-addedInVersion: '2' - description: The ID and type of resource to which the rule applies. + description: The type and unique identifier of the resource to which the + rule applies. $ref: '#/components/schemas/TransactionRuleEntityKey' id: description: The unique identifier of the transaction rule. type: string interval: - description: The interval when the rule conditions must be applied. + description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) + when the rule conditions apply. $ref: '#/components/schemas/TransactionRuleInterval' + outcomeType: + x-addedInVersion: '2' + description: "The [outcome](https://docs.adyen.com/issuing/transaction-rules#outcome)\ + \ that will be applied when a transaction meets the conditions of the\ + \ rule. If not provided, by default, this is set to **hardBlock**.\n\n\ + Possible values:\n\n * **hardBlock**: the transaction is declined.\n\n\ + * **scoreBased**: the transaction is assigned the `score` you specified.\ + \ Adyen calculates the total score and if it exceeds 100, the transaction\ + \ is declined." + enum: + - hardBlock + - scoreBased + type: string reference: description: Your reference for the transaction rule, maximum 150 characters. maxLength: 150 type: string ruleRestrictions: x-addedInVersion: '2' - description: 'Contains one or more objects that define the conditions of - the rule. Each object must have a value and an operation which determines - how the values must be evaluated. + description: 'Contains one or more objects that define the [rule conditions](https://docs.adyen.com/issuing/transaction-rules#conditions). + Each object must have a value and an operation which determines how the + values must be evaluated. For example, a `countries` object can have a list of country codes **["US", "CA"]** in the `value` field and **anyMatch** in the `operation` field.' $ref: '#/components/schemas/TransactionRuleRestrictions' + score: + x-addedInVersion: '2' + description: A positive or negative score applied to the transaction if + it meets the conditions of the rule. Required when `outcomeType` is **scoreBased**. The + value must be between **-100** and **100**. + format: int32 + type: integer startDate: description: "The date when the rule will start to be evaluated, in ISO\ \ 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\ @@ -3454,13 +3977,15 @@ components: - description: The rule sets limits for the maximum amount or maximum number of transactions for the lifetime of the payment instrument. value: maxUsage - description: "Type of conditions provided in the rule.\n\nPossible values:\n\ - \ * **blockList**: The rule provides categories (such as country and\ - \ MCC) where payments must be blocked. \n * **maxUsage**: The rule sets\ - \ limits for the maximum amount or maximum number of transactions for\ - \ the lifetime of the payment instrument. \n * **velocity**: The rule\ - \ sets limits for the maximum amount or maximum number of transactions\ - \ for a given time interval.\n" + description: "The [type of rule](https://docs.adyen.com/issuing/transaction-rules#rule-types),\ + \ which definesif a rule blocks transactions based on individual characteristics\ + \ or accumulates data.\n\nPossible values:\n * **blockList**: decline\ + \ a transaction when the conditions are met. \n * **maxUsage**: add the\ + \ amount or number of transactions for the lifetime of a payment instrument,\ + \ and then decline a transaction when the specified limits are met. \n\ + \ * **velocity**: add the amount or number of transactions based on a\ + \ specified time interval, and then decline a transaction when the specified\ + \ limits are met.\n" enum: - allowList - blockList @@ -3477,50 +4002,87 @@ components: TransactionRuleEntityKey: properties: entityReference: - description: The ID of the resource. + description: The unique identifier of the resource. type: string entityType: description: 'The type of resource. Possible values: **balancePlatform**, **paymentInstrumentGroup**, **accountHolder**, - **balanceAccount**, **paymentInstrument**.' + **balanceAccount**, or **paymentInstrument**.' type: string TransactionRuleInfo: properties: + aggregationLevel: + x-addedInVersion: '2' + description: 'The level at which data must be accumulated, used in rules + with `type` **velocity** or **maxUsage**. The level must be the [same + or lower in hierarchy](https://docs.adyen.com/issuing/transaction-rules#accumulate-data) + than the `entityKey`. + + + If not provided, by default, the rule will accumulate data at the **paymentInstrument** + level. + + + Possible values: **paymentInstrument**, **paymentInstrumentGroup**, **balanceAccount**, + **accountHolder**, **balancePlatform**.' + type: string description: description: Your description for the transaction rule, maximum 300 characters. maxLength: 300 type: string endDate: description: 'The date when the rule will stop being evaluated, in ISO 8601 - extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. + extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**. - If not provided when creating a transaction rule, the rule will be evaluated - until the rule status is set to **inactive**.' + If not provided, the rule will be evaluated until the rule status is set + to **inactive**.' type: string entityKey: x-addedInVersion: '2' - description: The ID and type of resource to which the rule applies. + description: The type and unique identifier of the resource to which the + rule applies. $ref: '#/components/schemas/TransactionRuleEntityKey' interval: - description: The interval when the rule conditions must be applied. + description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals) + when the rule conditions apply. $ref: '#/components/schemas/TransactionRuleInterval' + outcomeType: + x-addedInVersion: '2' + description: "The [outcome](https://docs.adyen.com/issuing/transaction-rules#outcome)\ + \ that will be applied when a transaction meets the conditions of the\ + \ rule. If not provided, by default, this is set to **hardBlock**.\n\n\ + Possible values:\n\n * **hardBlock**: the transaction is declined.\n\n\ + * **scoreBased**: the transaction is assigned the `score` you specified.\ + \ Adyen calculates the total score and if it exceeds 100, the transaction\ + \ is declined." + enum: + - hardBlock + - scoreBased + type: string reference: description: Your reference for the transaction rule, maximum 150 characters. maxLength: 150 type: string ruleRestrictions: x-addedInVersion: '2' - description: 'Contains one or more objects that define the conditions of - the rule. Each object must have a value and an operation which determines - how the values must be evaluated. + description: 'Contains one or more objects that define the [rule conditions](https://docs.adyen.com/issuing/transaction-rules#conditions). + Each object must have a value and an operation which determines how the + values must be evaluated. For example, a `countries` object can have a list of country codes **["US", "CA"]** in the `value` field and **anyMatch** in the `operation` field.' $ref: '#/components/schemas/TransactionRuleRestrictions' + score: + x-addedInVersion: '2' + description: A positive or negative score applied to the transaction if + it meets the conditions of the rule. Required when `outcomeType` is **scoreBased**. The + value must be between **-100** and **100**. + format: int32 + type: integer startDate: description: "The date when the rule will start to be evaluated, in ISO\ \ 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\ @@ -3549,13 +4111,15 @@ components: - description: The rule sets limits for the maximum amount or maximum number of transactions for the lifetime of the payment instrument. value: maxUsage - description: "Type of conditions provided in the rule.\n\nPossible values:\n\ - \ * **blockList**: The rule provides categories (such as country and\ - \ MCC) where payments must be blocked. \n * **maxUsage**: The rule sets\ - \ limits for the maximum amount or maximum number of transactions for\ - \ the lifetime of the payment instrument. \n * **velocity**: The rule\ - \ sets limits for the maximum amount or maximum number of transactions\ - \ for a given time interval.\n" + description: "The [type of rule](https://docs.adyen.com/issuing/transaction-rules#rule-types),\ + \ which definesif a rule blocks transactions based on individual characteristics\ + \ or accumulates data.\n\nPossible values:\n * **blockList**: decline\ + \ a transaction when the conditions are met. \n * **maxUsage**: add the\ + \ amount or number of transactions for the lifetime of a payment instrument,\ + \ and then decline a transaction when the specified limits are met. \n\ + \ * **velocity**: add the amount or number of transactions based on a\ + \ specified time interval, and then decline a transaction when the specified\ + \ limits are met.\n" enum: - allowList - blockList @@ -3571,20 +4135,68 @@ components: - ruleRestrictions TransactionRuleInterval: properties: + dayOfMonth: + x-addedInVersion: '2' + description: The day of month, used when the `duration.unit` is **months**. + If not provided, by default, this is set to **1**, the first day of the + month. + format: int32 + type: integer + dayOfWeek: + x-addedInVersion: '2' + description: 'The day of week, used when the `duration.unit` is **weeks**. + If not provided, by default, this is set to **monday**. + + + Possible values: **sunday**, **monday**, **tuesday**, **wednesday**, **thursday**, + **friday**.' + enum: + - friday + - monday + - saturday + - sunday + - thursday + - tuesday + - wednesday + type: string + duration: + x-addedInVersion: '2' + description: The duration, which you can specify in hours, days, weeks, + or months. The maximum duration is 90 days or an equivalent in other units. + Required when the `type` is **rolling** or **sliding**. + $ref: '#/components/schemas/Duration' + timeOfDay: + x-addedInVersion: '2' + description: The time of day, in **hh:mm:ss** format, used when the `duration.unit` + is **hours**. If not provided, by default, this is set to **00:00:00**. + type: string + timeZone: + x-addedInVersion: '2' + description: The [time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). + For example, **Europe/Amsterdam**. By default, this is set to **UTC**. + type: string type: - description: "Defines the period during which the rule conditions and limits\ - \ apply, and how often the amount and transaction counters are reset.\n\ - \nPossible values:\n * **perTransaction**: The conditions are evaluated\ - \ and the counters are reset for every transaction.\n * **daily**: The\ - \ counters are reset daily at 00:00:00 UTC.\n * **weekly**: The counters\ - \ are reset every Monday at 00:00:00 UTC. \n * **monthly**: The counters\ - \ reset every 1st day of the month at 00:00:00 UTC. \n * **lifetime**:\ - \ The conditions and limits apply to the lifetime of the payment instrument." + description: "The [type of interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals)\ + \ during which the rule conditions and limits apply, and how often counters\ + \ are reset.\n\nPossible values:\n * **perTransaction**: conditions are\ + \ evaluated and the counters are reset for every transaction.\n * **daily**:\ + \ the counters are reset daily at 00:00:00 UTC.\n * **weekly**: the counters\ + \ are reset every Monday at 00:00:00 UTC. \n * **monthly**: the counters\ + \ reset every first day of the month at 00:00:00 UTC. \n * **lifetime**:\ + \ conditions are applied to the lifetime of the payment instrument.\n\ + \ * **rolling**: conditions are applied and the counters are reset based\ + \ on a `duration`. If the reset date and time are not provided, Adyen\ + \ applies the default reset time similar to fixed intervals. For example,\ + \ if the duration is every two weeks, the counter resets every third Monday\ + \ at 00:00:00 UTC.\n * **sliding**: conditions are applied and the counters\ + \ are reset based on the current time and a `duration` that you specify." enum: - daily - lifetime - monthly - perTransaction + - rolling + - sliding - weekly type: string required: @@ -3596,6 +4208,14 @@ components: $ref: '#/components/schemas/TransactionRule' TransactionRuleRestrictions: properties: + activeNetworkTokens: + description: 'The total number of tokens that a card can have across different + kinds of digital wallets on the user''s phones, watches, or other wearables. + + + Supported operations: **equals**, **notEquals**, **greaterThanOrEqualTo**, + **greaterThan**, **lessThanOrEqualTo**, **lessThan**.' + $ref: '#/components/schemas/ActiveNetworkTokensRestriction' brandVariants: description: 'List of card brand variants and the operation. @@ -3842,6 +4462,45 @@ components: description: S.Hopper - Staff 123 id: AH32272223222B5CM4MWJ892H status: Active + get-balanceAccounts-balanceAccountId-sweeps-success-200: + summary: Sweeps under a balance account retrieved + description: Example response when retrieving sweeps under a balance account + value: + hasNext: false + hasPrevious: false + sweeps: + - id: SWPC4227C224555B5FTD2NT2JV4WN5 + schedule: + type: daily + status: active + targetAmount: + currency: EUR + value: 0 + triggerAmount: + currency: EUR + value: 0 + type: push + counterparty: + balanceAccountId: BA32272223222B5FTD2KR6TJD + currency: EUR + get-balanceAccounts-balanceAccountId-sweeps-sweepId-success-200: + summary: Sweep retrieved + description: Example response when retrieving a sweep + value: + id: SWPC4227C224555B5FTD2NT2JV4WN5 + schedule: + type: daily + status: active + targetAmount: + currency: EUR + value: 0 + triggerAmount: + currency: EUR + value: 0 + type: push + counterparty: + balanceAccountId: BA32272223222B5FTD2KR6TJD + currency: EUR get-balanceAccounts-id-paymentInstruments-success-200: summary: Response code - 200 OK description: Example response when retrieving a list of payment instruments @@ -3881,8 +4540,8 @@ components: number: '************8331' id: PI32272223222B59PXDGQDLSF get-balanceAccounts-id-success-200: - summary: Response code - 200 OK - description: Example response when retrieving a balance account + summary: Balance account details retrieved + description: Example response for retrieving a balance account value: accountHolderId: AH32272223222B59K6RTQBFNZ defaultCurrencyCode: EUR @@ -3892,8 +4551,6 @@ components: currency: EUR reserved: 0 id: BA3227C223222B5BLP6JQC3FD - paymentInstruments: - - id: PI32272223222B5BRM4FZ7J9J status: Active get-balancePlatforms-id-accountHolders-success-200: summary: Response code - 200 OK @@ -3965,13 +4622,14 @@ components: type: velocity id: TR32272223222B5CMDGT89F4F get-paymentInstruments-id-success-200: - summary: Response code - 200 OK - description: Example response when retrieving a payment instrument + summary: Payment instruments retrieved + description: Example response for retrieving payment instruments associated + with a balance account value: balanceAccountId: BA32272223222B59CZ3T52DKZ description: S. Hopper - Main card issuingCountryCode: GB - status: Active + status: active type: card card: brand: mc @@ -4053,27 +4711,40 @@ components: description: Example request for updating the status of an account holder value: status: Suspended - patch-paymentInstruments-id-invalidData-422: - summary: Response code - 422 Unprocessable Entity - description: Example response for a failed request to update the balance account - ID + patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status: + summary: Update the status of a sweep + description: Example request for updating a sweep value: - type: https://docs.adyen.com/errors/general/invalid-field-value - title: Invalid Payment Instrument information provided - status: 422 - detail: The balanceAccountId can only be changed when the status is Inactive - or Requested - requestId: 1W1UI15PLVGC9V8O - errorCode: '30_031' - patch-paymentInstruments-id-success-200: - summary: Response code - 200 OK - description: Example respones for successfully updating the status of a payment + status: inactive + patch-balanceAccounts-balanceAccountId-sweeps-sweepId-updateSweep-status-200: + summary: Sweep status updated + description: Example response for updating a sweep + value: + id: SWPC4227C224555B5FTD2NT2JV4WN5 + counterparty: + merchantAccount: YOUR_MERCHANT_ACCOUNT + triggerAmount: + currency: EUR + value: 50000 + currency: EUR + schedule: + type: balance + type: pull + status: inactive + patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount: + summary: Update the balance account linked to a payment instrument + description: Example request for updating the balance account of a payment instrument + value: + balanceAccountId: BA32272223222B5CM82WL892M + patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200: + summary: Balance account updated + description: Example response for updating the balance account linked to a payment instrument value: - balanceAccountId: BA32272223222B59CZ3T52DKZ + balanceAccountId: BA32272223222B5CM82WL892M description: S. Hopper - Main card issuingCountryCode: GB - status: Suspended + status: inactive type: card card: brand: mc @@ -4087,15 +4758,32 @@ components: lastFour: '5785' number: '************5785' id: PI3227C223222B5CMD278FKGS - patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount: - summary: Update the balance account linked to a payment instrument. - description: Example request for updating the balance account of a payment instrument - value: - balanceAccountId: BA32272223222B5CM82WL892M patch-paymentInstruments-id-updatePaymentInstrumentStatus: - summary: Update the status of a payment instrument. + summary: Update the status of a payment instrument + description: Example request for updating the status of a payment instrument value: - status: Suspended + status: suspended + patch-paymentInstruments-id-updatePaymentInstrumentStatus-200: + summary: Payment instrument status updated + description: Example response for updating the status of a payment instrument + value: + balanceAccountId: BA32272223222B59CZ3T52DKZ + description: S. Hopper - Main card + issuingCountryCode: GB + status: suspended + type: card + card: + brand: mc + brandVariant: mcdebit + cardholderName: Simon Hopper + formFactor: virtual + bin: '555544' + expiration: + month: '01' + year: '2024' + lastFour: '5785' + number: '************5785' + id: PI3227C223222B5CMD278FKGS patch-transactionRules-transactionRuleId-success-200: summary: Response code - 200 OK description: Example response for successfully updating the status of a transaction @@ -4117,11 +4805,12 @@ components: value: status: inactive post-accountHolders-createAccountHolder: - summary: Create an account holder. + summary: Create an account holder description: Example request for creating an account holder value: balancePlatform: YOUR_BALANCE_PLATFORM description: S.Hopper - Staff 123 + legalEntityId: LE322KT223222D5FJ7THR293F contactDetails: email: s.hopper@example.com phone: @@ -4133,45 +4822,103 @@ components: street: Brannan Street houseNumberOrName: '274' postalCode: 1020CD - post-accountHolders-success-200: - summary: Response code - 200 OK - description: Example response for successfully creating an account holder + post-accountHolders-createAccountHolder-200: + summary: Account holder created value: balancePlatform: YOUR_BALANCE_PLATFORM contactDetails: - address: - city: Amsterdam - country: NL - houseNumberOrName: '274' - postalCode: 1020CD - street: Brannan Street email: s.hopper@example.com phone: number: '+315551231234' type: Mobile + address: + city: Amsterdam + country: NL + street: Brannan Street + houseNumberOrName: '274' + postalCode: 1020CD description: S.Hopper - Staff 123 + legalEntityId: LE322KT223222D5FJ7THR293F id: AH3227C223222B5CMD2SXFKGT - status: Active + status: active + post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull: + summary: Create a sweep to pull funds in to a balance account + description: Example request for creating a pull sweep + value: + counterparty: + merchantAccount: YOUR_MERCHANT_ACCOUNT + triggerAmount: + currency: EUR + value: 50000 + currency: EUR + schedule: + type: balance + type: pull + status: active + post-balanceAccounts-balanceAccountId-sweeps-createSweep-pull-200: + summary: Sweep of pull type created + description: Example response for creating a pull sweep + value: + id: SWPC4227C224555B5FTD2NT2JV4WN5 + counterparty: + merchantAccount: YOUR_MERCHANT_ACCOUNT + triggerAmount: + currency: EUR + value: 50000 + currency: EUR + schedule: + type: balance + type: pull + status: active + post-balanceAccounts-balanceAccountId-sweeps-createSweep-push: + summary: Create a sweep to push funds out of a balance account + description: Example request for creating a push sweep + value: + counterparty: + balanceAccountId: BA32278887611B5FTD2KR6TJD + triggerAmount: + currency: EUR + value: 50000 + currency: EUR + schedule: + type: weekly + type: push + status: active + post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-200: + summary: Sweep of push type created + description: Example response for creating a push sweep + value: + id: SWPC4227C224555B5FTD2NT2JV4WN5 + counterparty: + balanceAccountId: BA32278887611B5FTD2KR6TJD + triggerAmount: + currency: EUR + value: 50000 + currency: EUR + schedule: + type: weekly + type: push + status: active post-balanceAccounts-createBalanceAccount: - summary: Create a balance account. + summary: Create a balance account description: Example request for creating a balance account value: accountHolderId: AH32272223222B59K6ZKBBFNQ description: S.Hopper - Main balance account - post-balanceAccounts-success-200: - summary: Response code - 200 OK - description: Example response for successfully creating a balance account + post-balanceAccounts-createBalanceAccount-200: + summary: Balance account created + description: Example response for creating a balance account value: accountHolderId: AH32272223222B59K6ZKBBFNQ defaultCurrencyCode: EUR - description: S.Hopper - Main balance account + reference: S.Hopper - Main balance account balances: - available: 0 balance: 0 currency: EUR reserved: 0 - id: BA3227C223222B5CMD38HFKGH - status: Active + id: BA32272223222B59CZ3T52DKZ + status: active post-paymentInstrumentGroups-createPaymentInstrumentGroups: summary: Create a payment instrument group. description: Example request for creating a payment instrument group @@ -4250,29 +4997,198 @@ components: year: '2024' lastFour: '3548' id: PI32272223222B5CMD3MQ3HXX - post-transactionRules-createTransactionRule: - summary: Create a transaction rule. + post-transactionRules-createTransactionRuleAllowPos: + summary: Allow only point-of-sale transactions + description: Example request to allow only point-of-sale transactions value: - description: Allow 5 transactions per month + description: Allow only point-of-sale transactions + reference: YOUR_REFERENCE_4F7346 + entityKey: + entityType: paymentInstrument + entityReference: PI3227C223222B5BPCMFXD2XG + status: active interval: - type: monthly - maxTransactions: 5 - paymentInstrumentId: PI3227C223222B59KGTXP884R - reference: myRule12345 - startDate: '2021-01-21T12:46:35.476629Z' + type: perTransaction + ruleRestrictions: + processingTypes: + operation: noneMatch + value: + - pos + type: blockList + post-transactionRules-createTransactionRuleAllowPos-200: + summary: Transaction rule allowing only POS transactions created + description: Example response for allowing only point-of-sale transactions + value: + description: Allow only point-of-sale transactions + entityKey: + entityReference: PI3227C223222B5BPCMFXD2XG + entityType: paymentInstrument + interval: + timeZone: UTC + type: perTransaction + outcomeType: hardBlock + reference: YOUR_REFERENCE_4F7346 + requestType: authorization + ruleRestrictions: + processingTypes: + operation: noneMatch + value: + - pos + startDate: '2022-03-23T15:05:11.979433+01:00' + status: active + type: blockList + id: TR3227C223222B5FCB756DV9H + post-transactionRules-createTransactionRuleIncreaseScore: + summary: Increase the score of a card + description: Example request to increase the score of a card + value: + description: Assign score if more than 500 EUR in 2 hours + entityKey: + entityReference: PI3227C223222B5FN65FN5NS9 + entityType: paymentInstrument + interval: + type: sliding + duration: + value: 2 + unit: hours + outcomeType: scoreBased + reference: myRule11789 + ruleRestrictions: + totalAmount: + operation: greaterThan + value: + currency: EUR + value: 50000 + score: 20 + type: velocity + post-transactionRules-createTransactionRuleIncreaseScore-200: + summary: Score-based transaction rule created + description: Example response for increasing the score of a card + value: + description: Assign score if more than 500 EUR in 2 hours + entityKey: + entityReference: PI3227C223222B5FN65FN5NS9 + entityType: paymentInstrument + interval: + duration: + unit: hours + value: 2 + timeZone: UTC + type: sliding + outcomeType: scoreBased + reference: myRule11789 + requestType: authorization + ruleRestrictions: + totalAmount: + operation: greaterThan + value: + currency: EUR + value: 50000 + score: 20 status: inactive type: velocity - post-transactionRules-success-200: - summary: Response code - 200 OK - description: Example response for successfully creating a transaction rule + id: TR3227C223222B5FW3LVW8NRJ + post-transactionRules-createTransactionRuleLimitSliding: + summary: Limit total amount in the last 12 hours + description: Example request to limit the total amount in a sliding interval value: - description: Allow 5 transactions per month + description: Up to 1000 EUR per card for the last 12 hours + reference: YOUR_REFERENCE_2918A + status: active + entityKey: + entityReference: BA3227C223222B5FN65355NR3 + entityType: balanceAccount + aggregationLevel: paymentInstrument interval: - type: monthly - maxTransactions: 5 - paymentInstrumentId: PI3227C223222B59KGTXP884R - reference: myRule12345 - startDate: '2021-01-21T12:46:35.476629Z' + type: sliding + duration: + value: '12' + unit: hours + outcomeType: hardBlock + ruleRestrictions: + totalAmount: + operation: greaterThan + value: + value: 100000 + currency: EUR + type: velocity + post-transactionRules-createTransactionRuleLimitSliding-200: + summary: Transaction rule with a sliding interval created + description: Example response for limiting the total amount in a sliding interval + value: + aggregationLevel: paymentInstrument + description: Up to 1000 EUR per card for the last 12 hours + entityKey: + entityReference: BA3227C223222B5FN65355NR3 + entityType: balanceAccount + interval: + duration: + unit: hours + value: 12 + timeZone: UTC + type: sliding + outcomeType: hardBlock + reference: YOUR_REFERENCE_2918A + requestType: authorization + ruleRestrictions: + totalAmount: + operation: greaterThan + value: + currency: EUR + value: 100000 + startDate: '2022-04-19T18:43:37.618337+02:00' status: active type: velocity - id: TR32272223222B5CMD3V73HXG + id: TR32272223222B5FW3LZ74JFB + post-transactionRules-createTransactionRuleLimitTransaction: + summary: Limit international payments + description: Example request to limit total amount of international transations + value: + description: Up to 50 EUR international transactions + reference: YOUR_REFERENCE_B2634 + status: active + entityKey: + entityType: balanceAccount + entityReference: BA3227C223222B5FN65355NR3 + interval: + type: daily + outcomeType: hardBlock + ruleRestrictions: + totalAmount: + operation: greaterThan + value: + currency: EUR + value: 5000 + internationalTransaction: + operation: equals + value: true + type: velocity + post-transactionRules-createTransactionRuleLimitTransaction-200: + summary: Transaction rule to limit international transactions created + description: Example response for limiting the total amount of international + transations + value: + description: Up to 50 EUR international transactions + entityKey: + entityReference: BA3227C223222B5FN65355NR3 + entityType: balanceAccount + interval: + timeOfDay: 00:00:00 + timeZone: UTC + type: daily + outcomeType: hardBlock + reference: YOUR_REFERENCE_B2634 + requestType: authorization + ruleRestrictions: + internationalTransaction: + operation: equals + value: true + totalAmount: + operation: greaterThan + value: + currency: EUR + value: 5000 + startDate: '2022-04-19T18:45:03.291699+02:00' + status: active + type: velocity + id: TR32272223222B5FW3M494JGX diff --git a/yaml/BinLookupService-v40.yaml b/yaml/BinLookupService-v40.yaml index e0c3d5f..9f7a000 100644 --- a/yaml/BinLookupService-v40.yaml +++ b/yaml/BinLookupService-v40.yaml @@ -7,6 +7,7 @@ info: title: Adyen BinLookup API description: The BIN Lookup API provides endpoints for retrieving information, such as cost estimates, and 3D Secure supported version based on a given BIN. + x-timestamp: '2022-05-03T09:24:04Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/BinLookupService-v50.yaml b/yaml/BinLookupService-v50.yaml index 5caf0fc..650f7eb 100644 --- a/yaml/BinLookupService-v50.yaml +++ b/yaml/BinLookupService-v50.yaml @@ -7,6 +7,7 @@ info: title: Adyen BinLookup API description: The BIN Lookup API provides endpoints for retrieving information, such as cost estimates, and 3D Secure supported version based on a given BIN. + x-timestamp: '2022-05-03T09:24:04Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/BinLookupService-v52.yaml b/yaml/BinLookupService-v52.yaml new file mode 100644 index 0000000..d1da0e3 --- /dev/null +++ b/yaml/BinLookupService-v52.yaml @@ -0,0 +1,747 @@ +openapi: 3.1.0 +servers: +- url: https://pal-test.adyen.com/pal/servlet/BinLookup/v52 +info: + version: '52' + x-publicVersion: true + title: Adyen BinLookup API + description: The BIN Lookup API provides endpoints for retrieving information, such + as cost estimates, and 3D Secure supported version based on a given BIN. + x-timestamp: '2022-05-03T09:24:04Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- General +tags: +- name: General +paths: + /get3dsAvailability: + post: + tags: + - General + summary: Checks 3D Secure availability. + description: 'Verifies whether 3D Secure is available for the specified BIN + or card brand. For 3D Secure 2, this endpoint also returns device fingerprinting + keys. + + + For more information, refer to [3D Secure 2](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).' + x-addedInVersion: '1' + operationId: post-get3dsAvailability + x-groupName: General + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + get3dsAvailability: + $ref: '#/components/examples/post-get3dsAvailability-get3dsAvailability' + schema: + $ref: '#/components/schemas/ThreeDSAvailabilityRequest' + responses: + '200': + content: + application/json: + examples: + get3dsAvailability: + $ref: '#/components/examples/post-get3dsAvailability-get3dsAvailability-200' + schema: + $ref: '#/components/schemas/ThreeDSAvailabilityResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /getCostEstimate: + post: + tags: + - General + summary: Gets a cost estimate. + description: '>This API is available only for merchants operating in Australia, + the EU, and the UK. + + + Use the Adyen Cost Estimation API to pre-calculate interchange and scheme + fee costs. Knowing these costs prior actual payment authorisation gives you + an opportunity to charge those costs to the cardholder, if necessary. + + + To retrieve this information, make the call to the `/getCostEstimate` endpoint. + The response to this call contains the amount of the interchange and scheme + fees charged by the network for this transaction, and also which surcharging + policy is possible (based on current regulations). + + + > Since not all information is known in advance (for example, if the cardholder + will successfully authenticate via 3D Secure or if you also plan to provide + additional Level 2/3 data), the returned amounts are based on a set of assumption + criteria you define in the `assumptions` parameter.' + operationId: post-getCostEstimate + x-groupName: General + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + getCostEstimate: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimate' + getCostEstimateEncryptedCard: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateEncryptedCard' + getCostEstimateMinimal: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateMinimal' + getCostEstimateMinimal3DS: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateMinimal3DS' + getCostEstimateRecurringContract: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateRecurringContract' + schema: + $ref: '#/components/schemas/CostEstimateRequest' + responses: + '200': + content: + application/json: + examples: + getCostEstimate: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimate-200' + getCostEstimateEncryptedCard: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateEncryptedCard-200' + getCostEstimateMinimal: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateMinimal-200' + getCostEstimateMinimal3DS: + $ref: '#/components/examples/post-getCostEstimate-getCostEstimateMinimal3DS-200' + schema: + $ref: '#/components/schemas/CostEstimateResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. +components: + schemas: + Amount: + properties: + currency: + description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + maxLength: 3 + minLength: 3 + type: string + value: + description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). + format: int64 + type: integer + required: + - value + - currency + BinDetail: + properties: + issuerCountry: + description: The country where the card was issued. + type: string + CardBin: + properties: + bin: + description: The first 6 digit of the card number. Enable this field via + merchant account settings. + type: string + commercial: + description: If true, it indicates a commercial card. Enable this field + via merchant account settings. + type: boolean + fundingSource: + description: 'The card funding source. Valid values are: + + * CHARGE + + * CREDIT + + * DEBIT + + * DEFERRED_DEBIT + + * PREPAID + + * PREPAID_RELOADABLE + + * PREPAID_NONRELOADABLE + + > Enable this field via merchant account settings.' + type: string + fundsAvailability: + description: 'Indicates availability of funds. + + + Visa: + + * "I" (fast funds are supported) + + * "N" (otherwise) + + + Mastercard: + + * "I" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM + list) + + * "N" (otherwise) + + > Returned when you verify a card BIN or estimate costs, and only if `payoutEligible` + is different from "N" or "U".' + type: string + issuingBank: + description: The issuing bank of the card. + type: string + issuingCountry: + description: The country where the card was issued from. + type: string + issuingCurrency: + description: The currency of the card. + type: string + paymentMethod: + description: The payment method associated with the card (e.g. visa, mc, + or amex). + type: string + payoutEligible: + description: 'Indicates whether a payout is eligible or not for this card. + + + Visa: + + * "Y" + + * "N" + + + Mastercard: + + * "Y" (domestic and cross-border) + + * "D" (only domestic) + + * "N" (no MoneySend) + + * "U" (unknown) + + > Returned when you verify a card BIN or estimate costs, and only if `payoutEligible` + is different from "N" or "U".' + type: string + summary: + description: The last four digits of the card number. + type: string + CostEstimateAssumptions: + properties: + assume3DSecureAuthenticated: + description: If true, the cardholder is expected to successfully authorise + via 3D Secure. + type: boolean + assumeLevel3Data: + description: If true, the transaction is expected to have valid Level 3 + data. + type: boolean + installments: + description: If not zero, the number of installments. + format: int32 + type: integer + CostEstimateRequest: + properties: + amount: + description: The transaction amount used as a base for the cost estimation. + $ref: '#/components/schemas/Amount' + assumptions: + description: Assumptions made for the expected characteristics of the transaction, + for which the charges are being estimated. + $ref: '#/components/schemas/CostEstimateAssumptions' + cardNumber: + description: 'The card number (4-19 characters) for PCI compliant use cases. + Do not use any separators. + + + > Either the `cardNumber` or `encryptedCardNumber` field must be provided + in a payment request.' + maxLength: 19 + minLength: 4 + type: string + encryptedCardNumber: + description: 'Encrypted data that stores card information for non PCI-compliant + use cases. The encrypted data must be created with the Checkout Card Component + or Secured Fields Component, and must contain the `encryptedCardNumber` + field. + + + > Either the `cardNumber` or `encryptedCardNumber` field must be provided + in a payment request.' + type: string + merchantAccount: + description: The merchant account identifier you want to process the (transaction) + request with. + type: string + merchantDetails: + description: Additional data for merchants who don't use Adyen as the payment + authorisation gateway. + $ref: '#/components/schemas/MerchantDetails' + recurring: + description: The recurring settings for the payment. Use this property when + you want to enable [recurring payments](https://docs.adyen.com/online-payments/tokenization). + $ref: '#/components/schemas/Recurring' + selectedRecurringDetailReference: + description: The `recurringDetailReference` you want to use for this cost + estimate. The value `LATEST` can be used to select the most recently stored + recurring detail. + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + card holder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + required: + - amount + - merchantAccount + CostEstimateResponse: + properties: + cardBin: + description: Card BIN details. + $ref: '#/components/schemas/CardBin' + costEstimateAmount: + description: The estimated cost (scheme fee + interchange) in the settlement + currency. If the settlement currency cannot be determined, the fee in + EUR is returned. + $ref: '#/components/schemas/Amount' + costEstimateReference: + x-addedInVersion: '52' + description: Adyen's 16-character reference associated with the request. + type: string + resultCode: + description: The result of the cost estimation. + type: string + surchargeType: + description: 'Indicates the way the charges can be passed on to the cardholder. + The following values are possible: + + * `ZERO` - the charges are not allowed to pass on + + * `PASSTHROUGH` - the charges can be passed on + + * `UNLIMITED` - there is no limit on how much surcharge is passed on' + type: string + DSPublicKeyDetail: + properties: + brand: + description: Card brand. + type: string + directoryServerId: + description: Directory Server (DS) identifier. + type: string + fromSDKVersion: + description: The version of the mobile 3D Secure 2 SDK. For the possible + values, refer to the versions in [Adyen 3DS2 Android](https://github.com/Adyen/adyen-3ds2-android/releases) + and [Adyen 3DS2 iOS](https://github.com/Adyen/adyen-3ds2-ios/releases). + type: string + publicKey: + description: Public key. The 3D Secure 2 SDK encrypts the device information + by using the DS public key. + format: byte + type: string + MerchantDetails: + properties: + countryCode: + description: '2-letter ISO 3166 country code of the card acceptor location. + + > This parameter is required for the merchants who don''t use Adyen as + the payment authorisation gateway.' + maxLength: 2 + minLength: 2 + type: string + enrolledIn3DSecure: + description: If true, indicates that the merchant is enrolled in 3D Secure + for the card network. + type: boolean + mcc: + description: 'The merchant category code (MCC) is a four-digit number which + relates to a particular market segment. This code reflects the predominant + activity that is conducted by the merchant. + + + The list of MCCs can be found [here](https://en.wikipedia.org/wiki/Merchant_category_code).' + type: string + Recurring: + properties: + contract: + description: "The type of recurring contract to be used.\nPossible values:\n\ + * `ONECLICK` \u2013 Payment details can be used to initiate a one-click\ + \ payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n\ + * `RECURRING` \u2013 Payment details can be used without the card security\ + \ code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n\ + * `ONECLICK,RECURRING` \u2013 Payment details can be used regardless of\ + \ whether the shopper is on your site or not.\n* `PAYOUT` \u2013 Payment\ + \ details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts)." + enum: + - ONECLICK + - RECURRING + - PAYOUT + type: string + recurringDetailName: + description: A descriptive name for this detail. + type: string + recurringExpiry: + x-addedInVersion: '40' + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + format: date-time + type: string + recurringFrequency: + x-addedInVersion: '40' + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + tokenService: + x-addedInVersion: '25' + description: The name of the token service. + enum: + - VISATOKENSERVICE + - MCTOKENSERVICE + type: string + ServiceError: + properties: + additionalData: + x-addedInVersion: '46' + additionalProperties: + type: string + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs**.' + type: object + errorCode: + description: The error code mapped to the error message. + type: string + errorType: + description: The category of the error. + type: string + message: + description: A short explanation of the issue. + type: string + pspReference: + description: The PSP reference of the payment. + type: string + status: + description: The HTTP response status. + format: int32 + type: integer + ThreeDS2CardRangeDetail: + properties: + acsInfoInd: + x-addedInVersion: '51' + description: 'Provides additional information to the 3DS Server. + + Possible values: + + - 01 (Authentication is available at ACS) + + - 02 (Attempts supported by ACS or DS) + + - 03 (Decoupled authentication supported) + + - 04 (Whitelisting supported)' + items: + type: string + type: array + brandCode: + description: Card brand. + type: string + endRange: + description: BIN end range. + type: string + startRange: + description: BIN start range. + type: string + threeDS2Version: + description: 3D Secure protocol version. + type: string + threeDSMethodURL: + description: In a 3D Secure 2 browser-based flow, this is the URL where + you should send the device fingerprint to. + type: string + ThreeDSAvailabilityRequest: + properties: + additionalData: + additionalProperties: + type: string + description: 'This field contains additional data, which may be required + for a particular request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + brands: + description: List of brands. + items: + type: string + type: array + cardNumber: + description: Card number or BIN. + type: string + merchantAccount: + description: The merchant account identifier. + type: string + recurringDetailReference: + description: A recurring detail reference corresponding to a card. + type: string + shopperReference: + description: The shopper's reference to uniquely identify this shopper (e.g. + user ID or account ID). + type: string + required: + - merchantAccount + ThreeDSAvailabilityResponse: + properties: + binDetails: + x-addedInVersion: '50' + description: Bin Group Details + $ref: '#/components/schemas/BinDetail' + dsPublicKeys: + description: List of Directory Server (DS) public keys. + items: + $ref: '#/components/schemas/DSPublicKeyDetail' + type: array + threeDS1Supported: + description: Indicator if 3D Secure 1 is supported. + type: boolean + threeDS2CardRangeDetails: + description: List of brand and card range pairs. + items: + $ref: '#/components/schemas/ThreeDS2CardRangeDetail' + type: array + threeDS2supported: + description: Indicator if 3D Secure 2 is supported. + type: boolean + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + examples: + generic-400: + summary: Response code 400. Bad Request. + value: + status: 400 + errorCode: '702' + message: 'Unexpected input: I' + errorType: validation + post-get3dsAvailability-get3dsAvailability: + summary: Get 3D Secure availability + description: Example request to check 3D Secure availability + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '4111111111111111' + post-get3dsAvailability-get3dsAvailability-200: + summary: Example response for request 'get3dsAvailability' + value: + threeDS1Supported: 'true' + threeDS2CardRangeDetails: [] + threeDS2supported: 'false' + post-getCostEstimate-getCostEstimate: + summary: Estimate the transaction cost + description: Example request to get the estimated cost of a transaction + value: + amount: + value: 1234 + currency: EUR + assumptions: + assumeLevel3Data: true + assume3DSecureAuthenticated: true + cardNumber: '5101180000000007' + merchantAccount: YOUR_MERCHANT_ACCOUNT + merchantDetails: + countryCode: NL + mcc: '7411' + enrolledIn3DSecure: true + shopperInteraction: Ecommerce + post-getCostEstimate-getCostEstimate-200: + summary: Example response for request 'getCostEstimate' + value: + costEstimateAmount: + currency: EUR + value: 12 + resultCode: Success + surchargeType: PASSTHROUGH + post-getCostEstimate-getCostEstimateEncryptedCard: + summary: Estimate the transaction cost using an encrypted card number + description: Example request to get the estimated cost of a transaction + value: + amount: + value: 1234 + currency: EUR + assumptions: + assumeLevel3Data: true + assume3DSecureAuthenticated: true + encryptedCardNumber: test_5101180000000007 + merchantAccount: YOUR_MERCHANT_ACCOUNT + merchantDetails: + countryCode: NL + mcc: '7411' + enrolledIn3DSecure: true + shopperInteraction: Ecommerce + post-getCostEstimate-getCostEstimateEncryptedCard-200: + summary: Example response for request 'getCostEstimateEncryptedCard' + value: + costEstimateAmount: + currency: EUR + value: 12 + resultCode: Success + surchargeType: PASSTHROUGH + post-getCostEstimate-getCostEstimateMinimal: + summary: Estimate the transaction cost (minimal) + description: Example request to get the estimated cost of a transaction with + minimum details + value: + amount: + value: 1234 + currency: EUR + cardNumber: '5101180000000007' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-getCostEstimate-getCostEstimateMinimal-200: + summary: Example response for request 'getCostEstimateMinimal' + value: + costEstimateAmount: + currency: EUR + value: 12 + resultCode: Success + surchargeType: PASSTHROUGH + post-getCostEstimate-getCostEstimateMinimal3DS: + summary: Estimate the transaction cost (minimal with 3DSecure) + description: Example request to get the estimated cost of a 3D Secure transaction + with minimum details + value: + amount: + value: 1234 + currency: EUR + assumptions: + assumeLevel3Data: true + assume3DSecureAuthenticated: true + cardNumber: '5101180000000007' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-getCostEstimate-getCostEstimateMinimal3DS-200: + summary: Example response for request 'getCostEstimateMinimal3DS' + value: + costEstimateAmount: + currency: EUR + value: 12 + resultCode: Success + surchargeType: PASSTHROUGH + post-getCostEstimate-getCostEstimateRecurringContract: + summary: Estimate the transaction cost (recurring contract) + description: Example request to get the estimated cost of a recurring transaction + value: + amount: + value: 1234 + currency: EUR + assumptions: + assumeLevel3Data: true + assume3DSecureAuthenticated: true + merchantAccount: YOUR_MERCHANT_ACCOUNT + merchantDetails: + countryCode: NL + mcc: '7411' + enrolledIn3DSecure: true + selectedRecurringDetailReference: '1234567890123456' + shopperInteraction: Ecommerce + shopperReference: '123456' diff --git a/yaml/CheckoutService-v37.yaml b/yaml/CheckoutService-v37.yaml index 36d05fe..10d7c73 100644 --- a/yaml/CheckoutService-v37.yaml +++ b/yaml/CheckoutService-v37.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v37/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=37) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3576,6 +3724,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3623,6 +3779,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3651,6 +3811,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3658,6 +3821,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -3944,10 +4145,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -3999,7 +4200,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4088,8 +4288,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4100,7 +4300,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4308,6 +4507,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4361,7 +4569,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -4373,11 +4585,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -4498,6 +4716,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4586,6 +4813,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -4753,6 +5022,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -4925,23 +5195,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5153,6 +5406,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -5311,6 +5565,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5418,6 +5681,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -5432,8 +5696,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -5442,6 +5709,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -5466,7 +5735,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -5484,7 +5752,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -5502,7 +5772,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5540,9 +5809,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -5615,7 +5881,462 @@ components: shopperLocale: description: The shopperLocale. type: string - PaymentLinkResource: + PaymentDonationRequest: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -5651,8 +6372,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5664,12 +6388,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -5688,13 +6427,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -5736,8 +6492,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -5747,21 +6506,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -5956,6 +6735,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6200,8 +6988,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -6231,7 +7018,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -6395,10 +7181,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -6444,7 +7230,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6927,10 +7712,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7003,7 +7788,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7287,8 +8071,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -7324,6 +8111,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -7776,37 +8574,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -7990,6 +8757,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -8083,13 +8852,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -8252,6 +9022,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -8480,6 +9272,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -10038,7 +10916,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v40.yaml b/yaml/CheckoutService-v40.yaml index 2108c00..524cd5a 100644 --- a/yaml/CheckoutService-v40.yaml +++ b/yaml/CheckoutService-v40.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v40/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=40) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3804,6 +3952,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3851,6 +4007,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3879,6 +4039,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3886,6 +4049,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4191,10 +4392,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4252,7 +4453,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4341,8 +4541,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4353,7 +4553,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4561,6 +4760,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4614,7 +4822,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -4626,11 +4838,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -4751,6 +4969,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4886,6 +5113,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5053,6 +5322,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5225,23 +5495,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5530,6 +5783,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -5688,6 +5942,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5795,6 +6058,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -5809,8 +6073,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -5819,6 +6086,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -5843,7 +6112,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -5861,7 +6129,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -5879,7 +6149,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5921,9 +6190,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -5996,7 +6262,496 @@ components: shopperLocale: description: The shopperLocale. type: string - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6032,8 +6787,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6045,12 +6803,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6069,13 +6842,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6117,8 +6907,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6128,21 +6921,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6337,6 +7150,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6600,8 +7422,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -6640,7 +7461,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -6804,10 +7624,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -6859,7 +7679,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7354,10 +8173,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7430,7 +8249,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7706,8 +8524,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -7743,6 +8564,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8211,37 +9043,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -8439,6 +9240,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -8532,13 +9335,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -8822,6 +9626,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9050,6 +9876,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -10608,7 +11520,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v41.yaml b/yaml/CheckoutService-v41.yaml index 7d6f85e..0390ded 100644 --- a/yaml/CheckoutService-v41.yaml +++ b/yaml/CheckoutService-v41.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v41/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=41) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3814,6 +3962,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3861,6 +4017,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3889,6 +4049,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3896,6 +4059,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4201,10 +4402,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4262,7 +4463,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4351,8 +4551,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4363,7 +4563,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4571,6 +4770,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4624,7 +4832,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -4636,11 +4848,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -4761,6 +4979,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4896,6 +5123,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5063,6 +5332,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5235,23 +5505,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5540,6 +5793,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -5698,6 +5952,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5805,6 +6068,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -5819,8 +6083,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -5829,6 +6096,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -5853,7 +6122,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -5871,7 +6139,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -5889,7 +6159,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5931,9 +6200,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6010,7 +6276,496 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6046,8 +6801,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6059,12 +6817,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6083,13 +6856,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6131,8 +6921,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6142,21 +6935,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6351,6 +7164,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6614,8 +7436,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -6654,7 +7475,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -6818,10 +7638,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -6873,7 +7693,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7372,10 +8191,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7448,7 +8267,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7724,8 +8542,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -7761,6 +8582,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8229,37 +9061,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -8457,6 +9258,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -8550,13 +9353,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -8866,6 +9670,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9094,6 +9920,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -10652,7 +11564,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v46.yaml b/yaml/CheckoutService-v46.yaml index 3e34bad..b002df1 100644 --- a/yaml/CheckoutService-v46.yaml +++ b/yaml/CheckoutService-v46.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v46/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=46) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3814,6 +3962,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3861,6 +4017,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3889,6 +4049,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3896,6 +4059,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4201,10 +4402,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4262,7 +4463,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4351,8 +4551,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4363,7 +4563,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4571,6 +4770,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4624,7 +4832,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -4636,11 +4848,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -4761,6 +4979,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4896,6 +5123,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5063,6 +5332,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5235,23 +5505,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5540,6 +5793,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -5698,6 +5952,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5805,6 +6068,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -5819,8 +6083,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -5829,6 +6096,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -5853,7 +6122,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -5871,7 +6139,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -5889,7 +6159,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5931,9 +6200,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6010,7 +6276,496 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6046,8 +6801,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6059,12 +6817,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6083,13 +6856,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6131,8 +6921,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6142,21 +6935,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6351,6 +7164,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6614,8 +7436,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -6654,7 +7475,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -6818,10 +7638,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -6873,7 +7693,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7372,10 +8191,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7448,7 +8267,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7724,8 +8542,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -7761,6 +8582,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8229,37 +9061,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -8465,6 +9266,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -8558,13 +9361,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -8874,6 +9678,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9102,6 +9928,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -10660,7 +11572,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v49.yaml b/yaml/CheckoutService-v49.yaml index 97b8aa4..4faf89b 100644 --- a/yaml/CheckoutService-v49.yaml +++ b/yaml/CheckoutService-v49.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v49/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=49) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3854,6 +4002,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3901,6 +4057,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3937,6 +4097,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3944,6 +4107,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4269,10 +4470,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4330,7 +4531,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4457,8 +4657,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4469,7 +4669,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4926,6 +5125,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -4979,7 +5187,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -4991,11 +5203,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5116,6 +5334,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5251,6 +5478,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5426,6 +5695,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5630,23 +5900,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5943,6 +6196,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6125,6 +6379,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6232,6 +6495,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6246,8 +6510,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6256,6 +6523,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6280,7 +6549,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6298,7 +6566,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6322,7 +6592,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6364,9 +6633,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6443,7 +6709,506 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6479,8 +7244,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6492,12 +7260,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6516,13 +7299,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6564,8 +7364,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6575,21 +7378,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6796,6 +7619,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7064,8 +7896,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7104,7 +7935,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7268,10 +8098,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7342,7 +8172,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7857,10 +8686,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7938,7 +8767,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8228,8 +9056,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8265,6 +9096,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8733,37 +9575,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -8985,6 +9796,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9078,13 +9891,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9154,7 +9968,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9481,6 +10295,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9733,6 +10569,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11291,7 +12213,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v50.yaml b/yaml/CheckoutService-v50.yaml index 6cbb7b2..7c465c0 100644 --- a/yaml/CheckoutService-v50.yaml +++ b/yaml/CheckoutService-v50.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v50/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=50) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:08Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3875,6 +4023,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3922,6 +4078,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3958,6 +4118,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3965,6 +4128,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4290,10 +4491,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4357,7 +4558,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4484,8 +4684,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4496,7 +4696,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4953,6 +5152,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5006,7 +5214,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5018,11 +5230,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5135,8 +5353,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5149,6 +5366,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5284,6 +5510,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5459,6 +5727,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5663,23 +5932,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5976,6 +6228,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6158,6 +6411,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6265,6 +6527,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6279,8 +6542,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6289,6 +6555,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6313,7 +6581,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6331,7 +6598,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6355,7 +6624,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6397,9 +6665,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6476,7 +6741,512 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6512,8 +7282,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6525,12 +7298,27 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6549,13 +7337,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6597,8 +7402,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6608,21 +7416,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6834,6 +7662,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7102,8 +7939,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7142,7 +7978,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7306,10 +8141,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7386,7 +8221,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7901,10 +8735,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7988,7 +8822,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8278,8 +9111,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8315,6 +9151,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8783,37 +9630,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9035,6 +9851,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9128,13 +9946,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9204,7 +10023,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9549,6 +10368,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9801,6 +10642,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11359,7 +12286,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v51.yaml b/yaml/CheckoutService-v51.yaml index 54c95cc..2376f3a 100644 --- a/yaml/CheckoutService-v51.yaml +++ b/yaml/CheckoutService-v51.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v51/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=51) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:09Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3877,6 +4025,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3924,6 +4080,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3960,6 +4120,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3967,6 +4130,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4298,10 +4499,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4365,7 +4566,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4492,8 +4692,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4504,7 +4704,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4961,6 +5160,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5014,7 +5222,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5026,11 +5238,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5143,8 +5361,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5157,6 +5374,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5292,6 +5518,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5467,6 +5735,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5671,23 +5940,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5984,6 +6236,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6166,6 +6419,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6273,6 +6535,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6287,8 +6550,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6297,6 +6563,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6321,7 +6589,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6339,7 +6606,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6363,7 +6632,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6405,9 +6673,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6484,7 +6749,518 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRealTimeUpdate: + x-addedInVersion: '51' + deprecated: true + description: Choose if a specific transaction should use the Real-time Account + Updater, regardless of other settings. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6520,8 +7296,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6533,17 +7312,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6562,13 +7356,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6610,8 +7421,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6621,21 +7435,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6854,6 +7688,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7128,8 +7971,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7168,7 +8010,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7332,10 +8173,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7412,7 +8253,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7933,10 +8773,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8020,7 +8860,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8310,8 +9149,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8347,6 +9189,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8815,37 +9668,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9067,6 +9889,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9160,13 +9984,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9236,7 +10061,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9581,6 +10406,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9833,6 +10680,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11391,7 +12324,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v52.yaml b/yaml/CheckoutService-v52.yaml index 475ed40..32b850d 100644 --- a/yaml/CheckoutService-v52.yaml +++ b/yaml/CheckoutService-v52.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v52/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=52) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:09Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3877,6 +4025,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3924,6 +4080,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3960,6 +4120,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3967,6 +4130,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4298,10 +4499,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4365,7 +4566,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4492,8 +4692,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4504,7 +4704,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4961,6 +5160,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5014,7 +5222,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5026,11 +5238,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5143,8 +5361,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5157,6 +5374,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5292,6 +5518,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5467,6 +5735,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5671,23 +5940,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5984,6 +6236,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6166,6 +6419,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6273,6 +6535,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6287,8 +6550,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6297,6 +6563,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6321,7 +6589,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6339,7 +6606,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6363,7 +6632,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6409,9 +6677,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6488,7 +6753,518 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRealTimeUpdate: + x-addedInVersion: '51' + deprecated: true + description: Choose if a specific transaction should use the Real-time Account + Updater, regardless of other settings. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6524,8 +7300,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6537,17 +7316,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6566,13 +7360,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6614,8 +7425,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6625,21 +7439,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6858,6 +7692,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7132,8 +7975,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7172,7 +8014,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7336,10 +8177,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7416,7 +8257,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7941,10 +8781,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8028,7 +8868,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8318,8 +9157,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8355,6 +9197,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8823,37 +9676,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9075,6 +9897,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9168,13 +9992,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9244,7 +10069,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9589,6 +10414,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9841,6 +10688,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11399,7 +12332,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v53.yaml b/yaml/CheckoutService-v53.yaml index 62e23cf..eed75aa 100644 --- a/yaml/CheckoutService-v53.yaml +++ b/yaml/CheckoutService-v53.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v53/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=53) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:09Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3877,6 +4025,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3924,6 +4080,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3960,6 +4120,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3967,6 +4130,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4298,10 +4499,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4365,7 +4566,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4492,8 +4692,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4504,7 +4704,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4961,6 +5160,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5014,7 +5222,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5026,11 +5238,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5143,8 +5361,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5157,6 +5374,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5292,6 +5518,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5467,6 +5735,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5671,23 +5940,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -5984,6 +6236,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6166,6 +6419,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6273,6 +6535,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6287,8 +6550,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6297,6 +6563,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6321,7 +6589,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6339,7 +6606,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6363,7 +6632,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6409,9 +6677,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6488,7 +6753,518 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRealTimeUpdate: + x-addedInVersion: '51' + deprecated: true + description: Choose if a specific transaction should use the Real-time Account + Updater, regardless of other settings. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6524,8 +7300,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6537,17 +7316,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6566,13 +7360,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6614,8 +7425,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6625,21 +7439,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6870,6 +7704,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7144,8 +7987,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7184,7 +8026,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7348,10 +8189,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7428,7 +8269,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7953,10 +8793,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8040,7 +8880,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8336,8 +9175,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8373,6 +9215,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8841,37 +9694,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9093,6 +9915,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9186,13 +10010,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9262,7 +10087,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9607,6 +10432,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9859,6 +10706,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11417,7 +12350,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v64.yaml b/yaml/CheckoutService-v64.yaml index dcbc2e9..8ae5b25 100644 --- a/yaml/CheckoutService-v64.yaml +++ b/yaml/CheckoutService-v64.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v64/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=64) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:09Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3877,6 +4025,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3924,6 +4080,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3960,6 +4120,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3967,6 +4130,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4298,10 +4499,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4365,7 +4566,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4492,8 +4692,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4504,7 +4704,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4961,6 +5160,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5014,7 +5222,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5026,11 +5238,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5143,8 +5361,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5157,6 +5374,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5292,6 +5518,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5467,6 +5735,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5717,23 +5986,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -6030,6 +6282,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6212,6 +6465,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6319,6 +6581,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6333,8 +6596,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6343,6 +6609,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6367,7 +6635,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6385,7 +6652,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6409,7 +6678,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6466,9 +6734,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6548,7 +6813,518 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRealTimeUpdate: + x-addedInVersion: '51' + deprecated: true + description: Choose if a specific transaction should use the Real-time Account + Updater, regardless of other settings. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6584,8 +7360,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6597,17 +7376,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6626,13 +7420,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6674,8 +7485,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6685,21 +7499,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6876,8 +7710,7 @@ components: type: string order: x-addedInVersion: '64' - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' shopperLocale: x-addedInVersion: '7' @@ -6935,6 +7768,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7209,8 +8051,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7249,7 +8090,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7413,10 +8253,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7493,7 +8333,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8032,10 +8871,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8119,7 +8958,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8415,8 +9253,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8452,6 +9293,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8920,37 +9772,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9172,6 +9993,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9265,13 +10088,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9341,7 +10165,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9686,6 +10510,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9938,6 +10784,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11496,7 +12428,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v65.yaml b/yaml/CheckoutService-v65.yaml index 0b0fa33..d189d7f 100644 --- a/yaml/CheckoutService-v65.yaml +++ b/yaml/CheckoutService-v65.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v65/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=65) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:10Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3889,6 +4037,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3936,6 +4092,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3972,6 +4132,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3979,6 +4142,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4304,10 +4505,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4371,7 +4572,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4503,8 +4703,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4515,7 +4715,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4972,6 +5171,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5025,7 +5233,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5037,11 +5249,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5158,8 +5376,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5172,6 +5389,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5307,6 +5533,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5482,6 +5750,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5732,23 +6001,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -6045,6 +6297,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6227,6 +6480,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6334,6 +6596,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6348,8 +6611,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6358,6 +6624,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6382,7 +6650,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6400,7 +6667,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6424,7 +6693,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6481,9 +6749,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6563,7 +6828,512 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6599,8 +7369,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6612,17 +7385,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6641,13 +7429,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6693,8 +7498,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6704,21 +7512,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paid**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6876,8 +7704,7 @@ components: type: string order: x-addedInVersion: '64' - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' shopperLocale: x-addedInVersion: '7' @@ -6925,6 +7752,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7193,8 +8029,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7233,7 +8068,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7397,10 +8231,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7477,7 +8311,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8010,10 +8843,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8097,7 +8930,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8393,8 +9225,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8430,6 +9265,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8891,37 +9737,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9161,6 +9976,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9254,13 +10071,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9330,7 +10148,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9675,6 +10493,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9929,6 +10769,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11487,7 +12413,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v66.yaml b/yaml/CheckoutService-v66.yaml index cb95f6f..e0f0fa7 100644 --- a/yaml/CheckoutService-v66.yaml +++ b/yaml/CheckoutService-v66.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v66/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=66) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:10Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,147 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. /orders: post: tags: @@ -468,7 +616,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -477,7 +625,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -558,7 +706,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -647,7 +795,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3889,6 +4037,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -3936,6 +4092,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -3972,6 +4132,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -3979,6 +4142,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4304,10 +4505,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4371,7 +4572,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4503,8 +4703,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4515,7 +4715,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4972,6 +5171,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5025,7 +5233,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5037,11 +5249,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5158,8 +5376,7 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean required: - amount @@ -5172,6 +5389,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5307,6 +5533,48 @@ components: - lastName - shopperEmail title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string DotpayDetails: additionalProperties: false properties: @@ -5482,6 +5750,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5732,23 +6001,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -6045,6 +6297,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6227,6 +6480,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6334,6 +6596,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6348,8 +6611,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6358,6 +6624,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6382,7 +6650,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6400,7 +6667,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6424,7 +6693,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6485,9 +6753,6 @@ components: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6567,7 +6832,512 @@ components: x-addedInVersion: '41' description: Result of the 3D Secure 2 authentication. $ref: '#/components/schemas/ThreeDS2Result' - PaymentLinkResource: + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -6603,8 +7373,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -6616,17 +7389,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -6645,13 +7433,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -6697,8 +7502,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -6708,21 +7516,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **completed**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -6880,8 +7708,7 @@ components: type: string order: x-addedInVersion: '64' - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' shopperLocale: x-addedInVersion: '7' @@ -6929,6 +7756,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7197,8 +8033,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7237,7 +8072,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7401,10 +8235,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7481,7 +8315,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8018,10 +8851,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8105,7 +8938,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8401,8 +9233,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -8438,6 +9273,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -8899,37 +9745,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9169,6 +9984,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9262,13 +10079,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9338,7 +10156,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -9683,6 +10501,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -9937,6 +10777,92 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: @@ -11495,7 +12421,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v67.yaml b/yaml/CheckoutService-v67.yaml index 5a2c66b..3b492b5 100644 --- a/yaml/CheckoutService-v67.yaml +++ b/yaml/CheckoutService-v67.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v67/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=67) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:10Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,57 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' /donations: post: tags: @@ -185,7 +243,6 @@ paths: For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' - x-addedInVersion: '67' operationId: post-donations x-groupName: Payments x-sortIndex: 5 @@ -561,7 +618,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -570,7 +627,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -651,7 +708,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -740,7 +797,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -3978,6 +4035,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -4025,6 +4090,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -4061,6 +4130,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -4068,6 +4140,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4393,10 +4503,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4460,7 +4570,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4592,8 +4701,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4604,7 +4713,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5040,6 +5148,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5093,7 +5210,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5105,11 +5226,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -5245,12 +5372,14 @@ components: storePaymentMethod: x-addedInVersion: '50' description: When this is set to **true** and the `shopperReference` is - provided, the payment details will be stored. From api version 68 use - `storePaymentMethodMode` instead. + provided, the payment details will be stored. type: boolean themeId: x-addedInVersion: '67' - description: Use to set a theme to shopper other than default + description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) + to customize the appearance of the payment page. If not specified, the + payment page is rendered according to the theme set as default in your + Customer Area. type: string required: - amount @@ -5263,6 +5392,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5401,29 +5539,23 @@ components: DonationResponse: properties: amount: - x-addedInVersion: '67' description: Authorised amount in the transaction. $ref: '#/components/schemas/Amount' donationAccount: - x-addedInVersion: '67' description: The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). type: string id: - x-addedInVersion: '67' description: Your unique resource identifier. type: string merchantAccount: - x-addedInVersion: '67' description: The merchant account identifier, with which you want to process the transaction. type: string payment: - x-addedInVersion: '67' description: Action to be taken for completing the payment. $ref: '#/components/schemas/PaymentResponse' reference: - x-addedInVersion: '67' description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If @@ -5431,7 +5563,6 @@ components: with hyphens ("-"). Maximum length: 80 characters.' type: string status: - x-addedInVersion: '67' description: 'The status of the donation transaction. @@ -5622,6 +5753,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -5872,23 +6004,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -6185,6 +6300,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -6367,6 +6483,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6474,6 +6599,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -6488,8 +6614,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -6498,6 +6627,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -6522,7 +6653,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -6540,7 +6670,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -6558,7 +6690,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -6586,9 +6717,6 @@ components: description: Contains updated information regarding the order in case order information was provided in the request. $ref: '#/components/schemas/CheckoutOrderResponse' - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -6812,7 +6940,7 @@ components: type: string donationOriginalPspReference: description: PSP reference of the transaction from which the donation token - is generated. + is generated. Required when `donationToken` is provided. type: string donationToken: description: Donation token received in the `/payments` call. @@ -6916,8 +7044,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -6956,7 +7083,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -7120,10 +7246,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -7177,7 +7303,7 @@ components: - returnUrl - paymentMethod - donationAccount - PaymentLinkResource: + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -7213,8 +7339,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -7226,17 +7355,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -7255,13 +7399,30 @@ components: other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -7275,6 +7436,25 @@ components: description: A reference that is used to uniquely identify the payment in future communications about the payment status. type: string + requiredShopperFields: + x-addedInVersion: '67' + description: "List of fields that the shopper has to provide on the payment\ + \ page before completing the payment. For more information, refer to [Provide\ + \ shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\ + \nPossible values:\n* **billingAddress** \u2013 The address where to send\ + \ the invoice.\n* **deliveryAddress** \u2013 The address where the purchased\ + \ goods should be delivered.\n* **shopperEmail** \u2013 The shopper's\ + \ email address.\n* **shopperName** \u2013 The shopper's full name.\n\ + * **telephoneNumber** \u2013 The shopper's phone number.\n" + items: + enum: + - billingAddress + - deliveryAddress + - shopperEmail + - shopperName + - telephoneNumber + type: string + type: array returnUrl: description: 'Website URL used for redirection after payment is completed. @@ -7307,8 +7487,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -7318,21 +7501,41 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) - - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **completed**: The shopper completed the payment.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -7346,7 +7549,7 @@ components: themeId: x-addedInVersion: '67' description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) - to customize the appearance of the payment page.If not specified, the + to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area. type: string @@ -7497,8 +7700,7 @@ components: type: string order: x-addedInVersion: '64' - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' shopperLocale: x-addedInVersion: '7' @@ -7546,6 +7748,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7814,8 +8025,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7854,7 +8064,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -8018,10 +8227,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8097,7 +8306,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8603,10 +8811,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8690,7 +8898,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -8986,8 +9193,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -9023,6 +9233,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -9484,37 +9705,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -9754,6 +9944,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -9847,13 +10039,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -9923,7 +10116,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -10403,6 +10596,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -10657,6 +10872,43 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' post-donations-donations: summary: Start a donation transaction value: @@ -10666,13 +10918,12 @@ components: reference: YOUR_DONATION_REFERENCE paymentMethod: type: scheme - cvc: '123' donationToken: YOUR_DONATION_TOKEN donationOriginalPspReference: 991559660454807J donationAccount: CHARITY_ACCOUNT returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT - shopperInteraction: Ecommerce + shopperInteraction: ContAuth post-donations-donations-200: summary: Example response value: @@ -10704,7 +10955,7 @@ components: returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT donationAccount: CHARITY_ACCOUNT - shopperInteraction: Ecommerce + shopperInteraction: ContAuth shopperReference: YOUR_UNIQUE_SHOPPER_ID recurringProcessingModel: CardOnFile post-orders-basic: @@ -12265,7 +12516,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v68.yaml b/yaml/CheckoutService-v68.yaml index 4d96dbd..587d9c3 100644 --- a/yaml/CheckoutService-v68.yaml +++ b/yaml/CheckoutService-v68.yaml @@ -51,7 +51,14 @@ info: https://checkout-test.adyen.com/v68/payments - ```' + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=68) + to find out what changed in this version!' + x-timestamp: '2022-05-24T09:15:10Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -174,6 +181,57 @@ paths: schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' /donations: post: tags: @@ -185,7 +243,6 @@ paths: For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' - x-addedInVersion: '67' operationId: post-donations x-groupName: Payments x-sortIndex: 5 @@ -561,7 +618,7 @@ paths: basic: $ref: '#/components/examples/post-paymentLinks-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -570,7 +627,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: @@ -651,7 +708,7 @@ paths: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -740,7 +797,7 @@ paths: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: - $ref: '#/components/schemas/PaymentLinkResource' + $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. headers: Idempotency-Key: @@ -4173,6 +4230,14 @@ components: - expiryMonth - expiryYear - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string CardDetails: additionalProperties: false properties: @@ -4220,6 +4285,10 @@ components: holderName: description: The name of the card holder. type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). @@ -4256,6 +4325,9 @@ components: - alliancedata - card - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit - entercash type: string required: @@ -4263,6 +4335,44 @@ components: - encryptedExpiryMonth - encryptedExpiryYear title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array CellulantDetails: additionalProperties: false properties: @@ -4588,10 +4698,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4655,7 +4765,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4787,8 +4896,8 @@ components: type: string required: - merchantAccount - - amount - reference + - amount CheckoutCreateOrderResponse: properties: additionalData: @@ -4799,7 +4908,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5281,11 +5389,11 @@ components: Possible values: - * iOS + * **iOS** - * Android + * **Android** - * Web' + * **Web**' enum: - iOS - Android @@ -5304,6 +5412,14 @@ components: Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date-time type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' @@ -5370,7 +5486,9 @@ components: Limits: - * Maximum 20 key-value pairs per request.* Maximum 20 characters per key. + * Maximum 20 key-value pairs per request. + + * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object @@ -5480,10 +5598,10 @@ components: (PII), for example name or email address.' type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: description: The shopper's social security number. @@ -5609,11 +5727,11 @@ components: Possible values: - * iOS + * **iOS** - * Android + * **Android** - * Web' + * **Web**' enum: - iOS - Android @@ -5632,6 +5750,14 @@ components: Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date-time type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' @@ -5702,7 +5828,9 @@ components: Limits: - * Maximum 20 key-value pairs per request.* Maximum 20 characters per key. + * Maximum 20 key-value pairs per request. + + * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object @@ -5752,6 +5880,7 @@ components: description: Any risk-related settings to apply to the payment. $ref: '#/components/schemas/RiskData' sessionData: + description: The payment session data you need to pass to your front end. type: string shopperEmail: description: The shopper's email address. @@ -5814,10 +5943,10 @@ components: (PII), for example name or email address.' type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: description: The shopper's social security number. @@ -5908,6 +6037,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -5961,7 +6099,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -5973,11 +6115,17 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: @@ -6130,7 +6278,10 @@ components: type: string themeId: x-addedInVersion: '67' - description: Use to set a theme to shopper other than default + description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) + to customize the appearance of the payment page. If not specified, the + payment page is rendered according to the theme set as default in your + Customer Area. type: string required: - amount @@ -6143,6 +6294,15 @@ components: the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -6281,29 +6441,23 @@ components: DonationResponse: properties: amount: - x-addedInVersion: '67' description: Authorised amount in the transaction. $ref: '#/components/schemas/Amount' donationAccount: - x-addedInVersion: '67' description: The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). type: string id: - x-addedInVersion: '67' description: Your unique resource identifier. type: string merchantAccount: - x-addedInVersion: '67' description: The merchant account identifier, with which you want to process the transaction. type: string payment: - x-addedInVersion: '67' description: Action to be taken for completing the payment. $ref: '#/components/schemas/PaymentResponse' reference: - x-addedInVersion: '67' description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If @@ -6311,7 +6465,6 @@ components: with hyphens ("-"). Maximum length: 80 characters.' type: string status: - x-addedInVersion: '67' description: 'The status of the donation transaction. @@ -6502,6 +6655,7 @@ components: enum: - eps - onlineBanking_SK + - onlineBanking_CZ type: string required: - type @@ -6752,23 +6906,6 @@ components: required: - type title: Klarna - LianLianPayDetails: - additionalProperties: false - properties: - telephoneNumber: - description: '' - type: string - type: - description: '**lianlianpay**' - enum: - - lianlianpay_ebanking_enterprise - - lianlianpay_ebanking_credit - - lianlianpay_ebanking_debit - type: string - required: - - type - - telephoneNumber - title: Lianlian Pay LineItem: properties: amountExcludingTax: @@ -7094,6 +7231,7 @@ components: enum: - openinvoice - afterpay_directdebit + - atome_pos type: string title: Open Invoice PayPalDetails: @@ -7276,6 +7414,15 @@ components: amount: description: The captured amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -7383,6 +7530,7 @@ components: - paybright - affirm - affirm_pos + - trustlyvector - oney - facilypay - facilypay_3x @@ -7397,8 +7545,11 @@ components: - wechatpaySDK - wechatpayQR - wechatpayWeb + - wallet_IN - payu_IN_cashcard - payu_IN_nb + - upi_qr + - paytm - molpay_ebanking_VN - openbanking_UK - ebanking_FI @@ -7407,6 +7558,8 @@ components: - swish - twint - pix + - walley + - walley_b2b - molpay_fpx - konbini - directEbanking @@ -7431,7 +7584,6 @@ components: - onlinebanking_IN - fawry - atome - - atome_pos - moneybookers - naps - nordea @@ -7449,7 +7601,9 @@ components: - molpay_bankislam - molpay_publicbank - fpx_agrobank - - wallet_IN + - touchngo + - maybank2u_mae + - duitnow - twint_pos - alipay_hk - alipay_hk_web @@ -7467,7 +7621,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -7495,9 +7648,6 @@ components: description: Contains updated information regarding the order in case order information was provided in the request. $ref: '#/components/schemas/CheckoutOrderResponse' - paymentMethod: - description: The payment method used in the transaction. - type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about @@ -7726,7 +7876,7 @@ components: type: string donationOriginalPspReference: description: PSP reference of the transaction from which the donation token - is generated. + is generated. Required when `donationToken` is provided. type: string donationToken: description: Donation token received in the `/payments` call. @@ -7830,8 +7980,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -7870,7 +8019,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -8034,10 +8182,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -8091,7 +8239,7 @@ components: - returnUrl - paymentMethod - donationAccount - PaymentLinkResource: + PaymentLinkResponse: properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To @@ -8127,8 +8275,11 @@ components: description: The shopper's two-letter country code. type: string deliverAt: - description: The date and time the purchased goods should be delivered. - In ISO 8601 format. For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: @@ -8140,17 +8291,32 @@ components: Maximum length: 280 characters.' type: string expiresAt: - description: The date that the payment link expires, in ISO 8601 format. - For example `2019-11-23T12:25:28Z`, or `2020-05-27T20:25:28+08:00`. Maximum - expiry date should be 70 days from when the payment link is created. If - not provided, the default expiry is set to 24 hours after the payment - link is created. + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' type: string id: x-addedInVersion: '51' description: A unique identifier of the payment link. readOnly: true type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. @@ -8170,18 +8336,29 @@ components: should be unique per billing cycle. type: string metadata: - x-addedInVersion: '68' additionalProperties: type: string - description: Metadata settings to apply to the payment. + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' type: object recurringProcessingModel: - description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ - \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ - \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ @@ -8195,6 +8372,25 @@ components: description: A reference that is used to uniquely identify the payment in future communications about the payment status. type: string + requiredShopperFields: + x-addedInVersion: '67' + description: "List of fields that the shopper has to provide on the payment\ + \ page before completing the payment. For more information, refer to [Provide\ + \ shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\ + \nPossible values:\n* **billingAddress** \u2013 The address where to send\ + \ the invoice.\n* **deliveryAddress** \u2013 The address where the purchased\ + \ goods should be delivered.\n* **shopperEmail** \u2013 The shopper's\ + \ email address.\n* **shopperName** \u2013 The shopper's full name.\n\ + * **telephoneNumber** \u2013 The shopper's phone number.\n" + items: + enum: + - billingAddress + - deliveryAddress + - shopperEmail + - shopperName + - telephoneNumber + type: string + type: array returnUrl: description: 'Website URL used for redirection after payment is completed. @@ -8227,8 +8423,11 @@ components: Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: - description: A unique identifier for the shopper (for example, user ID or - account ID). + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' type: string splits: description: An array of objects specifying how the payment should be split @@ -8238,21 +8437,44 @@ components: $ref: '#/components/schemas/Split' type: array status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: - * **active** + * **active**: The link can be used to make payments. - * **expired** + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. - * **paymentPending** (v68 and later) + * **completed**: The shopper completed the payment. - * **completed** (v66 and later) - - * **paid** (v65 and earlier)' + * **paymentPending**: The shopper is in the process of making the payment. + Applies to payment methods with an asynchronous flow.' enum: - active - completed - expired + - paid - paymentPending type: string store: @@ -8279,7 +8501,7 @@ components: themeId: x-addedInVersion: '67' description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) - to customize the appearance of the payment page.If not specified, the + to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area. type: string @@ -8447,8 +8669,7 @@ components: type: string order: x-addedInVersion: '64' - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' shopperLocale: x-addedInVersion: '7' @@ -8496,6 +8717,15 @@ components: amount: description: The refund amount. $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array merchantAccount: description: The merchant account that is used to process the payment. type: string @@ -8769,8 +8999,7 @@ components: Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: - description: Contains the order information which is required for partial - payments. + description: The order information required for partial payments. $ref: '#/components/schemas/CheckoutOrder' orderReference: description: When you are doing multiple partial (gift card) payments, this @@ -8809,7 +9038,6 @@ components: - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - - $ref: '#/components/schemas/LianLianPayDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' @@ -8973,10 +9201,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -9052,7 +9280,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -9563,10 +9790,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -9650,7 +9877,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -9957,8 +10183,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -9994,6 +10223,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -10455,37 +10695,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -10725,6 +10934,8 @@ components: type: string message: type: string + pspReference: + type: string ShopperInput: properties: billingAddress: @@ -10818,13 +11029,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -10894,7 +11106,7 @@ components: description: The month the card expires. type: string expiryYear: - description: The year the card expires. + description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. @@ -11217,11 +11429,11 @@ components: value: '04' - description: No challenge (transactional risk analysis is already performed) value: '05' - description: "Indicates whether a challenge is requested for this transaction.Possible\ - \ values:\n* **01** \u2014 No preference\n* **02** \u2014 No challenge\ - \ requested\n* **03** \u2014 Challenge requested (3DS Requestor preference)\n\ - * **04** \u2014 Challenge requested (Mandate)\n* **05** \u2014 No challenge\ - \ (transactional risk analysis is already performed)" + description: "Indicates whether a challenge is requested for this transaction.\ + \ Possible values:\n* **01** \u2014 No preference\n* **02** \u2014 No\ + \ challenge requested\n* **03** \u2014 Challenge requested (3DS Requestor\ + \ preference)\n* **04** \u2014 Challenge requested (Mandate)\n* **05**\ + \ \u2014 No challenge (transactional risk analysis is already performed)" enum: - '01' - '02' @@ -11585,6 +11797,28 @@ components: UpdatePaymentLinkRequest: properties: status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed description: 'Status of the payment link. Possible values: * **expired**' @@ -11839,6 +12073,43 @@ components: shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' post-donations-donations: summary: Start a donation transaction value: @@ -11848,13 +12119,12 @@ components: reference: YOUR_DONATION_REFERENCE paymentMethod: type: scheme - cvc: '123' donationToken: YOUR_DONATION_TOKEN donationOriginalPspReference: 991559660454807J donationAccount: CHARITY_ACCOUNT returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT - shopperInteraction: Ecommerce + shopperInteraction: ContAuth post-donations-donations-200: summary: Example response value: @@ -11886,7 +12156,7 @@ components: returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT donationAccount: CHARITY_ACCOUNT - shopperInteraction: Ecommerce + shopperInteraction: ContAuth shopperReference: YOUR_UNIQUE_SHOPPER_ID recurringProcessingModel: CardOnFile post-orders-basic: @@ -13447,7 +13717,7 @@ components: type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - - name: Sberbank Online + - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney diff --git a/yaml/CheckoutService-v69.yaml b/yaml/CheckoutService-v69.yaml new file mode 100644 index 0000000..78e6a45 --- /dev/null +++ b/yaml/CheckoutService-v69.yaml @@ -0,0 +1,15385 @@ +openapi: 3.1.0 +servers: +- url: https://checkout-test.adyen.com/v69 +info: + version: '69' + x-publicVersion: true + title: Adyen Checkout API + description: 'Adyen Checkout API provides a simple and flexible way to initiate + and authorise online payments. You can use the same integration for payments made + with cards (including 3D Secure), mobile wallets, and local payment methods (for + example, iDEAL and Sofort). + + + This API reference provides information on available endpoints and how to interact + with them. To learn more about the API, visit [Checkout documentation](https://docs.adyen.com/online-payments). + + + ## Authentication + + Each request to the Checkout API must be signed with an API key. For this, obtain + an API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). + Then set this key to the `X-API-Key` header value, for example: + + + ``` + + curl + + -H "Content-Type: application/json" \ + + -H "X-API-Key: Your_Checkout_API_key" \ + + ... + + ``` + + Note that when going live, you need to generate a new API Key to access the [live + endpoints](https://docs.adyen.com/development-resources/live-endpoints). + + + ## Versioning + + Checkout API supports [versioning](https://docs.adyen.com/development-resources/versioning) + using a version suffix in the endpoint URL. This suffix has the following format: + "vXX", where XX is the version number. + + + For example: + + ``` + + https://checkout-test.adyen.com/v69/payments + + ``` + + + ## Release notes + + Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=69) + to find out what changed in this version!' + x-timestamp: '2022-05-24T15:28:44Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- Payments +- Payment links +- Modifications +- Orders +- Classic Checkout SDK +- Utility +tags: +- name: Modifications +- name: Orders +- name: Classic Checkout SDK +- name: Utility +- name: Payments +- name: Payment links +paths: + /cancels: + post: + tags: + - Modifications + summary: Cancel an authorised payment + description: 'Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), + and returns a unique reference for this request. You get the outcome of the + request asynchronously, in a [**TECHNICAL_CANCEL** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). + + + If you want to cancel a payment using the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), + use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) + endpoint instead. + + + If you want to cancel a payment but are not sure whether it has been captured, + use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) + endpoint instead. + + + For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).' + operationId: post-cancels + x-groupName: Modifications + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateStandalonePaymentCancelRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/StandalonePaymentCancelResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/StandalonePaymentCancelResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /cardDetails: + post: + tags: + - Payments + summary: Get the list of brands on the card + description: 'Send a request with at least the first 6 digits of the card number + to get a response with an array of brands on the card. If you include [your + supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) + in the request, the response also tells you if you support each [brand that + was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). + + + If you have an API-only integration and collect card data, use this endpoint + to find out if the shopper''s card is co-branded. For co-branded cards, you + must let the shopper choose the brand to pay with if you support both brands. + + + ' + operationId: post-cardDetails + x-groupName: Payments + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands' + schema: + $ref: '#/components/schemas/CardDetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-cardDetails-basic-200' + supported-brands: + $ref: '#/components/examples/post-cardDetails-supported-brands-200' + schema: + $ref: '#/components/schemas/CardDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + /donations: + post: + tags: + - Payments + summary: Start a transaction for donations + description: 'Takes in the donation token generated by the `/payments` request + and uses it to make the donation for the donation account specified in the + request. + + + For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' + operationId: post-donations + x-groupName: Payments + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations' + donations-with-token: + $ref: '#/components/examples/post-donations-donations-with-token' + schema: + $ref: '#/components/schemas/PaymentDonationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + donations: + $ref: '#/components/examples/post-donations-donations-200' + schema: + $ref: '#/components/schemas/DonationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /orders: + post: + tags: + - Orders + summary: Create an order + description: Creates an order to be used for partial payments. Make a POST `/orders` + call before making a `/payments` call when processing payments with different + payment methods. + operationId: post-orders + x-groupName: Orders + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-orders-basic' + schema: + $ref: '#/components/schemas/CheckoutCreateOrderRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-orders-basic-200' + schema: + $ref: '#/components/schemas/CheckoutCreateOrderResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /orders/cancel: + post: + tags: + - Orders + summary: Cancel an order + description: Cancels an order. Cancellation of an order results in an automatic + rollback of all payments made in the order, either by canceling or refunding + the payment, depending on the type of payment method. + operationId: post-orders-cancel + x-groupName: Orders + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-orders-cancel-basic' + schema: + $ref: '#/components/schemas/CheckoutCancelOrderRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-orders-cancel-basic-200' + schema: + $ref: '#/components/schemas/CheckoutCancelOrderResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /originKeys: + post: + tags: + - Utility + summary: Create originKey values for domains + description: "This operation takes the origin domains and returns a JSON object\ + \ containing the corresponding origin keys for the domains. \n> If you're\ + \ still using origin key for your Web Drop-in or Components integration, we\ + \ recommend [switching to client key](https://docs.adyen.com/development-resources/client-side-authentication/migrate-from-origin-key-to-client-key).\ + \ This allows you to use a single key for all origins, add or remove origins\ + \ without generating a new key, and detect the card type from the number entered\ + \ in your payment form. " + deprecated: true + x-deprecatedInVersion: '67' + operationId: post-originKeys + x-groupName: Utility + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-originKeys-basic' + schema: + $ref: '#/components/schemas/CheckoutUtilityRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-originKeys-basic-200' + schema: + $ref: '#/components/schemas/CheckoutUtilityResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /paymentLinks: + post: + tags: + - Payment links + summary: Create a payment link + description: 'Creates a payment link to our hosted payment form where shoppers + can pay. The list of payment methods presented to the shopper depends on the + `currency` and `country` parameters sent in the request. + + + For more information, refer to [Pay by Link documentation](https://docs.adyen.com/online-payments/pay-by-link#create-payment-links-through-api).' + operationId: post-paymentLinks + x-groupName: Payment links + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-paymentLinks-basic' + schema: + $ref: '#/components/schemas/CreatePaymentLinkRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-paymentLinks-basic-200' + schema: + $ref: '#/components/schemas/PaymentLinkResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentLinkResponse' + description: Created - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /paymentLinks/{linkId}: + get: + tags: + - Payment links + summary: Get a payment link + description: Retrieves the payment link details using the payment link `id`. + operationId: get-paymentLinks-linkId + x-groupName: Payment links + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the payment link. + name: linkId + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' + schema: + $ref: '#/components/schemas/PaymentLinkResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Payment links + summary: Update the status of a payment link + description: Updates the status of a payment link. Use this endpoint to [force + the expiry of a payment link](https://docs.adyen.com/online-payments/pay-by-link#update-payment-link-status). + operationId: patch-paymentLinks-linkId + x-groupName: Payment links + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/patch-paymentLinks-linkId-basic' + schema: + $ref: '#/components/schemas/UpdatePaymentLinkRequest' + parameters: + - description: Unique identifier of the payment link. + name: linkId + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' + schema: + $ref: '#/components/schemas/PaymentLinkResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /paymentMethods: + post: + tags: + - Payments + summary: Get a list of available payment methods + description: 'Queries the available payment methods for a transaction based + on the transaction context (like amount, country, and currency). Besides giving + back a list of the available payment methods, the response also returns which + input details you need to collect from the shopper (to be submitted to `/payments`). + + + Although we highly recommend using this endpoint to ensure you are always + offering the most up-to-date list of payment methods, its usage is optional. + You can, for example, also cache the `/paymentMethods` response and update + it once a week.' + operationId: post-paymentMethods + x-groupName: Payments + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-paymentMethods-basic' + filtered: + $ref: '#/components/examples/post-paymentMethods-filtered' + include-oneclick: + $ref: '#/components/examples/post-paymentMethods-include-oneclick' + schema: + $ref: '#/components/schemas/PaymentMethodsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-paymentMethods-basic-200' + filtered: + $ref: '#/components/examples/post-paymentMethods-filtered-200' + include-oneclick: + $ref: '#/components/examples/post-paymentMethods-include-oneclick-200' + schema: + $ref: '#/components/schemas/PaymentMethodsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /paymentMethods/balance: + post: + tags: + - Orders + summary: Get the balance of a gift card + description: Retrieves the balance remaining on a shopper's gift card. To check + a gift card's balance, make a POST `/paymentMethods/balance` call and include + the gift card's details inside a `paymentMethod` object. + operationId: post-paymentMethods-balance + x-groupName: Orders + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-paymentMethods-balance-basic' + plastix: + $ref: '#/components/examples/post-paymentMethods-balance-plastix' + schema: + $ref: '#/components/schemas/CheckoutBalanceCheckRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + plastix: + $ref: '#/components/examples/post-paymentMethods-balance-plastix-200' + schema: + $ref: '#/components/schemas/CheckoutBalanceCheckResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /paymentSession: + post: + tags: + - Classic Checkout SDK + summary: Create a payment session + description: 'Provides the data object that can be used to start the Checkout + SDK. To set up the payment, pass its amount, currency, and other required + parameters. We use this to optimise the payment flow and perform better risk + assessment of the transaction. + + + For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).' + operationId: post-paymentSession + x-groupName: Classic Checkout SDK + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + android: + $ref: '#/components/examples/post-paymentSession-android' + enableOneClick: + $ref: '#/components/examples/post-paymentSession-enableOneClick' + ios: + $ref: '#/components/examples/post-paymentSession-ios' + split: + $ref: '#/components/examples/post-paymentSession-split' + web: + $ref: '#/components/examples/post-paymentSession-web' + schema: + $ref: '#/components/schemas/PaymentSetupRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + enableOneClick: + $ref: '#/components/examples/post-paymentSession-enableOneClick-200' + web: + $ref: '#/components/examples/post-paymentSession-web-200' + schema: + $ref: '#/components/schemas/PaymentSetupResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments: + post: + tags: + - Payments + summary: Start a transaction + description: "Sends payment parameters (like amount, country, and currency)\ + \ together with other required input details collected from the shopper. To\ + \ know more about required parameters for specific payment methods, refer\ + \ to our [payment method guides](https://docs.adyen.com/payment-methods).\ + \ \nThe response depends on the [payment flow](https://docs.adyen.com/payment-methods#payment-flow):\n\ + * For a direct flow, the response includes a `pspReference` and a `resultCode`\ + \ with the payment result, for example **Authorised** or **Refused**. \n*\ + \ For a redirect or additional action, the response contains an `action` object. " + operationId: post-payments + x-groupName: Payments + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + applepay: + $ref: '#/components/examples/post-payments-applepay' + card-3d-secure-2-web: + $ref: '#/components/examples/post-payments-card-3d-secure-2-web' + card-3d-secure-direct: + $ref: '#/components/examples/post-payments-card-3d-secure-direct' + card-3d-secure-securedfields: + $ref: '#/components/examples/post-payments-card-3d-secure-securedfields' + card-direct: + $ref: '#/components/examples/post-payments-card-direct' + card-securedfields: + $ref: '#/components/examples/post-payments-card-securedfields' + enableOneClick-SF: + $ref: '#/components/examples/post-payments-enableOneClick-SF' + enableOneClick-raw: + $ref: '#/components/examples/post-payments-enableOneClick-raw' + giropay: + $ref: '#/components/examples/post-payments-giropay' + googlepay: + $ref: '#/components/examples/post-payments-googlepay' + ideal: + $ref: '#/components/examples/post-payments-ideal' + klarna: + $ref: '#/components/examples/post-payments-klarna' + oneclick-direct: + $ref: '#/components/examples/post-payments-oneclick-direct' + oneclick-securedfields: + $ref: '#/components/examples/post-payments-oneclick-securedfields' + recurring: + $ref: '#/components/examples/post-payments-recurring' + sofort: + $ref: '#/components/examples/post-payments-sofort' + split: + $ref: '#/components/examples/post-payments-split' + subscription-first-transaction: + $ref: '#/components/examples/post-payments-subscription-first-transaction' + schema: + $ref: '#/components/schemas/PaymentRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + examples: + card-3d-secure-2-web: + $ref: '#/components/examples/post-payments-card-3d-secure-2-web-200' + card-3d-secure-direct: + $ref: '#/components/examples/post-payments-card-3d-secure-direct-200' + card-3d-secure-securedfields: + $ref: '#/components/examples/post-payments-card-3d-secure-securedfields-200' + card-direct: + $ref: '#/components/examples/post-payments-card-direct-200' + card-securedfields: + $ref: '#/components/examples/post-payments-card-securedfields-200' + enableOneClick-SF: + $ref: '#/components/examples/post-payments-enableOneClick-SF-200' + enableOneClick-raw: + $ref: '#/components/examples/post-payments-enableOneClick-raw-200' + giropay: + $ref: '#/components/examples/post-payments-giropay-200' + ideal: + $ref: '#/components/examples/post-payments-ideal-200' + sofort: + $ref: '#/components/examples/post-payments-sofort-200' + subscription-first-transaction: + $ref: '#/components/examples/post-payments-subscription-first-transaction-200' + schema: + $ref: '#/components/schemas/PaymentResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/details: + post: + tags: + - Payments + summary: Submit details for a payment + description: 'Submits details for a payment created using `/payments`. This + step is only needed when no final state has been reached on the `/payments` + request, for example when the shopper was redirected to another page to complete + the payment. + + + ' + operationId: post-payments-details + x-groupName: Payments + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + 3d-secure-2-native: + $ref: '#/components/examples/post-payments-details-3d-secure-2-native' + redirect: + $ref: '#/components/examples/post-payments-details-redirect' + schema: + $ref: '#/components/schemas/DetailsRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentDetailsResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/result: + post: + tags: + - Classic Checkout SDK + summary: Verify a payment result + description: 'Verifies the payment result using the payload returned from the + Checkout SDK. + + + For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).' + operationId: post-payments-result + x-groupName: Classic Checkout SDK + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + basic: + $ref: '#/components/examples/post-payments-result-basic' + schema: + $ref: '#/components/schemas/PaymentVerificationRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentVerificationResponse' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/{paymentPspReference}/amountUpdates: + post: + tags: + - Modifications + summary: Update an authorised amount + description: 'Increases or decreases the authorised payment amount and returns + a unique reference for this request. You get the outcome of the request asynchronously, + in an [**AUTHORISATION_ADJUSTMENT** webhook](https://docs.adyen.com/development-resources/webhooks/understand-notifications#event-codes). + + + You can only update authorised amounts that have not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures). + + + The amount you specify in the request is the updated amount, which is larger + or smaller than the initial authorised amount. + + + For more information, refer to [Authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#use-cases).' + operationId: post-payments-paymentPspReference-amountUpdates + x-groupName: Modifications + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePaymentAmountUpdateRequest' + parameters: + - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment. + name: paymentPspReference + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentAmountUpdateResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentAmountUpdateResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/{paymentPspReference}/cancels: + post: + tags: + - Modifications + summary: Cancel an authorised payment + description: 'Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/paymentPspReference/captures), + and returns a unique reference for this request. You get the outcome of the + request asynchronously, in a [**CANCELLATION** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). + + + If you want to cancel a payment but don''t have the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), + use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cancels) + endpoint instead. + + + If you want to cancel a payment but are not sure whether it has been captured, + use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) + endpoint instead. + + + For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).' + operationId: post-payments-paymentPspReference-cancels + x-groupName: Modifications + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePaymentCancelRequest' + parameters: + - description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment that you want to cancel. ' + name: paymentPspReference + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentCancelResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentCancelResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/{paymentPspReference}/captures: + post: + tags: + - Modifications + summary: Capture an authorised payment + description: " Captures an authorised payment and returns a unique reference\ + \ for this request. You get the outcome of the request asynchronously, in\ + \ a [**CAPTURE** webhook](https://docs.adyen.com/online-payments/capture#capture-notification).\n\ + \nYou can capture either the full authorised amount or a part of the authorised\ + \ amount. By default, any unclaimed amount after a partial capture gets cancelled.\ + \ This does not apply if you enabled multiple partial captures on your account\ + \ and the payment method supports multiple partial captures. \n\n[Automatic\ + \ capture](https://docs.adyen.com/online-payments/capture#automatic-capture)\ + \ is the default setting for most payment methods. In these cases, you don't\ + \ need to make capture requests. However, making capture requests for payments\ + \ that are captured automatically does not result in double charges.\n\nFor\ + \ more information, refer to [Capture](https://docs.adyen.com/online-payments/capture)." + operationId: post-payments-paymentPspReference-captures + x-groupName: Modifications + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePaymentCaptureRequest' + parameters: + - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment that you want to capture. + name: paymentPspReference + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentCaptureResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentCaptureResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/{paymentPspReference}/refunds: + post: + tags: + - Modifications + summary: Refund a captured payment + description: "Refunds a payment that has been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures),\ + \ and returns a unique reference for this request. You get the outcome of\ + \ the request asynchronously, in a [**REFUND** webhook](https://docs.adyen.com/online-payments/refund#refund-webhook).\n\ + \nYou can refund either the full captured amount or a part of the captured\ + \ amount. You can also perform multiple partial refunds, as long as their\ + \ sum doesn't exceed the captured amount.\n\n> Some payment methods do not\ + \ support partial refunds. To learn if a payment method supports partial refunds,\ + \ refer to the payment method page such as [cards](https://docs.adyen.com/payment-methods/cards#supported-cards),\ + \ [iDEAL](https://docs.adyen.com/payment-methods/ideal), or [Klarna](https://docs.adyen.com/payment-methods/klarna).\ + \ \n\nIf you want to refund a payment but are not sure whether it has been\ + \ captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals)\ + \ endpoint instead.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/refund)." + operationId: post-payments-paymentPspReference-refunds + x-groupName: Modifications + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePaymentRefundRequest' + parameters: + - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment that you want to refund. + name: paymentPspReference + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRefundResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRefundResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /payments/{paymentPspReference}/reversals: + post: + tags: + - Modifications + summary: Refund or cancel a payment + description: '[Refunds](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/refunds) + a payment if it has already been captured, and [cancels](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) + a payment if it has not yet been captured. Returns a unique reference for + this request. You get the outcome of the request asynchronously, in a [**CANCEL_OR_REFUND** + webhook](https://docs.adyen.com/online-payments/reverse#cancel-or-refund-webhook). + + + The reversed amount is always the full payment amount. + + > Do not use this request for payments that involve multiple partial captures. + + + For more information, refer to [Reversal](https://docs.adyen.com/online-payments/reversal).' + operationId: post-payments-paymentPspReference-reversals + x-groupName: Modifications + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePaymentReversalRequest' + parameters: + - description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment that you want to reverse. ' + name: paymentPspReference + in: path + required: true + schema: + type: string + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentReversalResource' + description: OK - the request has succeeded. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentReversalResource' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '400': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-400' + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-401' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-403' + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-422' + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' + '500': + content: + application/json: + examples: + generic: + $ref: '#/components/examples/generic-500' + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /sessions: + post: + tags: + - Payments + summary: Create a payment session + description: 'Creates a payment session for [Web Drop-in](https://docs.adyen.com/online-payments/web-drop-in) + and [Web Components](https://docs.adyen.com/online-payments/web-components) + integrations. + + + The response contains encrypted payment session data. The front end then uses + the session data to make any required server-side calls for the payment flow. + + + You get the payment outcome asynchronously, in an [AUTHORISATION](https://docs.adyen.com/api-explorer/#/Webhooks/latest/post/AUTHORISATION) + webhook.' + x-addedInVersion: '68' + operationId: post-sessions + x-groupName: Payments + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + enableOneClick: + $ref: '#/components/examples/post-sessions-enableOneClick' + klarna: + $ref: '#/components/examples/post-sessions-klarna' + success: + $ref: '#/components/examples/post-sessions-success' + schema: + $ref: '#/components/schemas/CreateCheckoutSessionRequest' + parameters: + - $ref: '#/components/parameters/Idempotency-Key' + responses: + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCheckoutSessionResponse' + description: Created - the request has been fulfilled and has resulted in + one or more new resources being created. + headers: + Idempotency-Key: + $ref: '#/components/headers/Idempotency-Key' +components: + schemas: + AccountInfo: + properties: + accountAgeIndicator: + description: 'Indicator for the length of time since this shopper account + was created in the merchant''s environment. + + Allowed values: + + * notApplicable + + * thisTransaction + + * lessThan30Days + + * from30To60Days + + * moreThan60Days' + enum: + - notApplicable + - thisTransaction + - lessThan30Days + - from30To60Days + - moreThan60Days + type: string + accountChangeDate: + description: Date when the shopper's account was last changed. + format: date-time + type: string + accountChangeIndicator: + description: 'Indicator for the length of time since the shopper''s account + was last updated. + + Allowed values: + + * thisTransaction + + * lessThan30Days + + * from30To60Days + + * moreThan60Days' + enum: + - thisTransaction + - lessThan30Days + - from30To60Days + - moreThan60Days + type: string + accountCreationDate: + description: Date when the shopper's account was created. + format: date-time + type: string + accountType: + x-addedInVersion: '50' + description: 'Indicates the type of account. For example, for a multi-account + card product. + + Allowed values: + + * notApplicable + + * credit + + * debit' + enum: + - notApplicable + - credit + - debit + type: string + addCardAttemptsDay: + description: Number of attempts the shopper tried to add a card to their + account in the last day. + format: int32 + type: integer + deliveryAddressUsageDate: + description: Date the selected delivery address was first used. + format: date-time + type: string + deliveryAddressUsageIndicator: + description: 'Indicator for the length of time since this delivery address + was first used. + + Allowed values: + + * thisTransaction + + * lessThan30Days + + * from30To60Days + + * moreThan60Days' + enum: + - thisTransaction + - lessThan30Days + - from30To60Days + - moreThan60Days + type: string + homePhone: + deprecated: true + x-deprecatedInVersion: '68' + x-deprecatedMessage: Use `ThreeDS2RequestData.homePhone` instead. + description: Shopper's home phone number (including the country code). + type: string + mobilePhone: + deprecated: true + x-deprecatedInVersion: '68' + x-deprecatedMessage: Use `ThreeDS2RequestData.mobilePhone` instead. + description: Shopper's mobile phone number (including the country code). + type: string + passwordChangeDate: + description: Date when the shopper last changed their password. + format: date-time + type: string + passwordChangeIndicator: + description: 'Indicator when the shopper has changed their password. + + Allowed values: + + * notApplicable + + * thisTransaction + + * lessThan30Days + + * from30To60Days + + * moreThan60Days' + enum: + - notApplicable + - thisTransaction + - lessThan30Days + - from30To60Days + - moreThan60Days + type: string + pastTransactionsDay: + description: Number of all transactions (successful and abandoned) from + this shopper in the past 24 hours. + format: int32 + type: integer + pastTransactionsYear: + description: Number of all transactions (successful and abandoned) from + this shopper in the past year. + format: int32 + type: integer + paymentAccountAge: + description: Date this payment method was added to the shopper's account. + format: date-time + type: string + paymentAccountIndicator: + description: 'Indicator for the length of time since this payment method + was added to this shopper''s account. + + Allowed values: + + * notApplicable + + * thisTransaction + + * lessThan30Days + + * from30To60Days + + * moreThan60Days' + enum: + - notApplicable + - thisTransaction + - lessThan30Days + - from30To60Days + - moreThan60Days + type: string + purchasesLast6Months: + description: Number of successful purchases in the last six months. + format: int32 + type: integer + suspiciousActivity: + description: Whether suspicious activity was recorded on this account. + type: boolean + workPhone: + deprecated: true + x-deprecatedInVersion: '68' + x-deprecatedMessage: Use `ThreeDS2RequestData.workPhone` instead. + description: Shopper's work phone number (including the country code). + type: string + AcctInfo: + properties: + chAccAgeInd: + description: "Length of time that the cardholder has had the account with\ + \ the 3DS Requestor. \nAllowed values:\n* **01** \u2014 No account\n*\ + \ **02** \u2014 Created during this transaction\n* **03** \u2014 Less\ + \ than 30 days\n* **04** \u2014 30\u201360 days\n* **05** \u2014 More\ + \ than 60 days" + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + maxLength: 2 + minLength: 2 + type: string + chAccChange: + description: "Date that the cardholder\u2019s account with the 3DS Requestor\ + \ was last changed, including Billing or Shipping address, new payment\ + \ account, or new user(s) added. \nFormat: **YYYYMMDD**" + type: string + chAccChangeInd: + description: "Length of time since the cardholder\u2019s account information\ + \ with the 3DS Requestor was last changed, including Billing or Shipping\ + \ address, new payment account, or new user(s) added. \nAllowed values:\n\ + * **01** \u2014 Changed during this transaction\n* **02** \u2014 Less\ + \ than 30 days\n* **03** \u2014 30\u201360 days\n* **04** \u2014 More\ + \ than 60 days" + enum: + - '01' + - '02' + - '03' + - '04' + maxLength: 2 + minLength: 2 + type: string + chAccPwChange: + description: "Date that cardholder\u2019s account with the 3DS Requestor\ + \ had a password change or account reset. \nFormat: **YYYYMMDD**" + type: string + chAccPwChangeInd: + description: "Indicates the length of time since the cardholder\u2019s account\ + \ with the 3DS Requestor had a password change or account reset. \nAllowed\ + \ values:\n* **01** \u2014 No change\n* **02** \u2014 Changed during this\ + \ transaction\n* **03** \u2014 Less than 30 days\n* **04** \u2014 30\u2013\ + 60 days\n* **05** \u2014 More than 60 days" + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + maxLength: 2 + minLength: 2 + type: string + chAccString: + description: "Date that the cardholder opened the account with the 3DS Requestor.\ + \ \nFormat: **YYYYMMDD**" + type: string + nbPurchaseAccount: + description: 'Number of purchases with this cardholder account during the + previous six months. Max length: 4 characters.' + type: string + paymentAccAge: + description: "String that the payment account was enrolled in the cardholder\u2019\ + s account with the 3DS Requestor. \nFormat: **YYYYMMDD**" + type: string + paymentAccInd: + description: "Indicates the length of time that the payment account was\ + \ enrolled in the cardholder\u2019s account with the 3DS Requestor. \n\ + Allowed values:\n* **01** \u2014 No account (guest checkout)\n* **02**\ + \ \u2014 During this transaction\n* **03** \u2014 Less than 30 days\n\ + * **04** \u2014 30\u201360 days\n* **05** \u2014 More than 60 days" + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + maxLength: 2 + minLength: 2 + type: string + provisionAttemptsDay: + description: 'Number of Add Card attempts in the last 24 hours. Max length: + 3 characters.' + type: string + shipAddressUsage: + description: "String when the shipping address used for this transaction\ + \ was first used with the 3DS Requestor. \nFormat: **YYYYMMDD**" + type: string + shipAddressUsageInd: + description: "Indicates when the shipping address used for this transaction\ + \ was first used with the 3DS Requestor. \nAllowed values:\n* **01** \u2014\ + \ This transaction\n* **02** \u2014 Less than 30 days\n* **03** \u2014\ + \ 30\u201360 days\n* **04** \u2014 More than 60 days" + enum: + - '01' + - '02' + - '03' + - '04' + maxLength: 2 + minLength: 2 + type: string + shipNameIndicator: + description: "Indicates if the Cardholder Name on the account is identical\ + \ to the shipping Name used for this transaction. \nAllowed values:\n\ + * **01** \u2014 Account Name identical to shipping Name\n* **02** \u2014\ + \ Account Name different to shipping Name" + enum: + - '01' + - '02' + maxLength: 2 + minLength: 2 + type: string + suspiciousAccActivity: + description: "Indicates whether the 3DS Requestor has experienced suspicious\ + \ activity (including previous fraud) on the cardholder account. \nAllowed\ + \ values:\n* **01** \u2014 No suspicious activity has been observed\n\ + * **02** \u2014 Suspicious activity has been observed" + enum: + - '01' + - '02' + maxLength: 2 + minLength: 2 + type: string + txnActivityDay: + description: 'Number of transactions (successful and abandoned) for this + cardholder account with the 3DS Requestor across all payment accounts + in the previous 24 hours. Max length: 3 characters.' + maxLength: 3 + type: string + txnActivityYear: + description: 'Number of transactions (successful and abandoned) for this + cardholder account with the 3DS Requestor across all payment accounts + in the previous year. Max length: 3 characters.' + maxLength: 3 + type: string + AchDetails: + additionalProperties: false + properties: + bankAccountNumber: + description: The bank account number (without separators). + type: string + bankLocationId: + description: The bank routing number of the account. The field value is + `nil` in most cases. + type: string + encryptedBankAccountNumber: + description: Encrypted bank account number. The bank account number (without + separators). + type: string + encryptedBankLocationId: + description: Encrypted location id. The bank routing number of the account. + The field value is `nil` in most cases. + type: string + ownerName: + description: "The name of the bank account holder.\nIf you submit a name\ + \ with non-Latin characters, we automatically replace some of them with\ + \ corresponding Latin characters to meet the FATF recommendations. For\ + \ example:\n* \u03C712 is converted to ch12.\n* \xFCA is converted to\ + \ euA.\n* Peter M\xF8ller is converted to Peter Mller, because banks don't\ + \ accept '\xF8'.\nAfter replacement, the ownerName must have at least\ + \ three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them\ + \ must be a valid Latin character (A-Z, a-z). For example:\n* John17 -\ + \ allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n\ + > If provided details don't match the required format, the response returns\ + \ the error message: 203 'Invalid bank account holder name'." + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: ach + description: '**ach**' + enum: + - ach + type: string + required: + - bankAccountNumber + title: ACH Direct Debit + AdditionalData3DSecure: + properties: + allow3DS2: + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.threeDSRequestData.nativeThreeDS` + instead. + description: "Indicates if you are able to process 3D Secure 2 transactions\ + \ natively on your payment page. Send this parameter when you are using\ + \ `/payments` endpoint with any of our [native 3D Secure 2 solutions](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).\n\ + \n > This parameter only indicates readiness to support native 3D Secure\ + \ 2 authentication. To specify if you _want_ to perform 3D Secure, use\ + \ [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) or send the\ + \ `executeThreeD` parameter.\n\nPossible values:\n* **true** - Ready to\ + \ support native 3D Secure 2 authentication. Setting this to true does\ + \ not mean always applying 3D Secure 2. Adyen still selects the version\ + \ of 3D Secure based on configuration to optimize authorisation rates\ + \ and improve the shopper's experience.\n* **false** \u2013 Not ready\ + \ to support native 3D Secure 2 authentication. Adyen will not offer 3D\ + \ Secure 2 to your shopper regardless of your configuration.\n" + type: string + executeThreeD: + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.attemptAuthentication` instead + description: "Indicates if you want to perform 3D Secure authentication\ + \ on a transaction.\n\n > Alternatively, you can use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure)\ + \ to configure rules for applying 3D Secure.\n\nPossible values:\n* **true**\ + \ \u2013 Perform 3D Secure authentication.\n* **false** \u2013 Don't perform\ + \ 3D Secure authentication. Note that this setting results in refusals\ + \ if the issuer mandates 3D Secure because of the PSD2 directive or other,\ + \ national regulations. \n" + type: string + mpiImplementationType: + description: In case of Secure+, this field must be set to **CUPSecurePlus**. + type: string + scaExemption: + description: "Indicates the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\ + \ that you want to request for the transaction.\n\n Possible values:\n\ + * **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n*\ + \ **transactionRiskAnalysis** " + type: string + threeDSVersion: + description: "Indicates your preference for the 3D Secure version. \n> If\ + \ you use this parameter, you override the checks from Adyen's Authentication\ + \ Engine. We recommend to use this field only if you have an extensive\ + \ knowledge of 3D Secure.\n\nPossible values:\n* **1.0.2**: Apply 3D Secure\ + \ version 1.0.2. \n* **2.1.0**: Apply 3D Secure version 2.1.0. \n* **2.2.0**:\ + \ Apply 3D Secure version 2.2.0. If the issuer does not support version\ + \ 2.2.0, we will fall back to 2.1.0.\n\nThe following rules apply:\n*\ + \ If you prefer 2.1.0 or 2.2.0 but we receive a negative `transStatus`\ + \ in the `ARes`, we will apply the fallback policy configured in your\ + \ account. For example, if the configuration is to fall back to 3D Secure\ + \ 1, we will apply version 1.0.2.\n* If you prefer 2.1.0 or 2.2.0 but\ + \ the BIN is not enrolled, you will receive an error.\n\n" + type: string + AdditionalDataAirline: + properties: + airline.agency_invoice_number: + description: 'Reference number for the invoice, issued by the agency. + + * minLength: 1 + + * maxLength: 6' + type: string + airline.agency_plan_name: + description: '2-letter agency plan identifier; alphabetical. + + * minLength: 2 + + * maxLength: 2' + type: string + airline.airline_code: + description: '[IATA](https://www.iata.org/services/pages/codes.aspx) 3-digit + accounting code (PAX); numeric. It identifies the carrier. + + * Format: IATA 3-digit accounting code (PAX) + + * Example: KLM = 074 + + * minLength: 3 + + * maxLength: 3' + type: string + airline.airline_designator_code: + description: '[IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter + accounting code (PAX); alphabetical. It identifies the carrier. + + * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter + airline code + + * Example: KLM = KL + + * minLength: 2 + + * maxLength: 2' + type: string + airline.boarding_fee: + description: 'Chargeable amount for boarding the plane. + + The transaction amount needs to be represented in minor units according + to the [following table](https://docs.adyen.com/development-resources/currency-codes). + + * minLength: 1 + + * maxLength: 18' + type: string + airline.computerized_reservation_system: + description: 'The [CRS](https://en.wikipedia.org/wiki/Computer_reservation_system) + used to make the reservation and purchase the ticket. + + * Format: alphanumeric. + + * minLength: 4 + + * maxLength: 4' + type: string + airline.customer_reference_number: + description: 'Reference number; alphanumeric. + + * minLength: 0 + + * maxLength: 20' + type: string + airline.document_type: + description: 'Optional 2-digit code; alphanumeric. It identifies the type + of product of the transaction. The description of the code may appear + on credit card statements. + + * Format: 2-digit code + + * Example: Passenger ticket = 01 + + * minLength: 2 + + * maxLength: 2' + type: string + airline.flight_date: + description: 'Flight departure date. Local time `(HH:mm)` is optional. + + * Date format: `yyyy-MM-dd` + + * Date and time format: `yyyy-MM-dd HH:mm` + + * minLength: 10 + + * maxLength: 16' + type: string + airline.leg.carrier_code: + description: '[IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter + accounting code (PAX); alphabetical. It identifies the carrier. + + This field is required/mandatory if the airline data includes leg details. + + * Format: IATA 2-letter airline code + + * Example: KLM = KL + + * minLength: 2 + + * maxLength: 2' + type: string + airline.leg.class_of_travel: + description: '1-letter travel class identifier; alphabetical. There is no + standard; however, the following codes are used rather consistently: + + * F: first class + + * J: business class + + * Y: economy class + + * W: premium economy + + + Limitations: + + * minLength: 1 + + * maxLength: 1' + type: string + airline.leg.date_of_travel: + description: "\t\nDate and time of travel. [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-compliant.\n\ + * Format: `yyyy-MM-dd HH:mm`\n* minLength: 16\n* maxLength: 16" + type: string + airline.leg.depart_airport: + description: 'Alphabetical identifier of the departure airport. + + This field is required if the airline data includes leg details. + + * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter + airport code. + + * Example: Amsterdam = AMS + + * minLength: 3 + + * maxLength: 3' + type: string + airline.leg.depart_tax: + description: '[Departure tax](https://en.wikipedia.org/wiki/Departure_tax). + Amount charged by a country to an individual upon their leaving. The transaction + amount needs to be represented in minor units according to the [following + table](https://docs.adyen.com/development-resources/currency-codes). + + * minLength: 1 + + * maxLength: 12' + type: string + airline.leg.destination_code: + description: 'Alphabetical identifier of the destination/arrival airport. + + This field is required/mandatory if the airline data includes leg details. + + * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter + airport code. + + * Example: Amsterdam = AMS + + * minLength: 3 + + * maxLength: 3' + type: string + airline.leg.fare_base_code: + description: '[Fare basis code](https://en.wikipedia.org/wiki/Fare_basis_code); + alphanumeric. + + * minLength: 1 + + * maxLength: 7' + type: string + airline.leg.flight_number: + description: 'The flight identifier. + + * minLength: 1 + + * maxLength: 5' + type: string + airline.leg.stop_over_code: + description: '1-letter code that indicates whether the passenger is entitled + to make a stopover. Only two types of characters are allowed: + + * O: Stopover allowed + + * X: Stopover not allowed + + + Limitations: + + * minLength: 1 + + * maxLength: 1' + type: string + airline.passenger.date_of_birth: + description: 'Date of birth of the passenger. + + + Date format: `yyyy-MM-dd` + + * minLength: 10 + + * maxLength: 10' + type: string + airline.passenger.first_name: + description: 'Passenger first name/given name. + + > This field is required/mandatory if the airline data includes passenger + details or leg details.' + type: string + airline.passenger.last_name: + description: 'Passenger last name/family name. + + > This field is required/mandatory if the airline data includes passenger + details or leg details.' + type: string + airline.passenger.telephone_number: + description: 'Telephone number of the passenger, including country code. + This is an alphanumeric field that can include the ''+'' and ''-'' signs. + + * minLength: 3 + + * maxLength: 30' + type: string + airline.passenger.traveller_type: + description: 'Passenger type code (PTC). IATA PTC values are 3-letter alphabetical. + Example: ADT, SRC, CNN, INS. + + + However, several carriers use non-standard codes that can be up to 5 alphanumeric + characters. + + * minLength: 3 + + * maxLength: 6' + type: string + airline.passenger_name: + description: 'Passenger name, initials, and a title. + + * Format: last name + first name or initials + title. + + * Example: *FLYER / MARY MS*. + + * minLength: 1 + + * maxLength: 49' + type: string + airline.ticket_issue_address: + description: 'Address of the place/agency that issued the ticket. + + * minLength: 0 + + * maxLength: 16' + type: string + airline.ticket_number: + description: 'The ticket''s unique identifier. + + * minLength: 1 + + * maxLength: 150' + type: string + airline.travel_agency_code: + description: 'IATA number, also ARC number or ARC/IATA number. Unique identifier + number for travel agencies. + + * minLength: 1 + + * maxLength: 8' + type: string + airline.travel_agency_name: + description: 'The name of the travel agency. + + * minLength: 1 + + * maxLength: 25' + type: string + required: + - airline.passenger_name + AdditionalDataCarRental: + properties: + carRental.checkOutDate: + description: 'Pick-up date. + + * Date format: `yyyyMMdd`' + type: string + carRental.customerServiceTollFreeNumber: + description: 'The customer service phone number of the car rental company. + + * Format: Alphanumeric + + * maxLength: 17' + type: string + carRental.daysRented: + description: 'Number of days for which the car is being rented. + + * Format: Numeric + + * maxLength: 19' + type: string + carRental.fuelCharges: + description: 'Any fuel charges associated with the rental. + + * Format: Numeric + + * maxLength: 12' + type: string + carRental.insuranceCharges: + description: 'Any insurance charges associated with the rental. + + * Format: Numeric + + * maxLength: 12' + type: string + carRental.locationCity: + description: 'The city from which the car is rented. + + * Format: Alphanumeric + + * maxLength: 18' + type: string + carRental.locationCountry: + description: 'The country from which the car is rented. + + * Format: Alphanumeric + + * maxLength: 2' + type: string + carRental.locationStateProvince: + description: 'The state or province from where the car is rented. + + * Format: Alphanumeric + + * maxLength: 3' + type: string + carRental.noShowIndicator: + description: 'Indicates if the customer was a "no-show" (neither keeps nor + cancels their booking). + + * Y - Customer was a no show. + + * N - Not applicable.' + type: string + carRental.oneWayDropOffCharges: + description: Charge associated with not returning a vehicle to the original + rental location. + type: string + carRental.rate: + description: 'Daily rental rate. + + * Format: Alphanumeric + + * maxLength: 12' + type: string + carRental.rateIndicator: + description: 'Specifies whether the given rate is applied daily or weekly. + + * D - Daily rate. + + * W - Weekly rate.' + type: string + carRental.rentalAgreementNumber: + description: 'The rental agreement number associated with this car rental. + + * Format: Alphanumeric + + * maxLength: 9' + type: string + carRental.rentalClassId: + description: 'Daily rental rate. + + * Format: Alphanumeric + + * maxLength: 12' + type: string + carRental.renterName: + description: 'The name of the person renting the car. + + * Format: Alphanumeric + + * maxLength: 26' + type: string + carRental.returnCity: + description: 'The city where the car must be returned. + + * Format: Alphanumeric + + * maxLength: 18' + type: string + carRental.returnCountry: + description: 'The country where the car must be returned. + + * Format: Alphanumeric + + * maxLength: 2' + type: string + carRental.returnDate: + description: 'The last date to return the car by. + + * Date format: `yyyyMMdd`' + type: string + carRental.returnLocationId: + description: 'Agency code, phone number, or address abbreviation + + * Format: Alphanumeric + + * maxLength: 10' + type: string + carRental.returnStateProvince: + description: 'The state or province where the car must be returned. + + * Format: Alphanumeric + + * maxLength: 3' + type: string + carRental.taxExemptIndicator: + description: 'Indicates whether the goods or services were tax-exempt, or + tax was not collected. + + + Values: + + * Y - Goods or services were tax exempt + + * N - Tax was not collected' + type: string + travelEntertainmentAuthData.duration: + description: 'Number of nights. This should be included in the auth message. + + * Format: Numeric + + * maxLength: 2' + type: string + travelEntertainmentAuthData.market: + description: 'Indicates what market-specific dataset will be submitted or + is being submitted. Value should be "A" for Car rental. This should be + included in the auth message. + + * Format: Alphanumeric + + * maxLength: 1' + type: string + AdditionalDataCommon: + properties: + RequestedTestErrorResponseCode: + description: "Triggers test scenarios that allow to replicate certain communication\ + \ errors.\n\nAllowed values:\n* **NO_CONNECTION_AVAILABLE** \u2013 There\ + \ wasn't a connection available to service the outgoing communication.\n\ + This is a transient, retriable error since no messaging could be initiated\ + \ to an issuing system (or third-party acquiring system). Therefore, the\ + \ header Transient-Error: true is returned in the response. A subsequent\ + \ request using the same idempotency key will be processed as if it was\ + \ the first request.\n* **IOEXCEPTION_RECEIVED** \u2013 Something went\ + \ wrong during transmission of the message or receiving the response.\n\ + This is a classified as non-transient because the message could have been\ + \ received by the issuing party and been acted upon. No transient error\ + \ header is returned. If using idempotency, the (error) response is stored\ + \ as the final result for the idempotency key. Subsequent messages with\ + \ the same idempotency key not be processed beyond returning the stored\ + \ response." + type: string + authorisationType: + description: "Flags a card payment request for either pre-authorisation\ + \ or final authorisation. For more information, refer to [Authorisation\ + \ types](https://docs.adyen.com/online-payments/adjust-authorisation#authorisation-types).\n\ + \nAllowed values:\n* **PreAuth** \u2013 flags the payment request to be\ + \ handled as a pre-authorisation.\n* **FinalAuth** \u2013 flags the payment\ + \ request to be handled as a final authorisation." + type: string + customRoutingFlag: + description: 'Allows you to determine or override the acquirer account that + should be used for the transaction. + + + If you need to process a payment with an acquirer different from a default + one, you can set up a corresponding configuration on the Adyen payments + platform. Then you can pass a custom routing flag in a payment request''s + additional data to target a specific acquirer. + + + To enable this functionality, contact [Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + industryUsage: + x-enum: + - description: An incremental charge is carried out because of a no-show + for a guaranteed reservation. + value: NoShow + - description: An incremental charge is carried out to process an additional + payment after the original services have been rendered and the respective + payment has been processed. + value: DelayedCharge + description: "In case of [asynchronous authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#adjust-authorisation),\ + \ this field denotes why the additional payment is made.\n\nPossible values:\n\ + \n * **NoShow**: An incremental charge is carried out because of a no-show\ + \ for a guaranteed reservation.\n\n * **DelayedCharge**: An incremental\ + \ charge is carried out to process an additional payment after the original\ + \ services have been rendered and the respective payment has been processed." + enum: + - NoShow + - DelayedCharge + type: string + networkTxReference: + description: 'Allows you to link the transaction to the original or previous + one in a subscription/card-on-file chain. This field is required for token-based + transactions where Adyen does not tokenize the card. + + + Transaction identifier from card schemes, for example, Mastercard Trace + ID or the Visa Transaction ID. + + + Submit the original transaction ID of the contract in your payment request + if you are not tokenizing card details with Adyen and are making a merchant-initiated + transaction (MIT) for subsequent charges. + + + Make sure you are sending `shopperInteraction` **ContAuth** and `recurringProcessingModel` + **Subscription** or **UnscheduledCardOnFile** to ensure that the transaction + is classified as MIT.' + type: string + overwriteBrand: + description: Boolean indicator that can be optionally used for performing + debit transactions on combo cards (for example, combo cards in Brazil). + This is not mandatory but we recommend that you set this to true if you + want to use the `selectedBrand` value to specify how to process the transaction. + type: string + subMerchantCity: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the city of + the actual merchant''s address. + + * Format: alpha-numeric. + + * Maximum length: 13 characters.' + type: string + subMerchantCountry: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the three-letter + country code of the actual merchant''s address. + + * Format: alpha-numeric. + + * Fixed length: 3 characters.' + type: string + subMerchantID: + description: 'This field contains an identifier of the actual merchant when + a transaction is submitted via a payment facilitator. The payment facilitator + must send in this unique ID. + + + A unique identifier per submerchant that is required if the transaction + is performed by a registered payment facilitator. + + * Format: alpha-numeric. + + * Fixed length: 15 characters.' + type: string + subMerchantName: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the name of + the actual merchant. + + * Format: alpha-numeric. + + * Maximum length: 22 characters.' + type: string + subMerchantPostalCode: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the postal code + of the actual merchant''s address. + + * Format: alpha-numeric. + + * Maximum length: 10 characters.' + type: string + subMerchantState: + description: 'This field is required if the transaction is performed by + a registered payment facilitator, and if applicable to the country. This + field must contain the state code of the actual merchant''s address. + + * Format: alpha-numeric. + + * Maximum length: 3 characters.' + type: string + subMerchantStreet: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the street of + the actual merchant''s address. + + * Format: alpha-numeric. + + * Maximum length: 60 characters.' + type: string + subMerchantTaxId: + description: 'This field is required if the transaction is performed by + a registered payment facilitator. This field must contain the tax ID of + the actual merchant. + + * Format: alpha-numeric. + + * Fixed length: 11 or 14 characters.' + type: string + AdditionalDataLevel23: + properties: + enhancedSchemeData.customerReference: + description: 'Customer code, if supplied by a customer. + + + Encoding: ASCII. + + + Max length: 25 characters. + + + > Required for Level 2 and Level 3 data.' + type: string + enhancedSchemeData.destinationCountryCode: + description: 'Destination country code. + + + Encoding: ASCII. + + + Max length: 3 characters.' + type: string + enhancedSchemeData.destinationPostalCode: + description: 'The postal code of a destination address. + + + Encoding: ASCII. + + + Max length: 10 characters. + + + > Required for American Express.' + type: string + enhancedSchemeData.destinationStateProvinceCode: + description: 'Destination state or province code. + + + Encoding: ASCII.Max length: 3 characters.' + type: string + enhancedSchemeData.dutyAmount: + description: 'Duty amount, in minor units. + + + For example, 2000 means USD 20.00. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.freightAmount: + description: 'Shipping amount, in minor units. + + + For example, 2000 means USD 20.00. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].commodityCode: + description: 'Item commodity code. + + + Encoding: ASCII. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].description: + description: 'Item description. + + + Encoding: ASCII. + + + Max length: 26 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].discountAmount: + description: 'Discount amount, in minor units. + + + For example, 2000 means USD 20.00. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].productCode: + description: 'Product code. + + + Encoding: ASCII. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].quantity: + description: 'Quantity, specified as an integer value. + + + Value must be greater than 0. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].totalAmount: + description: 'Total amount, in minor units. + + + For example, 2000 means USD 20.00. + + + Max length: 12 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].unitOfMeasure: + description: 'Item unit of measurement. + + + Encoding: ASCII. + + + Max length: 3 characters.' + type: string + enhancedSchemeData.itemDetailLine[itemNr].unitPrice: + description: 'Unit price, specified in [minor units](https://docs.adyen.com/development-resources/currency-codes). + + + Max length: 12 characters.' + type: string + enhancedSchemeData.orderDate: + description: 'Order date. + + * Format: `ddMMyy` + + + Encoding: ASCII. + + + Max length: 6 characters.' + type: string + enhancedSchemeData.shipFromPostalCode: + description: 'The postal code of a "ship-from" address. + + + Encoding: ASCII. + + + Max length: 10 characters.' + type: string + enhancedSchemeData.totalTaxAmount: + description: 'Total tax amount, in minor units. + + + For example, 2000 means USD 20.00. + + + Max length: 12 characters. + + + > Required for Level 2 and Level 3 data.' + type: string + AdditionalDataLodging: + properties: + lodging.checkInDate: + description: 'The arrival date. + + * Date format: `yyyyMMdd`' + type: string + lodging.checkOutDate: + description: 'The departure date. + + * Date format: `yyyyMMdd`' + type: string + lodging.customerServiceTollFreeNumber: + description: 'The toll free phone number for the hotel/lodgings. + + * Format: Alphanumeric + + * maxLength: 17' + type: string + lodging.fireSafetyActIndicator: + description: 'Identifies that the facility complies with the Hotel and Motel + Fire Safety Act of 1990. Values can be: ''Y'' or ''N''. + + * Format: Alphabetic + + * maxLength: 1' + type: string + lodging.folioCashAdvances: + description: 'The folio cash advances. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.folioNumber: + description: "Card acceptor\u2019s internal invoice or billing ID reference\ + \ number.\n* Format: Alphanumeric\n* maxLength: 25" + type: string + lodging.foodBeverageCharges: + description: 'Any charges for food and beverages associated with the booking. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.noShowIndicator: + description: 'Indicates if the customer was a "no-show" (neither keeps nor + cancels their booking). + + + Value should be Y or N. + + * Format: Numeric + + * maxLength: 1' + type: string + lodging.prepaidExpenses: + description: 'Prepaid expenses for the booking. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.propertyPhoneNumber: + description: 'Identifies specific lodging property location by its local + phone number. + + * Format: Alphanumeric + + * maxLength: 17' + type: string + lodging.room1.numberOfNights: + description: 'Total number of nights the room will be rented. + + * Format: Numeric + + * maxLength: 4' + type: string + lodging.room1.rate: + description: 'The rate of the room. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.room1.tax: + description: 'The total amount of tax to be paid. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.totalRoomTax: + description: 'Total room tax amount. + + * Format: Numeric + + * maxLength: 12' + type: string + lodging.totalTax: + description: 'Total tax amount. + + * Format: Numeric + + * maxLength: 12' + type: string + travelEntertainmentAuthData.duration: + description: 'Number of nights. This should be included in the auth message. + + * Format: Numeric + + * maxLength: 2' + type: string + travelEntertainmentAuthData.market: + description: 'Indicates what market-specific dataset will be submitted or + is being submitted. Value should be "H" for Hotel. This should be included + in the auth message. + + + * Format: Alphanumeric + + * maxLength: 1' + type: string + AdditionalDataOpenInvoice: + properties: + openinvoicedata.merchantData: + description: 'Holds different merchant data points like product, purchase, + customer, and so on. It takes data in a Base64 encoded string. + + + The `merchantData` parameter needs to be added to the `openinvoicedata` + signature at the end. + + + Since the field is optional, if it''s not included it does not impact + computing the merchant signature. + + + Applies only to Klarna. + + + You can contact Klarna for the format and structure of the string.' + type: string + openinvoicedata.numberOfLines: + description: 'The number of invoice lines included in `openinvoicedata`. + + + There needs to be at least one line, so `numberOfLines` needs to be at + least 1.' + type: string + openinvoicedataLine[itemNr].currencyCode: + description: The three-character ISO currency code. + type: string + openinvoicedataLine[itemNr].description: + description: A text description of the product the invoice line refers to. + type: string + openinvoicedataLine[itemNr].itemAmount: + description: 'The price for one item in the invoice line, represented in + minor units. + + + The due amount for the item, VAT excluded.' + type: string + openinvoicedataLine[itemNr].itemId: + description: A unique id for this item. Required for RatePay if the description + of each item is not unique. + type: string + openinvoicedataLine[itemNr].itemVatAmount: + description: The VAT due for one item in the invoice line, represented in + minor units. + type: string + openinvoicedataLine[itemNr].itemVatPercentage: + description: 'The VAT percentage for one item in the invoice line, represented + in minor units. + + + For example, 19% VAT is specified as 1900.' + type: string + openinvoicedataLine[itemNr].numberOfItems: + description: The number of units purchased of a specific product. + type: string + openinvoicedataLine[itemNr].returnShippingCompany: + description: Name of the shipping company handling the the return shipment. + type: string + openinvoicedataLine[itemNr].returnTrackingNumber: + description: The tracking number for the return of the shipment. + type: string + openinvoicedataLine[itemNr].returnTrackingUri: + description: URI where the customer can track the return of their shipment. + type: string + openinvoicedataLine[itemNr].shippingCompany: + description: Name of the shipping company handling the delivery. + type: string + openinvoicedataLine[itemNr].shippingMethod: + description: Shipping method. + type: string + openinvoicedataLine[itemNr].trackingNumber: + description: The tracking number for the shipment. + type: string + openinvoicedataLine[itemNr].trackingUri: + description: URI where the customer can track their shipment. + type: string + AdditionalDataOpi: + properties: + opi.includeTransToken: + description: 'Optional boolean indicator. Set to **true** if you want an + ecommerce transaction to return an `opi.transToken` as additional data + in the response. + + + You can store this Oracle Payment Interface token in your Oracle Opera + database. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).' + type: string + AdditionalDataRatepay: + properties: + ratepay.installmentAmount: + description: Amount the customer has to pay each month. + type: string + ratepay.interestRate: + description: Interest rate of this installment. + type: string + ratepay.lastInstallmentAmount: + description: Amount of the last installment. + type: string + ratepay.paymentFirstday: + description: Calendar day of the first payment. + type: string + ratepaydata.deliveryDate: + description: Date the merchant delivered the goods to the customer. + type: string + ratepaydata.dueDate: + description: Date by which the customer must settle the payment. + type: string + ratepaydata.invoiceDate: + description: Invoice date, defined by the merchant. If not included, the + invoice date is set to the delivery date. + type: string + ratepaydata.invoiceId: + description: Identification name or number for the invoice, defined by the + merchant. + type: string + AdditionalDataRetry: + properties: + retry.chainAttemptNumber: + description: 'The number of times the transaction (not order) has been retried + between different payment service providers. For instance, the `chainAttemptNumber` + set to 2 means that this transaction has been recently tried on another + provider before being sent to Adyen. + + + > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, + and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` + to facilitate linking payment attempts together.' + type: string + retry.orderAttemptNumber: + description: 'The index of the attempt to bill a particular order, which + is identified by the `merchantOrderReference` field. For example, if a + recurring transaction fails and is retried one day later, then the order + number for these attempts would be 1 and 2, respectively. + + + > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, + and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` + to facilitate linking payment attempts together.' + type: string + retry.skipRetry: + description: 'The Boolean value indicating whether Adyen should skip or + retry this transaction, if possible. + + + > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, + and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` + to facilitate linking payment attempts together.' + type: string + AdditionalDataRisk: + properties: + riskdata.[customFieldName]: + description: The data for your custom risk field. For more information, + refer to [Create custom risk fields](https://docs.adyen.com/risk-management/configure-custom-risk-rules#step-1-create-custom-risk-fields). + type: string + riskdata.basket.item[itemNr].amountPerItem: + description: The price of item in the basket, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes). + type: string + riskdata.basket.item[itemNr].brand: + description: Brand of the item. + type: string + riskdata.basket.item[itemNr].category: + description: Category of the item. + type: string + riskdata.basket.item[itemNr].color: + description: Color of the item. + type: string + riskdata.basket.item[itemNr].currency: + description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). + type: string + riskdata.basket.item[itemNr].itemID: + description: ID of the item. + type: string + riskdata.basket.item[itemNr].manufacturer: + description: Manufacturer of the item. + type: string + riskdata.basket.item[itemNr].productTitle: + description: A text description of the product the invoice line refers to. + type: string + riskdata.basket.item[itemNr].quantity: + description: Quantity of the item purchased. + type: string + riskdata.basket.item[itemNr].receiverEmail: + description: Email associated with the given product in the basket (usually + in electronic gift cards). + type: string + riskdata.basket.item[itemNr].size: + description: Size of the item. + type: string + riskdata.basket.item[itemNr].sku: + description: '[Stock keeping unit](https://en.wikipedia.org/wiki/Stock_keeping_unit).' + type: string + riskdata.basket.item[itemNr].upc: + description: '[Universal Product Code](https://en.wikipedia.org/wiki/Universal_Product_Code).' + type: string + riskdata.promotions.promotion[itemNr].promotionCode: + description: Code of the promotion. + type: string + riskdata.promotions.promotion[itemNr].promotionDiscountAmount: + description: The discount amount of the promotion, represented in [minor + units](https://docs.adyen.com/development-resources/currency-codes). + type: string + riskdata.promotions.promotion[itemNr].promotionDiscountCurrency: + description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). + type: string + riskdata.promotions.promotion[itemNr].promotionDiscountPercentage: + description: 'Promotion''s percentage discount. It is represented in percentage + value and there is no need to include the ''%'' sign. + + + e.g. for a promotion discount of 30%, the value of the field should be + 30.' + type: string + riskdata.promotions.promotion[itemNr].promotionName: + description: Name of the promotion. + type: string + riskdata.riskProfileReference: + description: Reference number of the risk profile that you want to apply + to the payment. If not provided or left blank, the merchant-level account's + default risk profile will be applied to the payment. For more information, + see [dynamically assign a risk profile to a payment](https://docs.adyen.com/risk-management/create-and-use-risk-profiles#dynamically-assign-a-risk-profile-to-a-payment). + type: string + riskdata.skipRisk: + description: If this parameter is provided with the value **true**, risk + checks for the payment request are skipped and the transaction will not + get a risk score. + type: string + AdditionalDataRiskStandalone: + properties: + PayPal.CountryCode: + description: Shopper's country of residence in the form of ISO standard + 3166 2-character country codes. + type: string + PayPal.EmailId: + description: Shopper's email. + type: string + PayPal.FirstName: + description: Shopper's first name. + type: string + PayPal.LastName: + description: Shopper's last name. + type: string + PayPal.PayerId: + description: 'Unique PayPal Customer Account identification number. Character + length and limitations: 13 single-byte alphanumeric characters.' + type: string + PayPal.Phone: + description: Shopper's phone number. + type: string + PayPal.ProtectionEligibility: + description: "Allowed values:\n* **Eligible** \u2014 Merchant is protected\ + \ by PayPal's Seller Protection Policy for Unauthorized Payments and Item\ + \ Not Received.\n\n* **PartiallyEligible** \u2014 Merchant is protected\ + \ by PayPal's Seller Protection Policy for Item Not Received.\n\n* **Ineligible**\ + \ \u2014 Merchant is not protected under the Seller Protection Policy." + type: string + PayPal.TransactionId: + description: Unique transaction ID of the payment. + type: string + avsResultRaw: + description: 'Raw AVS result received from the acquirer, where available. + Example: D' + type: string + bin: + description: The Bank Identification Number of a credit card, which is the + first six digits of a card number. Required for [tokenized card request](https://docs.adyen.com/risk-management/standalone-risk#tokenised-pan-request). + type: string + cvcResultRaw: + description: 'Raw CVC result received from the acquirer, where available. + Example: 1' + type: string + riskToken: + description: Unique identifier or token for the shopper's card details. + type: string + threeDAuthenticated: + description: 'A Boolean value indicating whether 3DS authentication was + completed on this payment. Example: true' + type: string + threeDOffered: + description: 'A Boolean value indicating whether 3DS was offered for this + payment. Example: true' + type: string + tokenDataType: + description: 'Required for PayPal payments only. The only supported value + is: **paypal**.' + type: string + AdditionalDataSubMerchant: + properties: + subMerchant.numberOfSubSellers: + description: Required for transactions performed by registered payment facilitators. + Indicates the number of sub-merchants contained in the request. For example, + **3**. + type: string + subMerchant.subSeller[subSellerNr].city: + description: 'Required for transactions performed by registered payment + facilitators. The city of the sub-merchant''s address. + + * Format: Alphanumeric + + * Maximum length: 13 characters' + type: string + subMerchant.subSeller[subSellerNr].country: + description: "Required for transactions performed by registered payment\ + \ facilitators. The three-letter country code of the sub-merchant's address.\ + \ For example, **BRA** for Brazil. \n* Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)\n\ + * Fixed length: 3 characters" + type: string + subMerchant.subSeller[subSellerNr].id: + description: "Required for transactions performed by registered payment\ + \ facilitators. A unique identifier that you create for the sub-merchant,\ + \ used by schemes to identify the sub-merchant. \n* Format: Alphanumeric\n\ + * Maximum length: 15 characters" + type: string + subMerchant.subSeller[subSellerNr].mcc: + description: "Required for transactions performed by registered payment\ + \ facilitators. The sub-merchant's 4-digit Merchant Category Code (MCC).\ + \ \n* Format: Numeric\n* Fixed length: 4 digits" + type: string + subMerchant.subSeller[subSellerNr].name: + description: 'Required for transactions performed by registered payment + facilitators. The name of the sub-merchant. Based on scheme specifications, + this value will overwrite the shopper statement that will appear in the + card statement. + + * Format: Alphanumeric + + * Maximum length: 22 characters' + type: string + subMerchant.subSeller[subSellerNr].postalCode: + description: 'Required for transactions performed by registered payment + facilitators. The postal code of the sub-merchant''s address, without + dashes. + + * Format: Numeric + + * Fixed length: 8 digits' + type: string + subMerchant.subSeller[subSellerNr].state: + description: 'Required for transactions performed by registered payment + facilitators. The state code of the sub-merchant''s address, if applicable + to the country. + + * Format: Alphanumeric + + * Maximum length: 2 characters' + type: string + subMerchant.subSeller[subSellerNr].street: + description: 'Required for transactions performed by registered payment + facilitators. The street name and house number of the sub-merchant''s + address. + + * Format: Alphanumeric + + * Maximum length: 60 characters' + type: string + subMerchant.subSeller[subSellerNr].taxId: + description: 'Required for transactions performed by registered payment + facilitators. The tax ID of the sub-merchant. + + * Format: Numeric + + * Fixed length: 11 digits for the CPF or 14 digits for the CNPJ' + type: string + AdditionalDataTemporaryServices: + properties: + enhancedSchemeData.customerReference: + description: 'Customer code, if supplied by a customer. + + * Encoding: ASCII + + * maxLength: 25' + type: string + enhancedSchemeData.employeeName: + description: 'Name or ID associated with the individual working in a temporary + capacity. + + * maxLength: 40' + type: string + enhancedSchemeData.jobDescription: + description: 'Description of the job or task of the individual working in + a temporary capacity. + + * maxLength: 40' + type: string + enhancedSchemeData.regularHoursRate: + description: 'Amount paid per regular hours worked, minor units. + + * maxLength: 7' + type: string + enhancedSchemeData.regularHoursWorked: + description: 'Amount of time worked during a normal operation for the task + or job. + + * maxLength: 7' + type: string + enhancedSchemeData.requestName: + description: 'Name of the individual requesting temporary services. + + * maxLength: 40' + type: string + enhancedSchemeData.tempStartDate: + description: 'Date for the beginning of the pay period. + + * Format: ddMMyy + + * maxLength: 6' + type: string + enhancedSchemeData.tempWeekEnding: + description: 'Date of the end of the billing cycle. + + * Format: ddMMyy + + * maxLength: 6' + type: string + enhancedSchemeData.totalTaxAmount: + description: 'Total tax amount, in minor units. For example, 2000 means + USD 20.00 + + * maxLength: 12' + type: string + AdditionalDataWallets: + properties: + androidpay.token: + description: The Android Pay token retrieved from the SDK. + type: string + masterpass.transactionId: + description: The Mastercard Masterpass Transaction ID retrieved from the + SDK. + type: string + payment.token: + description: The Apple Pay token retrieved from the SDK. + type: string + paywithgoogle.token: + description: The Google Pay token retrieved from the SDK. + type: string + samsungpay.token: + description: The Samsung Pay token retrieved from the SDK. + type: string + visacheckout.callId: + description: The Visa Checkout Call ID retrieved from the SDK. + type: string + Address: + properties: + city: + description: 'The name of the city. Maximum length: 3000 characters.' + maxLength: 3000 + type: string + country: + description: 'The two-character ISO-3166-1 alpha-2 country code. For example, + **US**. + + > If you don''t know the country or are not collecting the country from + the shopper, provide `country` as `ZZ`.' + type: string + houseNumberOrName: + description: 'The number or name of the house. Maximum length: 3000 characters.' + maxLength: 3000 + type: string + postalCode: + description: A maximum of five digits for an address in the US, or a maximum + of ten characters for an address in all other countries. + type: string + stateOrProvince: + description: 'The two-character ISO 3166-2 state or province code. For example, + **CA** in the US or **ON** in Canada. + + > Required for the US and Canada.' + type: string + street: + description: 'The name of the street. Maximum length: 3000 characters. + + > The house number should not be included in this field; it should be + separately provided via `houseNumberOrName`.' + maxLength: 3000 + type: string + required: + - street + - houseNumberOrName + - city + - postalCode + - country + AfterpayDetails: + additionalProperties: false + properties: + billingAddress: + description: The address where to send the invoice. + type: string + deliveryAddress: + description: The address where the goods should be delivered. + type: string + personalDetails: + description: Shopper name, date of birth, phone number, and email address. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: afterpay_default + description: '**afterpay_default**' + enum: + - afterpay_default + - afterpaytouch + - afterpay_b2b + type: string + required: + - type + title: Afterpay + AmazonPayDetails: + additionalProperties: false + properties: + amazonPayToken: + description: This is the `amazonPayToken` that you obtained from the [Get + Checkout Session](https://amazon-pay-acquirer-guide.s3-eu-west-1.amazonaws.com/v1/amazon-pay-api-v2/checkout-session.html#get-checkout-session) + response. + type: string + type: + default: amazonpay + description: '**amazonpay**' + enum: + - amazonpay + type: string + title: Amazon Pay + Amount: + properties: + currency: + description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + maxLength: 3 + minLength: 3 + type: string + value: + description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). + format: int64 + type: integer + required: + - value + - currency + AndroidPayDetails: + additionalProperties: false + properties: + type: + default: androidpay + description: '**androidpay**' + enum: + - androidpay + type: string + title: Android Pay + ApplePayDetails: + additionalProperties: false + properties: + applePayToken: + description: The stringified and base64 encoded `paymentData` you retrieved + from the Apple framework. + maxLength: 10000 + type: string + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: applepay + description: '**applepay**' + enum: + - applepay + type: string + required: + - applePayToken + title: Apple Pay + ApplicationInfo: + properties: + adyenLibrary: + description: Adyen-developed software, such as libraries and plugins, used + to interact with the Adyen API. For example, Magento plugin, Java API + library, etc. + $ref: '#/components/schemas/CommonField' + adyenPaymentSource: + description: Adyen-developed software to get payment details. For example, + Checkout SDK, Secured Fields SDK, etc. + $ref: '#/components/schemas/CommonField' + externalPlatform: + description: Third-party developed platform used to initiate payment requests. + For example, Magento, Zuora, etc. + $ref: '#/components/schemas/ExternalPlatform' + merchantApplication: + description: Merchant developed software, such as cashier application, used + to interact with the Adyen API. + $ref: '#/components/schemas/CommonField' + merchantDevice: + description: Merchant device information. + $ref: '#/components/schemas/MerchantDevice' + shopperInteractionDevice: + description: Shopper interaction device, such as terminal, mobile device + or web browser, to initiate payment requests. + $ref: '#/components/schemas/ShopperInteractionDevice' + AuthenticationData: + properties: + attemptAuthentication: + x-addedInVersion: '69' + x-enum: + - description: Perform 3D Secure authentication. + value: always + - description: Don't perform 3D Secure authentication. If PSD2 SCA or other + national regulations require authentication, the transaction gets declined. + value: never + - description: Do not perform 3D Secure authentication if not required by + PSD2 SCA or other national regulations. + value: preferNo + description: 'Indicates when 3D Secure authentication should be attempted. + This overrides all other rules, including [Dynamic 3D Secure settings](https://docs.adyen.com/risk-management/dynamic-3d-secure). + + + Possible values: + + + * **always**: Perform 3D Secure authentication. + + * **never**: Don''t perform 3D Secure authentication. If PSD2 SCA or other + national regulations require authentication, the transaction gets declined. + + * **preferNo**: Do not perform 3D Secure authentication if not required + by PSD2 SCA or other national regulations.' + enum: + - always + - never + - preferNo + type: string + authenticationOnly: + x-addedInVersion: '69' + 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. + + Default: *false**.' + type: boolean + threeDSRequestData: + x-addedInVersion: '69' + description: Object with additional parameters for the 3D Secure authentication + flow. + $ref: '#/components/schemas/ThreeDSRequestData' + Avs: + properties: + addressEditable: + description: Indicates whether the shopper is allowed to modify the billing + address for the current payment request. + type: boolean + enabled: + description: "Specifies whether the shopper should enter their billing address\ + \ during checkout.\n\nAllowed values:\n* yes \u2014 Perform AVS checks\ + \ for every card payment.\n* automatic \u2014 Perform AVS checks only\ + \ when required to optimize the conversion rate.\n* no \u2014 Do not perform\ + \ AVS checks." + enum: + - 'yes' + - 'no' + - automatic + type: string + BacsDirectDebitDetails: + additionalProperties: false + properties: + bankAccountNumber: + x-addedInVersion: '65' + description: The bank account number (without separators). + type: string + bankLocationId: + x-addedInVersion: '65' + description: The bank routing number of the account. + type: string + holderName: + x-addedInVersion: '65' + description: The name of the bank account holder. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: directdebit_GB + description: '**directdebit_GB**' + enum: + - directdebit_GB + type: string + title: BACS Direct Debit + BankAccount: + properties: + bankAccountNumber: + description: The bank account number (without separators). + type: string + bankCity: + x-addedInVersion: '18' + description: The bank city. + type: string + bankLocationId: + description: The location id of the bank. The field value is `nil` in most + cases. + type: string + bankName: + description: The name of the bank. + type: string + bic: + description: The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362) + (BIC) is the SWIFT address assigned to a bank. The field value is `nil` + in most cases. + type: string + countryCode: + description: 'Country code where the bank is located. + + + A valid value is an ISO two-character country code (e.g. ''NL'').' + type: string + iban: + description: The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number) + (IBAN). + type: string + ownerName: + description: "The name of the bank account holder.\nIf you submit a name\ + \ with non-Latin characters, we automatically replace some of them with\ + \ corresponding Latin characters to meet the FATF recommendations. For\ + \ example:\n* \u03C712 is converted to ch12.\n* \xFCA is converted to\ + \ euA.\n* Peter M\xF8ller is converted to Peter Mller, because banks don't\ + \ accept '\xF8'.\nAfter replacement, the ownerName must have at least\ + \ three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them\ + \ must be a valid Latin character (A-Z, a-z). For example:\n* John17 -\ + \ allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n\ + > If provided details don't match the required format, the response returns\ + \ the error message: 203 'Invalid bank account holder name'." + type: string + taxId: + x-addedInVersion: '18' + description: The bank account holder's tax ID. + type: string + BillDeskDetails: + additionalProperties: false + properties: + issuer: + description: The issuer id of the shopper's selected bank. + type: string + type: + description: '**billdesk**' + enum: + - billdesk_online + - billdesk_wallet + - onlinebanking_IN + - wallet_IN + type: string + required: + - type + - issuer + title: BillDesk + BlikDetails: + additionalProperties: false + properties: + blikCode: + description: BLIK code consisting of 6 digits. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + description: '**blik**' + enum: + - blik + type: string + title: BLIK + BrowserInfo: + properties: + acceptHeader: + description: The accept header value of the shopper's browser. + maxLength: 50 + minLength: 10 + type: string + colorDepth: + x-addedInVersion: '40' + description: 'The color depth of the shopper''s browser in bits per pixel. + This should be obtained by using the browser''s `screen.colorDepth` property. + Accepted values: 1, 4, 8, 15, 16, 24, 30, 32 or 48 bit color depth.' + format: int32 + type: integer + javaEnabled: + x-addedInVersion: '40' + description: Boolean value indicating if the shopper's browser is able to + execute Java. + type: boolean + javaScriptEnabled: + x-addedInVersion: '40' + default: true + description: Boolean value indicating if the shopper's browser is able to + execute JavaScript. A default 'true' value is assumed if the field is + not present. + type: boolean + language: + x-addedInVersion: '40' + description: The `navigator.language` value of the shopper's browser (as + defined in IETF BCP 47). + type: string + screenHeight: + x-addedInVersion: '40' + description: The total height of the shopper's device screen in pixels. + format: int32 + type: integer + screenWidth: + x-addedInVersion: '40' + description: The total width of the shopper's device screen in pixels. + format: int32 + type: integer + timeZoneOffset: + x-addedInVersion: '40' + description: Time difference between UTC time and the shopper's browser + local time, in minutes. + format: int32 + type: integer + userAgent: + description: The user agent value of the shopper's browser. + maxLength: 50 + minLength: 10 + type: string + required: + - userAgent + - acceptHeader + - javaEnabled + - colorDepth + - screenHeight + - screenWidth + - timeZoneOffset + - language + Card: + properties: + cvc: + description: "The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid)\ + \ (1-20 characters). Depending on the card brand, it is known also as:\n\ + * CVV2/CVC2 \u2013 length: 3 digits\n* CID \u2013 length: 4 digits\n>\ + \ If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce),\ + \ the CVC code is present in the encrypted data. You must never post the\ + \ card details to the server.\n> This field must be always present in\ + \ a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).\n\ + > When this value is returned in a response, it is always empty because\ + \ it is not stored." + maxLength: 20 + minLength: 1 + type: string + expiryMonth: + description: 'The card expiry month. + + Format: 2 digits, zero-padded for single digits. For example: + + * 03 = March + + * 11 = November' + maxLength: 2 + minLength: 1 + type: string + expiryYear: + description: 'The card expiry year. + + Format: 4 digits. For example: 2020' + maxLength: 4 + minLength: 4 + type: string + holderName: + description: The name of the cardholder, as printed on the card. + maxLength: 50 + minLength: 1 + type: string + issueNumber: + description: The issue number of the card (for some UK debit cards only). + maxLength: 2 + minLength: 1 + type: string + number: + description: 'The card number (4-19 characters). Do not use any separators. + + When this value is returned in a response, only the last 4 digits of the + card number are returned.' + maxLength: 19 + minLength: 4 + type: string + startMonth: + description: The month component of the start date (for some UK debit cards + only). + maxLength: 2 + minLength: 1 + type: string + startYear: + description: The year component of the start date (for some UK debit cards + only). + maxLength: 4 + minLength: 4 + type: string + required: + - number + - expiryMonth + - expiryYear + - holderName + CardBrandDetails: + properties: + supported: + description: Indicates if you support the card brand. + type: boolean + type: + description: The name of the card brand. + type: string + CardDetails: + additionalProperties: false + properties: + brand: + description: 'Secondary brand of the card. For example: **plastix**, **hmclub**.' + type: string + cupsecureplus.smscode: + deprecated: true + type: string + cvc: + description: The card verification code. Only collect raw card data if you + are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). + type: string + encryptedCardNumber: + description: The encrypted card number. + maxLength: 10000 + type: string + encryptedExpiryMonth: + description: The encrypted card expiry month. + maxLength: 10000 + type: string + encryptedExpiryYear: + description: The encrypted card expiry year. + maxLength: 10000 + type: string + encryptedSecurityCode: + description: The encrypted card verification code. + maxLength: 10000 + type: string + expiryMonth: + description: The card expiry month. Only collect raw card data if you are + [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). + type: string + expiryYear: + description: The card expiry year. Only collect raw card data if you are + [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). + type: string + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + holderName: + description: The name of the card holder. + type: string + networkPaymentReference: + description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) + from the response to the first payment. + type: string + number: + description: The card number. Only collect raw card data if you are [fully + PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + shopperNotificationReference: + description: The `shopperNotificationReference` returned in the response + when you requested to notify the shopper. Used only for recurring payments + in India. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + threeDS2SdkVersion: + description: Version of the 3D Secure 2 mobile SDK. + maxLength: 12 + type: string + type: + default: scheme + description: Default payment method details. Common for scheme payment methods, + and for simple payment method details. + enum: + - scheme + - networkToken + - giftcard + - alliancedata + - card + - qiwiwallet + - lianlianpay_ebanking_enterprise + - lianlianpay_ebanking_credit + - lianlianpay_ebanking_debit + - entercash + type: string + required: + - encryptedCardNumber + - encryptedExpiryMonth + - encryptedExpiryYear + title: Card + CardDetailsRequest: + properties: + cardNumber: + description: "A minimum of the first 8 digits of the card number and a maximum\ + \ of the full card number. 11 digits gives the best result. \n\nYou must\ + \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ + \ to collect raw card data." + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + supportedBrands: + description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ + \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ + \ response. \n\nIf not included, our API uses the ones configured for\ + \ your merchant account and, if provided, the country code." + items: + type: string + type: array + required: + - cardNumber + - merchantAccount + CardDetailsResponse: + properties: + brands: + description: The list of brands identified for the card. + items: + $ref: '#/components/schemas/CardBrandDetails' + type: array + CellulantDetails: + additionalProperties: false + properties: + issuer: + description: The Cellulant issuer. + type: string + type: + default: cellulant + description: '**Cellulant**' + enum: + - cellulant + type: string + title: Cellulant + CheckoutAwaitAction: + additionalProperties: false + properties: + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + type: + description: '**await**' + enum: + - await + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutBalanceCheckRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalAmount: + description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + request to use a non-zero value, assign this value to `additionalAmount` + (while the amount must be still set to 0 to trigger BIN or card verification). + + Required to be in the same currency as the `amount`. ' + $ref: '#/components/schemas/Amount' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + paymentMethod: + additionalProperties: + type: string + description: The collection that contains the type of the payment method + and its specific information. + type: object + recurring: + description: The recurring settings for the payment. Use this property when + you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments). + $ref: '#/components/schemas/Recurring' + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + selectedBrand: + description: 'Some payment methods require defining a value for this field + to specify how to process the transaction. + + + For the Bancontact payment method, it can be set to: + + * `maestro` (default), to be processed like a Maestro card, or + + * `bcmc`, to be processed like a Bancontact card.' + type: string + selectedRecurringDetailReference: + description: The `recurringDetailReference` you want to use for this payment. + The value `LATEST` can be used to select the most recently stored recurring + detail. + type: string + sessionId: + description: A session ID used to identify a payment session. + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.authenticationOnly` 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 + totalsGroup: + x-addedInVersion: '23' + description: The reference value to aggregate sales totals in reporting. + When not specified, the store field is used (if available). + maxLength: 16 + minLength: 1 + type: string + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - paymentMethod + CheckoutBalanceCheckResponse: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' + - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' + - $ref: '#/components/schemas/ResponseAdditionalDataCard' + - $ref: '#/components/schemas/ResponseAdditionalDataCommon' + - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' + - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' + - $ref: '#/components/schemas/ResponseAdditionalDataOpi' + - $ref: '#/components/schemas/ResponseAdditionalDataSepa' + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs** > **Additional data settings**.' + type: object + balance: + description: The balance for the payment method. + $ref: '#/components/schemas/Amount' + fraudResult: + description: The fraud result properties of the payment. + $ref: '#/components/schemas/FraudResult' + pspReference: + description: Adyen's 16-character reference associated with the transaction/request. + This value is globally unique; quote it when communicating with us about + this request. + type: string + refusalReason: + description: 'If the payment''s authorisation is refused or an error occurs + during authorisation, this field holds Adyen''s mapped reason for the + refusal or a description of the error. When a transaction fails, the authorisation + response includes `resultCode` and `refusalReason` values. + + + For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' + type: string + resultCode: + description: "The result of the cancellation request.\n\nPossible values:\n\ + \n* **Success** \u2013 Indicates that the balance check was successful.\n\ + * **NotEnoughBalance** \u2013 Commonly indicates that the card did not\ + \ have enough balance to pay the amount in the request, or that the currency\ + \ of the balance on the card did not match the currency of the requested\ + \ amount.\n* **Failed** \u2013 Indicates that the balance check failed." + enum: + - Success + - NotEnoughBalance + - Failed + type: string + transactionLimit: + x-addedInVersion: '65' + description: The maximum spendable balance for a single transaction. Applicable + to some gift cards. + $ref: '#/components/schemas/Amount' + required: + - balance + - resultCode + CheckoutBankTransferAction: + additionalProperties: false + properties: + beneficiary: + description: The name of the account holder. + type: string + bic: + description: The BIC of the IBAN. + type: string + downloadUrl: + description: The url to download payment details with. + type: string + iban: + description: The IBAN of the bank transfer. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + reference: + description: The transfer reference. + type: string + shopperEmail: + description: The e-mail of the shopper, included if an e-mail was sent to + the shopper. + type: string + totalAmount: + description: The amount of the bank transfer. + $ref: '#/components/schemas/Amount' + type: + description: The type of the action. + enum: + - bankTransfer + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutCancelOrderRequest: + properties: + merchantAccount: + description: The merchant account identifier that orderData belongs to. + type: string + order: + description: The order request object that contains a pspReference that + represents the order and the matching encrypted order data. + $ref: '#/components/schemas/CheckoutOrder' + required: + - order + - merchantAccount + CheckoutCancelOrderResponse: + properties: + pspReference: + description: A unique reference of the cancellation request. + type: string + resultCode: + description: "The result of the cancellation request.\n\nPossible values:\n\ + \n* **Received** \u2013 Indicates the cancellation has successfully been\ + \ received by Adyen, and will be processed." + enum: + - Received + type: string + required: + - pspReference + - resultCode + CheckoutCreateOrderRequest: + properties: + amount: + description: The total amount of the order. + $ref: '#/components/schemas/Amount' + expiresAt: + description: The date that order expires; e.g. 2019-03-23T12:25:28Z. If + not provided, the default expiry duration is 1 day. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the order. + type: string + reference: + description: A custom reference identifying the order. + type: string + required: + - merchantAccount + - reference + - amount + CheckoutCreateOrderResponse: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' + - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' + - $ref: '#/components/schemas/ResponseAdditionalDataCard' + - $ref: '#/components/schemas/ResponseAdditionalDataCommon' + - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' + - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' + - $ref: '#/components/schemas/ResponseAdditionalDataOpi' + - $ref: '#/components/schemas/ResponseAdditionalDataSepa' + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs** > **Additional data settings**.' + type: object + amount: + x-addedInVersion: '68' + description: The initial amount of the order. + $ref: '#/components/schemas/Amount' + expiresAt: + description: The date that the order will expire. + type: string + fraudResult: + description: The fraud result properties of the payment. + $ref: '#/components/schemas/FraudResult' + orderData: + description: The encrypted data that will be used by merchant for adding + payments to the order. + type: string + pspReference: + description: Adyen's 16-character reference associated with the transaction/request. + This value is globally unique; quote it when communicating with us about + this request. + type: string + reference: + description: The reference provided by merchant for creating the order. + type: string + refusalReason: + description: 'If the payment''s authorisation is refused or an error occurs + during authorisation, this field holds Adyen''s mapped reason for the + refusal or a description of the error. When a transaction fails, the authorisation + response includes `resultCode` and `refusalReason` values. + + + For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' + type: string + remainingAmount: + description: The remaining amount in the order. + $ref: '#/components/schemas/Amount' + resultCode: + description: "The result of the order creation request.\n The value is always\ + \ **Success**." + enum: + - Success + type: string + required: + - amount + - remainingAmount + - expiresAt + - orderData + - resultCode + CheckoutDonationAction: + additionalProperties: false + properties: + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + type: + description: The type of the action. + enum: + - donate + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutOneTimePasscodeAction: + additionalProperties: false + properties: + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + redirect: + description: When the payment flow requires a redirect as fallback, this + object contains information about the redirect. + $ref: '#/components/schemas/Redirect' + resendInterval: + description: The interval in second between OTP resend. + format: int32 + type: integer + resendMaxAttempts: + description: The maximum number of OTP resend attempts. + format: int32 + type: integer + resendUrl: + description: The URL, to which you make POST request to trigger OTP resend. + type: string + type: + description: The type of the action. + enum: + - oneTimePasscode + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutOrder: + properties: + orderData: + description: The encrypted order data. + type: string + pspReference: + description: The `pspReference` that belongs to the order. + type: string + required: + - pspReference + - orderData + CheckoutOrderResponse: + properties: + amount: + description: The initial amount of the order. + $ref: '#/components/schemas/Amount' + expiresAt: + description: The expiry date for the order. + type: string + orderData: + description: The encrypted order data. + type: string + pspReference: + description: The `pspReference` that belongs to the order. + type: string + reference: + description: The merchant reference for the order. + type: string + remainingAmount: + description: The updated remaining amount. + $ref: '#/components/schemas/Amount' + required: + - pspReference + CheckoutQrCodeAction: + additionalProperties: false + properties: + expiresAt: + x-addedInVersion: '68' + description: Expiry time of the QR code. + type: string + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + qrCodeData: + description: The contents of the QR code as a UTF8 string. + type: string + type: + description: '**qrCode**' + enum: + - qrCode + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutRedirectAction: + additionalProperties: false + properties: + data: + additionalProperties: + type: string + description: When the redirect URL must be accessed via POST, use this data + to post to the redirect URL. + type: object + method: + description: Specifies the HTTP method, for example GET or POST. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + type: + description: '**redirect**' + enum: + - redirect + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutSDKAction: + additionalProperties: false + properties: + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + sdkData: + additionalProperties: + type: string + description: The data to pass to the SDK. + type: object + type: + description: The type of the action. + enum: + - sdk + - wechatpaySDK + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutThreeDS2Action: + additionalProperties: false + properties: + authorisationToken: + description: A token needed to authorise a payment. + type: string + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + subtype: + description: A subtype of the token. + type: string + token: + description: A token to pass to the 3DS2 Component to get the fingerprint. + type: string + type: + description: '**threeDS2**' + enum: + - threeDS2 + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CheckoutUtilityRequest: + properties: + originDomains: + description: The list of origin domains, for which origin keys are requested. + items: + type: string + type: array + required: + - originDomains + CheckoutUtilityResponse: + properties: + originKeys: + x-addedInVersion: '1' + additionalProperties: + type: string + description: The list of origin keys for all requested domains. For each + list item, the key is the domain and the value is the origin key. + type: object + CheckoutVoucherAction: + additionalProperties: false + properties: + alternativeReference: + description: The voucher alternative reference code. + type: string + collectionInstitutionNumber: + description: A collection institution number (store number) for Econtext + Pay-Easy ATM. + type: string + downloadUrl: + description: The URL to download the voucher. + type: string + entity: + description: An entity number of Multibanco. + type: string + expiresAt: + description: The date time of the voucher expiry. + type: string + initialAmount: + description: The initial amount. + $ref: '#/components/schemas/Amount' + instructionsUrl: + description: The URL to the detailed instructions to make payment using + the voucher. + type: string + issuer: + description: The issuer of the voucher. + type: string + maskedTelephoneNumber: + description: The shopper telephone number (partially masked). + type: string + merchantName: + description: The merchant name. + type: string + merchantReference: + description: The merchant reference. + type: string + paymentData: + description: A value that must be submitted to the `/payments/details` endpoint + to verify this payment. + type: string + paymentMethodType: + description: Specifies the payment method. + type: string + reference: + description: The voucher reference code. + type: string + shopperEmail: + description: The shopper email. + type: string + shopperName: + description: The shopper name. + type: string + surcharge: + description: The surcharge amount. + $ref: '#/components/schemas/Amount' + totalAmount: + description: The total amount (initial plus surcharge amount). + $ref: '#/components/schemas/Amount' + type: + description: '**voucher**' + enum: + - voucher + type: string + url: + description: Specifies the URL to redirect to. + type: string + required: + - type + CommonField: + properties: + name: + description: Name of the field. For example, Name of External Platform. + type: string + version: + description: Version of the field. For example, Version of External Platform. + type: string + Company: + properties: + homepage: + description: The company website's home page. + type: string + name: + description: The company name. + type: string + registrationNumber: + description: Registration number of the company. + type: string + registryLocation: + description: Registry location of the company. + type: string + taxId: + description: Tax ID of the company. + type: string + type: + description: The company type. + type: string + Configuration: + properties: + avs: + description: Describes the configuration for AVS ([Address Verification + System](https://en.wikipedia.org/wiki/Address_Verification_System)). + $ref: '#/components/schemas/Avs' + cardHolderName: + x-addedInVersion: '37' + description: 'Determines whether the cardholder name should be provided + or not. + + + Permitted values: + + * NONE + + * OPTIONAL + + * REQUIRED' + enum: + - NONE + - OPTIONAL + - REQUIRED + type: string + installments: + description: Describes the configuration for [installment payments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/InstallmentsNumber' + shopperInput: + x-addedInVersion: '37' + description: Determines how to display the details fields. + $ref: '#/components/schemas/ShopperInput' + CreateCheckoutSessionRequest: + properties: + accountInfo: + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalAmount: + description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + request to use a non-zero value, assign this value to `additionalAmount` + (while the amount must be still set to 0 to trigger BIN or card verification). + + Required to be in the same currency as the `amount`. ' + $ref: '#/components/schemas/Amount' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + allowedPaymentMethods: + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The amount of the payment. + $ref: '#/components/schemas/Amount' + applicationInfo: + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + authenticationData: + x-addedInVersion: '69' + description: Configuration data for 3DS payments. + $ref: '#/components/schemas/AuthenticationData' + billingAddress: + description: The address where to send the invoice. + $ref: '#/components/schemas/Address' + blockedPaymentMethods: + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + captureDelayHours: + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * **iOS** + + * **Android** + + * **Web** + + + ' + enum: + - iOS + - Android + - Web + type: string + company: + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: The shopper's two-letter country code. + type: string + dateOfBirth: + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + enableOneClick: + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + expiresAt: + description: The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) + format. When not specified, the expiry date is set to 1 hour after session + creation. You cannot set the session expiry to more than 24 hours after + session creation. + format: date-time + type: string + lineItems: + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, and Zip.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: The reference to uniquely identify a payment. + type: string + returnUrl: + description: The URL to return to when a redirect payment is completed. + type: string + riskData: + description: Any risk-related settings to apply to the payment. + $ref: '#/components/schemas/RiskData' + shopperEmail: + description: The shopper's email address. + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + description: The shopper's full name. This object is required for some payment + methods such as AfterPay, Klarna, or if you're enrolled in the PayPal + Seller Protection program. + $ref: '#/components/schemas/Name' + shopperReference: + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + description: The shopper's social security number. + type: string + splitCardFundingSources: + default: false + description: Boolean value indicating whether the card payment method should + be split into separate debit and credit options. + type: boolean + splits: + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + description: The ecommerce or point-of-sale store that is processing the + payment. + type: string + storePaymentMethod: + description: When this is set to **true** and the `shopperReference` is + provided, the payment details will be stored. + type: boolean + telephoneNumber: + description: The shopper's telephone number. + type: string + threeDSAuthenticationOnly: + 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 + trustedShopper: + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - amount + - reference + - returnUrl + - merchantAccount + CreateCheckoutSessionResponse: + properties: + accountInfo: + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalAmount: + description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + request to use a non-zero value, assign this value to `additionalAmount` + (while the amount must be still set to 0 to trigger BIN or card verification). + + Required to be in the same currency as the `amount`. ' + $ref: '#/components/schemas/Amount' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + allowedPaymentMethods: + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The amount of the payment. + $ref: '#/components/schemas/Amount' + applicationInfo: + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + authenticationData: + x-addedInVersion: '69' + description: Configuration data for 3DS payments. + $ref: '#/components/schemas/AuthenticationData' + billingAddress: + description: The address where to send the invoice. + $ref: '#/components/schemas/Address' + blockedPaymentMethods: + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + captureDelayHours: + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * **iOS** + + * **Android** + + * **Web** + + + ' + enum: + - iOS + - Android + - Web + type: string + company: + description: Information regarding the company. + $ref: '#/components/schemas/Company' + countryCode: + description: The shopper's two-letter country code. + type: string + dateOfBirth: + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + enableOneClick: + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + expiresAt: + description: The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) + format. When not specified, the expiry date is set to 1 hour after session + creation. You cannot set the session expiry to more than 24 hours after + session creation. + format: date-time + type: string + id: + description: A unique identifier of the session. + readOnly: true + type: string + lineItems: + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, and Zip.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: The reference to uniquely identify a payment. + type: string + returnUrl: + description: The URL to return to when a redirect payment is completed. + type: string + riskData: + description: Any risk-related settings to apply to the payment. + $ref: '#/components/schemas/RiskData' + sessionData: + description: The payment session data you need to pass to your front end. + type: string + shopperEmail: + description: The shopper's email address. + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + description: The shopper's full name. This object is required for some payment + methods such as AfterPay, Klarna, or if you're enrolled in the PayPal + Seller Protection program. + $ref: '#/components/schemas/Name' + shopperReference: + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + description: The shopper's social security number. + type: string + splitCardFundingSources: + default: false + description: Boolean value indicating whether the card payment method should + be split into separate debit and credit options. + type: boolean + splits: + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + description: The ecommerce or point-of-sale store that is processing the + payment. + type: string + storePaymentMethod: + description: When this is set to **true** and the `shopperReference` is + provided, the payment details will be stored. + type: boolean + telephoneNumber: + description: The shopper's telephone number. + type: string + threeDSAuthenticationOnly: + 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 + trustedShopper: + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - id + - amount + - reference + - returnUrl + - expiresAt + - merchantAccount + CreatePaymentAmountUpdateRequest: + properties: + amount: + description: The updated amount. The `currency` must match the currency + used in authorisation. + $ref: '#/components/schemas/Amount' + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + reason: + description: "The reason for the amount update. Possible values: \n* **delayedCharge**\ + \ \n* **noShow**" + enum: + - delayedCharge + - noShow + type: string + reference: + description: 'Your reference for the amount update request. Maximum length: + 80 characters.' + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + required: + - merchantAccount + - amount + CreatePaymentCancelRequest: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + reference: + description: 'Your reference for the cancel request. Maximum length: 80 + characters.' + type: string + required: + - merchantAccount + CreatePaymentCaptureRequest: + properties: + amount: + description: The amount that you want to capture. The `currency` must match + the currency used in authorisation, the `value` must be smaller than or + equal to the authorised amount. + $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + reference: + description: 'Your reference for the capture request. Maximum length: 80 + characters.' + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + required: + - merchantAccount + - amount + CreatePaymentLinkRequest: + properties: + allowedPaymentMethods: + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The payment amount and currency. + $ref: '#/components/schemas/Amount' + applicationInfo: + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + description: The address where to send the invoice. + $ref: '#/components/schemas/Address' + blockedPaymentMethods: + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + captureDelayHours: + x-addedInVersion: '69' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + countryCode: + description: The shopper's two-letter country code. + type: string + dateOfBirth: + x-addedInVersion: '69' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + description: + description: 'A short description visible on the payment page. + + Maximum length: 280 characters.' + type: string + expiresAt: + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' + type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object + lineItems: + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + This parameter is required for open invoice (_buy now, pay later_) payment + methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mcc: + x-addedInVersion: '69' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier for which the payment link + is created. + type: string + merchantOrderReference: + description: This reference allows linking multiple transactions to each + other for reporting purposes (for example, order auth-rate). The reference + should be unique per billing cycle. + type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object + recurringProcessingModel: + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or has variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + reference: + description: A reference that is used to uniquely identify the payment in + future communications about the payment status. + type: string + requiredShopperFields: + x-addedInVersion: '67' + description: "List of fields that the shopper has to provide on the payment\ + \ page before completing the payment. For more information, refer to [Provide\ + \ shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\ + \nPossible values:\n* **billingAddress** \u2013 The address where to send\ + \ the invoice.\n* **deliveryAddress** \u2013 The address where the purchased\ + \ goods should be delivered.\n* **shopperEmail** \u2013 The shopper's\ + \ email address.\n* **shopperName** \u2013 The shopper's full name.\n\ + * **telephoneNumber** \u2013 The shopper's phone number.\n" + items: + enum: + - billingAddress + - deliveryAddress + - shopperEmail + - shopperName + - telephoneNumber + type: string + type: array + returnUrl: + description: 'Website URL used for redirection after payment is completed. + + If provided, a **Continue** button will be shown on the payment page. + If shoppers select the button, they are redirected to the specified URL.' + type: string + reusable: + description: Indicates whether the payment link can be reused for multiple + payments. If not provided, this defaults to **false** which means the + link can be used for one successful payment only. + type: boolean + riskData: + x-addedInVersion: '65' + description: Any risk-related settings to apply to the payment. + $ref: '#/components/schemas/RiskData' + shopperEmail: + description: The shopper's email address. + type: string + shopperLocale: + description: 'The language to be used in the payment page, specified by + a combination of a language and country code. For example, `en-US`. + + + For a list of shopper locales that Pay by Link supports, refer to [Language + and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization).' + type: string + shopperName: + description: The shopper's full name. This object is required for some payment + methods such as AfterPay, Klarna, or if you're enrolled in the PayPal + Seller Protection program. + $ref: '#/components/schemas/Name' + shopperReference: + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' + type: string + shopperStatement: + x-addedInVersion: '69' + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '69' + description: The shopper's social security number. + type: string + splitCardFundingSources: + x-addedInVersion: '69' + default: false + description: Boolean value indicating whether the card payment method should + be split into separate debit and credit options. + type: boolean + splits: + description: An array of objects specifying how the payment should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + store: + description: The physical store, for which this payment is processed. + type: string + storePaymentMethodMode: + x-addedInVersion: '68' + description: "Indicates if the details of the payment method will be stored\ + \ for the shopper. Possible values:\n* **disabled** \u2013 No details\ + \ will be stored (default).\n* **askForConsent** \u2013 If the `shopperReference`\ + \ is provided, the UI lets the shopper choose if they want their payment\ + \ details to be stored.\n* **enabled** \u2013 If the `shopperReference`\ + \ is provided, the details will be stored without asking the shopper for\ + \ consent." + enum: + - askForConsent + - disabled + - enabled + type: string + telephoneNumber: + x-addedInVersion: '68' + description: The shopper's telephone number. + type: string + themeId: + x-addedInVersion: '67' + description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) + to customize the appearance of the payment page. If not specified, the + payment page is rendered according to the theme set as default in your + Customer Area. + type: string + required: + - amount + - reference + - merchantAccount + CreatePaymentRefundRequest: + properties: + amount: + description: The amount that you want to refund. The `currency` must match + the currency used in authorisation, the `value` must be smaller than or + equal to the authorised amount. + $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + reference: + description: 'Your reference for the refund request. Maximum length: 80 + characters.' + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + required: + - merchantAccount + - amount + CreatePaymentReversalRequest: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + reference: + description: 'Your reference for the reversal request. Maximum length: 80 + characters.' + type: string + required: + - merchantAccount + CreateStandalonePaymentCancelRequest: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentReference: + description: The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) + of the payment that you want to cancel. + type: string + reference: + description: 'Your reference for the cancel request. Maximum length: 80 + characters.' + type: string + required: + - merchantAccount + - paymentReference + DetailsRequest: + properties: + details: + description: Use this collection to submit the details that were returned + as a result of the `/payments` call. + $ref: '#/components/schemas/PaymentCompletionDetails' + paymentData: + description: 'The `paymentData` value from the `/payments` response. Required + if the `/payments` response returns this value. ' + maxLength: 100000 + type: string + threeDSAuthenticationOnly: + x-addedInVersion: '40' + description: Change the `authenticationOnly` indicator originally set in + the `/payments` request. Only needs to be set if you want to modify the + value set previously. + type: boolean + required: + - details + DeviceRenderOptions: + properties: + sdkInterface: + default: both + description: 'Supported SDK interface types. + + Allowed values: + + * native + + * html + + * both' + enum: + - native + - html + - both + type: string + sdkUiType: + description: 'UI types supported for displaying specific challenges. + + Allowed values: + + * text + + * singleSelect + + * outOfBand + + * otherHtml + + * multiSelect' + items: + enum: + - multiSelect + - otherHtml + - outOfBand + - singleSelect + - text + type: string + type: array + DokuDetails: + additionalProperties: false + properties: + firstName: + description: The shopper's first name. + type: string + lastName: + description: The shopper's last name. + type: string + shopperEmail: + description: The shopper's email. + type: string + type: + description: '**doku**' + enum: + - doku_mandiri_va + - doku_cimb_va + - doku_danamon_va + - doku_bni_va + - doku_permata_lite_atm + - doku_bri_va + - doku_bca_va + - doku_alfamart + - doku_indomaret + type: string + required: + - type + - firstName + - lastName + - shopperEmail + title: Doku + DonationResponse: + properties: + amount: + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationAccount: + description: The Adyen account name of your charity. We will provide you + with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). + type: string + id: + description: Your unique resource identifier. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + payment: + description: Action to be taken for completing the payment. + $ref: '#/components/schemas/PaymentResponse' + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. If + you need to provide multiple references for a transaction, separate them + with hyphens ("-"). Maximum length: 80 characters.' + type: string + status: + description: 'The status of the donation transaction. + + + Possible values: + + * **completed** + + * **pending** + + * **refused**' + enum: + - completed + - pending + - refused + type: string + DotpayDetails: + additionalProperties: false + properties: + issuer: + description: The Dotpay issuer value of the shopper's selected bank. Set + this to an **id** of a Dotpay issuer to preselect it. + type: string + type: + default: dotpay + description: '**dotpay**' + enum: + - dotpay + type: string + required: + - issuer + title: Dotpay + DragonpayDetails: + additionalProperties: false + properties: + issuer: + description: The Dragonpay issuer value of the shopper's selected bank. + Set this to an **id** of a Dragonpay issuer to preselect it. + type: string + shopperEmail: + description: "The shopper\u2019s email address." + type: string + type: + description: '**dragonpay**' + enum: + - dragonpay_ebanking + - dragonpay_otc_banking + - dragonpay_otc_non_banking + - dragonpay_otc_philippines + type: string + required: + - type + - issuer + title: Dragonpay + EcontextVoucherDetails: + additionalProperties: false + properties: + firstName: + description: The shopper's first name. + type: string + lastName: + description: The shopper's last name. + type: string + shopperEmail: + description: The shopper's email. + type: string + telephoneNumber: + description: The shopper's contact number. It must have an international + number format, for example **+31 20 779 1846**. Formats like **+31 (0)20 + 779 1846** or **0031 20 779 1846** are not accepted. + type: string + type: + description: '**econtextvoucher**' + enum: + - econtext_seveneleven + - econtext_stores + type: string + required: + - type + - firstName + - lastName + - shopperEmail + - telephoneNumber + title: Voucher + ExternalPlatform: + properties: + integrator: + description: External platform integrator. + type: string + name: + description: Name of the field. For example, Name of External Platform. + type: string + version: + description: Version of the field. For example, Version of External Platform. + type: string + ForexQuote: + properties: + account: + description: The account name. + type: string + accountType: + description: The account type. + type: string + baseAmount: + description: The base amount. + $ref: '#/components/schemas/Amount' + basePoints: + description: The base points. + format: int32 + type: integer + buy: + description: The buy rate. + $ref: '#/components/schemas/Amount' + interbank: + description: The interbank amount. + $ref: '#/components/schemas/Amount' + reference: + description: The reference assigned to the forex quote request. + type: string + sell: + description: The sell rate. + $ref: '#/components/schemas/Amount' + signature: + description: The signature to validate the integrity. + type: string + source: + description: The source of the forex quote. + type: string + type: + description: The type of forex. + type: string + validTill: + description: The date until which the forex quote is valid. + format: date-time + type: string + required: + - validTill + - basePoints + FraudCheckResult: + properties: + accountScore: + description: The fraud score generated by the risk check. + format: int32 + type: integer + checkId: + description: The ID of the risk check. + format: int32 + type: integer + name: + description: The name of the risk check. + type: string + required: + - checkId + - name + - accountScore + FraudResult: + properties: + accountScore: + description: The total fraud score generated by the risk checks. + format: int32 + type: integer + results: + description: The result of the individual risk checks. + items: + $ref: '#/components/schemas/FraudCheckResult' + type: array + required: + - accountScore + GenericIssuerPaymentMethodDetails: + additionalProperties: false + properties: + issuer: + description: The issuer id of the shopper's selected bank. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + description: '**genericissuer**' + enum: + - eps + - onlineBanking_SK + - onlineBanking_CZ + type: string + required: + - type + - issuer + title: Stored Payment Method + GiropayDetails: + additionalProperties: false + properties: + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: giropay + description: '**giropay**' + enum: + - giropay + type: string + title: Giropay + GooglePayDetails: + additionalProperties: false + properties: + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + googlePayToken: + description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) + `PaymentData` response. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: googlepay + description: '**googlepay**, **paywithgoogle**' + enum: + - googlepay + type: string + required: + - googlePayToken + title: Google Pay + IdealDetails: + additionalProperties: false + properties: + issuer: + description: The iDEAL issuer value of the shopper's selected bank. Set + this to an **id** of an iDEAL issuer to preselect it. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: ideal + description: '**ideal**' + enum: + - ideal + type: string + required: + - issuer + title: iDEAL + InputDetail: + properties: + configuration: + additionalProperties: + type: string + description: Configuration parameters for the required input. + type: object + details: + description: Input details can also be provided recursively. + items: + $ref: '#/components/schemas/SubInputDetail' + type: array + inputDetails: + deprecated: true + description: Input details can also be provided recursively (deprecated). + items: + $ref: '#/components/schemas/SubInputDetail' + type: array + itemSearchUrl: + description: In case of a select, the URL from which to query the items. + type: string + items: + description: In case of a select, the items to choose from. + items: + $ref: '#/components/schemas/Item' + type: array + key: + description: The value to provide in the result. + type: string + optional: + description: True if this input value is optional. + type: boolean + type: + description: The type of the required input. + type: string + value: + description: The value can be pre-filled, if available. + type: string + InstallmentOption: + properties: + maxValue: + description: The maximum number of installments offered for this payment + method. + format: int32 + type: integer + plans: + x-addedInVersion: '64' + description: 'Defines the type of installment plan. If not set, defaults + to **regular**. + + + Possible values: + + * **regular** + + * **revolving**' + items: + enum: + - regular + - revolving + type: string + type: array + preselectedValue: + x-addedInVersion: '64' + description: Preselected number of installments offered for this payment + method. + format: int32 + type: integer + values: + x-addedInVersion: '64' + description: An array of the number of installments that the shopper can + choose from. For example, **[2,3,5]**. This cannot be specified simultaneously + with `maxValue`. + items: + format: int32 + type: integer + type: array + Installments: + properties: + plan: + x-addedInVersion: '64' + description: 'The installment plan, used for [card installments in Japan](https://docs.adyen.com/payment-methods/cards/credit-card-installments#make-a-payment-japan). + By default, this is set to **regular**. Possible values: + + * **regular** + + * **revolving** + + ' + enum: + - regular + - revolving + type: string + value: + description: 'Defines the number of installments. Its value needs to be + greater than zero. + + + Usually, the maximum allowed number of installments is capped. For example, + it may not be possible to split a payment in more than 24 installments. + The acquirer sets this upper limit, so its value may vary.' + format: int32 + type: integer + required: + - value + InstallmentsNumber: + properties: + maxNumberOfInstallments: + description: Maximum number of installments + format: int32 + type: integer + required: + - maxNumberOfInstallments + Item: + properties: + id: + description: The value to provide in the result. + type: string + name: + description: The display name. + type: string + KlarnaDetails: + additionalProperties: false + properties: + billingAddress: + description: The address where to send the invoice. + type: string + deliveryAddress: + description: The address where the goods should be delivered. + type: string + personalDetails: + description: Shopper name, date of birth, phone number, and email address. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: klarna + description: '**klarna**' + enum: + - klarna + - klarnapayments + - klarnapayments_account + - klarnapayments_b2b + - klarna_paynow + - klarna_account + - klarna_b2b + type: string + required: + - type + title: Klarna + LineItem: + properties: + amountExcludingTax: + description: Item amount excluding the tax, in minor units. + format: int64 + type: integer + amountIncludingTax: + description: Item amount including the tax, in minor units. + format: int64 + type: integer + description: + description: Description of the line item. + type: string + id: + description: ID of the line item. + type: string + imageUrl: + description: Link to the picture of the purchased item. + type: string + itemCategory: + description: Item category, used by the RatePay payment method. + type: string + productUrl: + description: Link to the purchased item. + type: string + quantity: + description: Number of items. + format: int64 + type: integer + taxAmount: + description: Tax amount, in minor units. + format: int64 + type: integer + taxPercentage: + description: Tax percentage, in minor units. + format: int64 + type: integer + Mandate: + properties: + amount: + description: The billing amount (in minor units) of the recurring transactions. + type: string + amountRule: + description: "The limitation rule of the billing amount.\n\nPossible values:\n\ + \ * **max**: The transaction amount can not exceed the `amount`.\n\n *\ + \ **exact**: The transaction amount should be the same as the `amount`.\n\ + \n" + enum: + - max + - exact + type: string + billingAttemptsRule: + description: "The rule to specify the period, within which the recurring\ + \ debit can happen, relative to the mandate recurring date.\n\nPossible\ + \ values:\n\n * **on**: On a specific date.\n\n * **before**: Before\ + \ and on a specific date.\n\n * **after**: On and after a specific date.\n\ + \n" + enum: + - 'on' + - before + - after + type: string + billingDay: + description: 'The number of the day, on which the recurring debit can happen. + Should be within the same calendar month as the mandate recurring date. + + + Possible values: 1-31 based on the `frequency`.' + type: string + endsAt: + description: End date of the billing plan, in YYYY-MM-DD format. + type: string + frequency: + description: 'The frequency with which a shopper should be charged. + + + Possible values: **daily**, **weekly**, **biWeekly**, **monthly**, **quarterly**, + **halfYearly**, **yearly**.' + enum: + - adhoc + - daily + - weekly + - biWeekly + - monthly + - quarterly + - halfYearly + - yearly + type: string + remarks: + description: The message shown by UPI to the shopper on the approval screen. + type: string + startsAt: + description: Start date of the billing plan, in YYYY-MM-DD format. By default, + the transaction date. + type: string + required: + - frequency + - amount + - endsAt + MasterpassDetails: + additionalProperties: false + properties: + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + masterpassTransactionId: + description: The Masterpass transaction ID. + type: string + type: + default: masterpass + description: '**masterpass**' + enum: + - masterpass + type: string + required: + - masterpassTransactionId + title: Masterpass + MbwayDetails: + additionalProperties: false + properties: + shopperEmail: + description: '' + type: string + telephoneNumber: + description: '' + type: string + type: + default: mbway + description: '**mbway**' + enum: + - mbway + type: string + required: + - telephoneNumber + - shopperEmail + title: MBWay + MerchantDevice: + properties: + os: + description: Operating system running on the merchant device. + type: string + osVersion: + description: Version of the operating system on the merchant device. + type: string + reference: + description: Merchant device reference. + type: string + MerchantRiskIndicator: + properties: + addressMatch: + description: Whether the chosen delivery address is identical to the billing + address. + type: boolean + deliveryAddressIndicator: + description: 'Indicator regarding the delivery address. + + Allowed values: + + * `shipToBillingAddress` + + * `shipToVerifiedAddress` + + * `shipToNewAddress` + + * `shipToStore` + + * `digitalGoods` + + * `goodsNotShipped` + + * `other`' + enum: + - shipToBillingAddress + - shipToVerifiedAddress + - shipToNewAddress + - shipToStore + - digitalGoods + - goodsNotShipped + - other + type: string + deliveryEmail: + deprecated: true + x-deprecatedInVersion: '68' + x-deprecatedMessage: Use `deliveryEmailAddress` instead. + description: The delivery email address (for digital goods). + type: string + deliveryEmailAddress: + x-addedInVersion: '68' + description: 'For Electronic delivery, the email address to which the merchandise + was delivered. Maximum length: 254 characters.' + maxLength: 254 + type: string + deliveryTimeframe: + description: 'The estimated delivery time for the shopper to receive the + goods. + + Allowed values: + + * `electronicDelivery` + + * `sameDayShipping` + + * `overnightShipping` + + * `twoOrMoreDaysShipping`' + enum: + - electronicDelivery + - sameDayShipping + - overnightShipping + - twoOrMoreDaysShipping + type: string + giftCardAmount: + description: For prepaid or gift card purchase, the purchase amount total + of prepaid or gift card(s). + $ref: '#/components/schemas/Amount' + giftCardCount: + description: For prepaid or gift card purchase, total count of individual + prepaid or gift cards/codes purchased. + format: int32 + type: integer + giftCardCurr: + x-addedInVersion: '68' + description: For prepaid or gift card purchase, [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) + three-digit currency code of the gift card, other than those listed in + Table A.5 of the EMVCo 3D Secure Protocol and Core Functions Specification. + type: string + preOrderDate: + description: For pre-order purchases, the expected date this product will + be available to the shopper. + format: date-time + type: string + preOrderPurchase: + description: Indicator for whether this transaction is for pre-ordering + a product. + type: boolean + preOrderPurchaseInd: + x-addedInVersion: '68' + description: Indicates whether Cardholder is placing an order for merchandise + with a future availability or release date. + type: string + reorderItems: + description: Indicator for whether the shopper has already purchased the + same items in the past. + type: boolean + reorderItemsInd: + x-addedInVersion: '68' + description: Indicates whether the cardholder is reordering previously purchased + merchandise. + type: string + shipIndicator: + x-addedInVersion: '68' + description: Indicates shipping method chosen for the transaction. + type: string + MobilePayDetails: + additionalProperties: false + properties: + type: + default: mobilepay + description: '**mobilepay**' + enum: + - mobilepay + type: string + title: MobilePay + MolPayDetails: + additionalProperties: false + properties: + issuer: + description: The shopper's bank. Specify this with the issuer value that + corresponds to this bank. + type: string + type: + description: '**molpay**' + enum: + - molpay_ebanking_fpx_MY + - molpay_ebanking_TH + type: string + required: + - type + - issuer + title: MOLPay + Name: + properties: + firstName: + description: The first name. + type: string + lastName: + description: The last name. + type: string + required: + - firstName + - lastName + OpenInvoiceDetails: + additionalProperties: false + properties: + billingAddress: + description: The address where to send the invoice. + type: string + deliveryAddress: + description: The address where the goods should be delivered. + type: string + personalDetails: + description: Shopper name, date of birth, phone number, and email address. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: openinvoice + description: '**openinvoice**' + enum: + - openinvoice + - afterpay_directdebit + - atome_pos + type: string + title: Open Invoice + PayPalDetails: + additionalProperties: false + properties: + orderID: + description: The unique ID associated with the order. + type: string + payerID: + description: The unique ID associated with the payer. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + subtype: + description: The type of flow to initiate. + enum: + - redirect + - sdk + type: string + type: + default: paypal + description: '**paypal**' + enum: + - paypal + type: string + required: + - type + title: PayPal + PayUUpiDetails: + additionalProperties: false + properties: + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + shopperNotificationReference: + description: The `shopperNotificationReference` returned in the response + when you requested to notify the shopper. Used for recurring payment only. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: payu_IN_upi + description: '**payu_IN_upi**' + enum: + - payu_IN_upi + type: string + virtualPaymentAddress: + description: The virtual payment address for UPI. + type: string + required: + - type + title: PayU + PayWithGoogleDetails: + additionalProperties: false + properties: + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + googlePayToken: + description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) + `PaymentData` response. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: paywithgoogle + description: '**paywithgoogle**' + enum: + - paywithgoogle + type: string + required: + - googlePayToken + title: Google Pay + PaymentAmountUpdateResource: + properties: + amount: + description: The updated amount. + $ref: '#/components/schemas/Amount' + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentPspReference: + description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment to update. ' + type: string + pspReference: + description: Adyen's 16-character reference associated with the amount update + request. + type: string + reason: + description: "The reason for the amount update. Possible values: \n* **DelayedCharge**\ + \ \n* **NoShow**" + enum: + - delayedCharge + - noShow + type: string + reference: + description: 'Your reference for the amount update request. Maximum length: + 80 characters.' + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - amount + - reference + - pspReference + - paymentPspReference + PaymentCancelResource: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentPspReference: + description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment to cancel. ' + type: string + pspReference: + description: Adyen's 16-character reference associated with the cancel request. + type: string + reference: + description: Your reference for the cancel request. + type: string + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - paymentPspReference + - pspReference + PaymentCaptureResource: + properties: + amount: + description: The captured amount. + $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the captured items, required + for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). + + > This field is required for partial captures with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentPspReference: + description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment to capture. ' + type: string + pspReference: + description: Adyen's 16-character reference associated with the capture + request. + type: string + reference: + description: Your reference for the capture request. + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - amount + - pspReference + - paymentPspReference + PaymentCompletionDetails: + properties: + MD: + description: A payment session identifier returned by the card issuer. + maxLength: 20000 + type: string + PaReq: + description: (3D) Payment Authentication Request data for the card issuer. + type: string + PaRes: + description: (3D) Payment Authentication Response data by the card issuer. + maxLength: 20000 + type: string + billingToken: + description: PayPal-generated token for recurring payments. + type: string + cupsecureplus.smscode: + description: The SMS verification code collected from the shopper. + type: string + facilitatorAccessToken: + description: PayPal-generated third party access token. + type: string + oneTimePasscode: + description: A random number sent to the mobile phone number of the shopper + to verify the payment. + type: string + orderID: + description: PayPal-assigned ID for the order. + type: string + payerID: + description: PayPal-assigned ID for the payer (shopper). + type: string + payload: + description: Payload appended to the `returnURL` as a result of the redirect. + maxLength: 20000 + type: string + paymentID: + description: PayPal-generated ID for the payment. + type: string + paymentStatus: + description: 'Value passed from the WeChat MiniProgram `wx.requestPayment` + **complete** callback. Possible values: any value starting with `requestPayment:`.' + type: string + redirectResult: + description: The result of the redirect as appended to the `returnURL`. + maxLength: 20000 + type: string + threeDSResult: + description: 'Base64-encoded string returned by the Component after the + challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.' + maxLength: 50000 + type: string + threeds2.challengeResult: + description: 'Base64-encoded string returned by the Component after the + challenge flow. It contains the following parameter: `transStatus`.' + maxLength: 50000 + type: string + threeds2.fingerprint: + description: 'Base64-encoded string returned by the Component after the + challenge flow. It contains the following parameter: `threeDSCompInd`.' + maxLength: 100000 + type: string + PaymentDetails: + additionalProperties: false + properties: + type: + description: The payment method type. + enum: + - alipay + - multibanco + - bankTransfer_IBAN + - paybright + - affirm + - affirm_pos + - trustlyvector + - oney + - facilypay + - facilypay_3x + - facilypay_4x + - facilypay_6x + - facilypay_10x + - facilypay_12x + - unionpay + - kcp_banktransfer + - kcp_payco + - kcp_creditcard + - wechatpaySDK + - wechatpayQR + - wechatpayWeb + - wallet_IN + - payu_IN_cashcard + - payu_IN_nb + - upi_qr + - paytm + - molpay_ebanking_VN + - openbanking_UK + - ebanking_FI + - molpay_ebanking_MY + - molpay_ebanking_direct_MY + - swish + - twint + - pix + - walley + - walley_b2b + - molpay_fpx + - konbini + - directEbanking + - boletobancario + - neteller + - dana + - paysafecard + - cashticket + - isracard + - ikano + - karenmillen + - oasis + - warehouse + - primeiropay_boleto + - mada + - benefit + - knet + - omannet + - gopay_wallet + - poli + - kcp_naverpay + - onlinebanking_IN + - fawry + - atome + - moneybookers + - naps + - nordea + - boletobancario_bradesco + - boletobancario_itau + - boletobancario_santander + - boletobancario_bancodobrasil + - boletobancario_hsbc + - molpay_maybank2u + - molpay_cimb + - molpay_rhb + - molpay_amb + - molpay_hlb + - molpay_affin_epg + - molpay_bankislam + - molpay_publicbank + - fpx_agrobank + - touchngo + - maybank2u_mae + - duitnow + - twint_pos + - alipay_hk + - alipay_hk_web + - alipay_hk_wap + - alipay_wap + type: string + title: Payment Details + PaymentDetailsResponse: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' + - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' + - $ref: '#/components/schemas/ResponseAdditionalDataCard' + - $ref: '#/components/schemas/ResponseAdditionalDataCommon' + - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' + - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' + - $ref: '#/components/schemas/ResponseAdditionalDataOpi' + - $ref: '#/components/schemas/ResponseAdditionalDataSepa' + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs** > **Additional data settings**.' + type: object + amount: + x-addedInVersion: '52' + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationToken: + x-addedInVersion: '66' + description: Donation Token containing payment details for Adyen Giving. + type: string + fraudResult: + description: The fraud result properties of the payment. + $ref: '#/components/schemas/FraudResult' + merchantReference: + x-addedInVersion: '49' + description: The reference used during the /payments request. + type: string + order: + description: Contains updated information regarding the order in case order + information was provided in the request. + $ref: '#/components/schemas/CheckoutOrderResponse' + paymentMethod: + x-addedInVersion: '69' + description: 'The payment method used in the transaction. Only returned + for successful payments. + + ' + $ref: '#/components/schemas/ResponsePaymentMethod' + pspReference: + description: Adyen's 16-character string reference associated with the transaction/request. + This value is globally unique; quote it when communicating with us about + this request. + type: string + refusalReason: + description: 'If the payment''s authorisation is refused or an error occurs + during authorisation, this field holds Adyen''s mapped reason for the + refusal or a description of the error. When a transaction fails, the authorisation + response includes `resultCode` and `refusalReason` values. + + + For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' + type: string + refusalReasonCode: + x-addedInVersion: '37' + description: Code that specifies the refusal reason. For more information, + see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). + type: string + resultCode: + description: "The result of the payment. For more information, see [Result\ + \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ + \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ + \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ + \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ + \ \u2013 The transaction does not require 3D Secure authentication. Returned\ + \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ + * **Authorised** \u2013 The payment was successfully authorised. This\ + \ state serves as an indicator to proceed with the delivery of goods and\ + \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ + \ payment has been cancelled (either by the shopper or the merchant) before\ + \ processing was completed. This is a final state.\n* **ChallengeShopper**\ + \ \u2013 The issuer requires further shopper interaction before the payment\ + \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ + \ \u2013 There was an error when the payment was being processed. The\ + \ reason is given in the `refusalReason` field. This is a final state.\n\ + * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ + \ fingerprint before the payment can be authenticated. Returned for 3D\ + \ Secure 2 transactions.\n* **Pending** \u2013 Indicates that it is not\ + \ possible to obtain the final status of the payment. This can happen\ + \ if the systems providing final status information for the payment are\ + \ unavailable, or if the shopper needs to take further action to complete\ + \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ + \ contains additional information that you need to present to a shopper,\ + \ so that they can use it to complete a payment.\n* **Received** \u2013\ + \ Indicates the payment has successfully been received by Adyen, and will\ + \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ + \ \u2013 Indicates the shopper should be redirected to an external web\ + \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ + \ the payment was refused. The reason is given in the `refusalReason`\ + \ field. This is a final state." + enum: + - AuthenticationFinished + - Authorised + - Cancelled + - ChallengeShopper + - Error + - IdentifyShopper + - Pending + - PresentToShopper + - Received + - RedirectShopper + - Refused + - Success + type: string + shopperLocale: + description: The shopperLocale. + type: string + threeDS2ResponseData: + x-addedInVersion: '67' + description: Response of the 3D Secure 2 authentication. + $ref: '#/components/schemas/ThreeDS2ResponseData' + threeDS2Result: + x-addedInVersion: '41' + description: Result of the 3D Secure 2 authentication. + $ref: '#/components/schemas/ThreeDS2Result' + threeDSPaymentData: + x-addedInVersion: '67' + description: When non-empty, contains a value that you must submit to the + `/payments/details` endpoint as `paymentData`. + type: string + PaymentDonationRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + authenticationData: + x-addedInVersion: '69' + description: Data for 3DS authentication. + $ref: '#/components/schemas/AuthenticationData' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + checkoutAttemptId: + x-addedInVersion: '68' + description: Checkout attempt ID that corresponds to the Id generated for + tracking user payment journey. + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + donationAccount: + description: Donation account to which the transaction is credited. + type: string + donationOriginalPspReference: + description: PSP reference of the transaction from which the donation token + is generated. Required when `donationToken` is provided. + type: string + donationToken: + description: Donation token received in the `/payments` call. + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.authenticationOnly` 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + - donationAccount + PaymentLinkResponse: + properties: + allowedPaymentMethods: + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The payment amount and currency. + $ref: '#/components/schemas/Amount' + applicationInfo: + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + description: The address where to send the invoice. + $ref: '#/components/schemas/Address' + blockedPaymentMethods: + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + captureDelayHours: + x-addedInVersion: '69' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + countryCode: + description: The shopper's two-letter country code. + type: string + dateOfBirth: + x-addedInVersion: '69' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + deliverAt: + description: 'The date and time when the purchased goods should be delivered. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**.' + format: date-time + type: string + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + description: + description: 'A short description visible on the payment page. + + Maximum length: 280 characters.' + type: string + expiresAt: + description: 'The date when the payment link expires. + + + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, + for example, **2020-12-18T10:15:30+01:00**. + + + The maximum expiry date is 70 days after the payment link is created. + + + If not provided, the payment link expires 24 hours after it was created.' + type: string + id: + x-addedInVersion: '51' + description: A unique identifier of the payment link. + readOnly: true + type: string + installmentOptions: + additionalProperties: + $ref: '#/components/schemas/InstallmentOption' + description: A set of key-value pairs that specifies the installment options + available per payment method. The key must be a payment method name in + lowercase. For example, **card** to specify installment options for all + cards, or **visa** or **mc**. The value must be an object containing the + installment options. + type: object + lineItems: + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + This parameter is required for open invoice (_buy now, pay later_) payment + methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mcc: + x-addedInVersion: '69' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier for which the payment link + is created. + type: string + merchantOrderReference: + description: This reference allows linking multiple transactions to each + other for reporting purposes (for example, order auth-rate). The reference + should be unique per billing cycle. + type: string + metadata: + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limitations: + + * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: + "Metadata size exceeds limit" + + * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata + key size exceeds limit" + + * A key cannot have the name `checkout.linkId`. Any value that you provide + with this key is going to be replaced by the real payment link ID.' + type: object + recurringProcessingModel: + description: "Defines a recurring payment type.\nPossible values:\n* **Subscription**\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or has variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + reference: + description: A reference that is used to uniquely identify the payment in + future communications about the payment status. + type: string + requiredShopperFields: + x-addedInVersion: '67' + description: "List of fields that the shopper has to provide on the payment\ + \ page before completing the payment. For more information, refer to [Provide\ + \ shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information).\n\ + \nPossible values:\n* **billingAddress** \u2013 The address where to send\ + \ the invoice.\n* **deliveryAddress** \u2013 The address where the purchased\ + \ goods should be delivered.\n* **shopperEmail** \u2013 The shopper's\ + \ email address.\n* **shopperName** \u2013 The shopper's full name.\n\ + * **telephoneNumber** \u2013 The shopper's phone number.\n" + items: + enum: + - billingAddress + - deliveryAddress + - shopperEmail + - shopperName + - telephoneNumber + type: string + type: array + returnUrl: + description: 'Website URL used for redirection after payment is completed. + + If provided, a **Continue** button will be shown on the payment page. + If shoppers select the button, they are redirected to the specified URL.' + type: string + reusable: + description: Indicates whether the payment link can be reused for multiple + payments. If not provided, this defaults to **false** which means the + link can be used for one successful payment only. + type: boolean + riskData: + x-addedInVersion: '65' + description: Any risk-related settings to apply to the payment. + $ref: '#/components/schemas/RiskData' + shopperEmail: + description: The shopper's email address. + type: string + shopperLocale: + description: 'The language to be used in the payment page, specified by + a combination of a language and country code. For example, `en-US`. + + + For a list of shopper locales that Pay by Link supports, refer to [Language + and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization).' + type: string + shopperName: + description: The shopper's full name. This object is required for some payment + methods such as AfterPay, Klarna, or if you're enrolled in the PayPal + Seller Protection program. + $ref: '#/components/schemas/Name' + shopperReference: + description: 'Your reference to uniquely identify this shopper, for example + user ID or account ID. Minimum length: 3 characters. + + > Your reference must not include personally identifiable information + (PII), for example name or email address.' + type: string + shopperStatement: + x-addedInVersion: '69' + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '69' + description: The shopper's social security number. + type: string + splitCardFundingSources: + x-addedInVersion: '69' + default: false + description: Boolean value indicating whether the card payment method should + be split into separate debit and credit options. + type: boolean + splits: + description: An array of objects specifying how the payment should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed + description: 'Status of the payment link. Possible values: + + * **active**: The link can be used to make payments. + + * **expired**: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + + * **completed**: The shopper completed the payment. + + * **paymentPending**: The shopper is in the process of making the payment. + Applies to payment methods with an asynchronous flow.' + enum: + - active + - completed + - expired + - paid + - paymentPending + type: string + store: + description: The physical store, for which this payment is processed. + type: string + storePaymentMethodMode: + x-addedInVersion: '68' + description: "Indicates if the details of the payment method will be stored\ + \ for the shopper. Possible values:\n* **disabled** \u2013 No details\ + \ will be stored (default).\n* **askForConsent** \u2013 If the `shopperReference`\ + \ is provided, the UI lets the shopper choose if they want their payment\ + \ details to be stored.\n* **enabled** \u2013 If the `shopperReference`\ + \ is provided, the details will be stored without asking the shopper for\ + \ consent." + enum: + - askForConsent + - disabled + - enabled + type: string + telephoneNumber: + x-addedInVersion: '68' + description: The shopper's telephone number. + type: string + themeId: + x-addedInVersion: '67' + description: A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) + to customize the appearance of the payment page. If not specified, the + payment page is rendered according to the theme set as default in your + Customer Area. + type: string + url: + description: The URL at which the shopper can complete the payment. + readOnly: true + type: string + required: + - amount + - reference + - merchantAccount + - id + - url + - status + PaymentMethod: + properties: + brand: + x-addedInVersion: '65' + description: 'Brand for the selected gift card. For example: plastix, hmclub.' + type: string + brands: + x-addedInVersion: '49' + description: 'List of possible brands. For example: visa, mc.' + items: + type: string + type: array + configuration: + additionalProperties: + type: string + description: The configuration of the payment method. + type: object + fundingSource: + x-addedInVersion: '53' + description: The funding source of the payment method. + enum: + - debit + type: string + group: + description: The group where this payment method belongs to. + $ref: '#/components/schemas/PaymentMethodGroup' + inputDetails: + deprecated: true + description: All input details to be provided to complete the payment with + this payment method. + items: + $ref: '#/components/schemas/InputDetail' + type: array + issuers: + x-addedInVersion: '68' + description: A list of issuers for this payment method. + items: + $ref: '#/components/schemas/PaymentMethodIssuer' + type: array + name: + description: The displayable name of this payment method. + type: string + type: + description: The unique payment method code. + type: string + PaymentMethodGroup: + properties: + name: + description: The name of the group. + type: string + paymentMethodData: + description: Echo data to be used if the payment method is displayed as + part of this group. + type: string + type: + description: The unique code of the group. + type: string + PaymentMethodIssuer: + properties: + disabled: + default: false + description: A boolean value indicating whether this issuer is unavailable. + Can be `true` whenever the issuer is offline. + type: boolean + id: + description: The unique identifier of this issuer, to submit in requests + to /payments. + type: string + name: + description: A localized name of the issuer. + type: string + required: + - id + - name + PaymentMethodsRequest: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + allowedPaymentMethods: + x-addedInVersion: '33' + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + blockedPaymentMethods: + x-addedInVersion: '33' + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type` from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + channel: + description: 'The platform where a payment transaction takes place. This + field can be used for filtering out payment methods that are only available + on specific platforms. Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + countryCode: + description: The shopper's country code. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + order: + x-addedInVersion: '64' + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + splitCardFundingSources: + x-addedInVersion: '53' + default: false + description: Boolean value indicating whether the card payment method should + be split into separate debit and credit options. + type: boolean + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + required: + - merchantAccount + PaymentMethodsResponse: + properties: + paymentMethods: + description: Detailed list of payment methods required to generate payment + forms. + items: + $ref: '#/components/schemas/PaymentMethod' + type: array + storedPaymentMethods: + x-addedInVersion: '49' + description: List of all stored payment methods. + items: + $ref: '#/components/schemas/StoredPaymentMethod' + type: array + PaymentRefundResource: + properties: + amount: + description: The refund amount. + $ref: '#/components/schemas/Amount' + lineItems: + description: 'Price and product information of the refunded items, required + for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). + + > This field is required for partial refunds with 3x 4x Oney, Affirm, + Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentPspReference: + description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment to refund. ' + type: string + pspReference: + description: Adyen's 16-character reference associated with the refund request. + type: string + reference: + description: Your reference for the refund request. + type: string + splits: + description: An array of objects specifying how the amount should be split + between accounts when using Adyen for Platforms. For details, refer to + [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). + items: + $ref: '#/components/schemas/Split' + type: array + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - amount + - pspReference + - paymentPspReference + PaymentRequest: + properties: + accountInfo: + x-addedInVersion: '40' + description: 'Shopper account information for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/AccountInfo' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + authenticationData: + x-addedInVersion: '69' + description: Data for 3DS authentication. + $ref: '#/components/schemas/AuthenticationData' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + browserInfo: + description: 'The shopper''s browser information. + + > For 3D Secure, the full object is required for web integrations. For + mobile app integrations, include the `userAgent` and `acceptHeader` fields + to indicate that your integration can support a redirect in case a payment + is routed to 3D Secure 1.' + $ref: '#/components/schemas/BrowserInfo' + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + checkoutAttemptId: + x-addedInVersion: '68' + description: Checkout attempt ID that corresponds to the Id generated for + tracking user payment journey. + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + deviceFingerprint: + x-addedInVersion: '2' + description: A string containing the shopper's device fingerprint. For more + information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). + maxLength: 5000 + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + merchantRiskIndicator: + x-addedInVersion: '40' + description: 'Additional risk fields for 3D Secure 2. + + > For 3D Secure 2 transactions, we recommend that you include this object + to increase the chances of achieving a frictionless flow.' + $ref: '#/components/schemas/MerchantRiskIndicator' + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + mpiData: + description: Authentication data produced by an MPI (Mastercard SecureCode, + Visa Secure, or Cartes Bancaires). + $ref: '#/components/schemas/ThreeDSecureData' + order: + description: The order information required for partial payments. + $ref: '#/components/schemas/CheckoutOrder' + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + x-addedInVersion: '40' + description: 'Required for the 3D Secure 2 `channel` **Web** integration. + + + Set this parameter to the origin URL of the page that you are loading + the 3D Secure Component from.' + maxLength: 8000 + type: string + paymentMethod: + description: The type and required details of a payment method to use. + oneOf: + - $ref: '#/components/schemas/AchDetails' + - $ref: '#/components/schemas/AfterpayDetails' + - $ref: '#/components/schemas/AmazonPayDetails' + - $ref: '#/components/schemas/AndroidPayDetails' + - $ref: '#/components/schemas/ApplePayDetails' + - $ref: '#/components/schemas/BacsDirectDebitDetails' + - $ref: '#/components/schemas/BillDeskDetails' + - $ref: '#/components/schemas/BlikDetails' + - $ref: '#/components/schemas/CardDetails' + - $ref: '#/components/schemas/CellulantDetails' + - $ref: '#/components/schemas/DokuDetails' + - $ref: '#/components/schemas/DotpayDetails' + - $ref: '#/components/schemas/DragonpayDetails' + - $ref: '#/components/schemas/EcontextVoucherDetails' + - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' + - $ref: '#/components/schemas/GiropayDetails' + - $ref: '#/components/schemas/GooglePayDetails' + - $ref: '#/components/schemas/IdealDetails' + - $ref: '#/components/schemas/KlarnaDetails' + - $ref: '#/components/schemas/MasterpassDetails' + - $ref: '#/components/schemas/MbwayDetails' + - $ref: '#/components/schemas/MobilePayDetails' + - $ref: '#/components/schemas/MolPayDetails' + - $ref: '#/components/schemas/OpenInvoiceDetails' + - $ref: '#/components/schemas/PayPalDetails' + - $ref: '#/components/schemas/PayUUpiDetails' + - $ref: '#/components/schemas/PayWithGoogleDetails' + - $ref: '#/components/schemas/PaymentDetails' + - $ref: '#/components/schemas/RatepayDetails' + - $ref: '#/components/schemas/SamsungPayDetails' + - $ref: '#/components/schemas/SepaDirectDebitDetails' + - $ref: '#/components/schemas/StoredPaymentMethodDetails' + - $ref: '#/components/schemas/UpiCollectDetails' + - $ref: '#/components/schemas/UpiIntentDetails' + - $ref: '#/components/schemas/VippsDetails' + - $ref: '#/components/schemas/VisaCheckoutDetails' + - $ref: '#/components/schemas/WeChatPayDetails' + - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' + - $ref: '#/components/schemas/ZipDetails' + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + recurringProcessingModel: + x-addedInVersion: '30' + description: "Defines a recurring payment type.\nAllowed values:\n* `Subscription`\ + \ \u2013 A transaction for a fixed or variable amount, which follows a\ + \ fixed schedule.\n* `CardOnFile` \u2013 With a card-on-file (CoF) transaction,\ + \ card details are stored to enable one-click or omnichannel journeys,\ + \ or simply to streamline the checkout process. Any subscription not following\ + \ a fixed schedule is also considered a card-on-file transaction.\n* `UnscheduledCardOnFile`\ + \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ + \ that occurs on a non-fixed schedule and/or have variable amounts. For\ + \ example, automatic top-ups when a cardholder's balance drops below a\ + \ certain amount.\n" + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + redirectFromIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + back from the issuer. + type: string + redirectToIssuerMethod: + x-addedInVersion: '32' + description: Specifies the redirect method (GET or POST) when redirecting + to the issuer. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDS2RequestData: + x-addedInVersion: '40' + description: Request fields for 3D Secure 2. To check if any of the following + fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments) + or [Classic integration](https://docs.adyen.com/classic-integration) documentation. + $ref: '#/components/schemas/ThreeDS2RequestData' + threeDSAuthenticationOnly: + x-addedInVersion: '50' + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.authenticationOnly` 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 + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - paymentMethod + PaymentResponse: + properties: + action: + x-addedInVersion: '49' + description: Action to be taken for completing the payment. + oneOf: + - $ref: '#/components/schemas/CheckoutAwaitAction' + - $ref: '#/components/schemas/CheckoutBankTransferAction' + - $ref: '#/components/schemas/CheckoutDonationAction' + - $ref: '#/components/schemas/CheckoutOneTimePasscodeAction' + - $ref: '#/components/schemas/CheckoutQrCodeAction' + - $ref: '#/components/schemas/CheckoutRedirectAction' + - $ref: '#/components/schemas/CheckoutSDKAction' + - $ref: '#/components/schemas/CheckoutThreeDS2Action' + - $ref: '#/components/schemas/CheckoutVoucherAction' + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' + - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' + - $ref: '#/components/schemas/ResponseAdditionalDataCard' + - $ref: '#/components/schemas/ResponseAdditionalDataCommon' + - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' + - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' + - $ref: '#/components/schemas/ResponseAdditionalDataOpi' + - $ref: '#/components/schemas/ResponseAdditionalDataSepa' + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs** > **Additional data settings**.' + type: object + amount: + x-addedInVersion: '52' + description: Authorised amount in the transaction. + $ref: '#/components/schemas/Amount' + donationToken: + x-addedInVersion: '66' + description: Donation Token containing payment details for Adyen Giving. + type: string + fraudResult: + description: The fraud result properties of the payment. + $ref: '#/components/schemas/FraudResult' + merchantReference: + x-addedInVersion: '49' + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + order: + description: Contains updated information regarding the order in case order + information was provided in the request. + $ref: '#/components/schemas/CheckoutOrderResponse' + paymentMethod: + x-addedInVersion: '69' + description: 'The payment method used in the transaction. Only returned + for successful payments + + ' + $ref: '#/components/schemas/ResponsePaymentMethod' + pspReference: + description: 'Adyen''s 16-character string reference associated with the + transaction/request. This value is globally unique; quote it when communicating + with us about this request. + + + > For payment methods that require a redirect or additional action, you + will get this value in the `/payments/details` response.' + type: string + refusalReason: + description: 'If the payment''s authorisation is refused or an error occurs + during authorisation, this field holds Adyen''s mapped reason for the + refusal or a description of the error. When a transaction fails, the authorisation + response includes `resultCode` and `refusalReason` values. + + + For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' + type: string + refusalReasonCode: + x-addedInVersion: '37' + description: Code that specifies the refusal reason. For more information, + see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). + type: string + resultCode: + description: "The result of the payment. For more information, see [Result\ + \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ + \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ + \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ + \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ + \ \u2013 The transaction does not require 3D Secure authentication. Returned\ + \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ + * **Authorised** \u2013 The payment was successfully authorised. This\ + \ state serves as an indicator to proceed with the delivery of goods and\ + \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ + \ payment has been cancelled (either by the shopper or the merchant) before\ + \ processing was completed. This is a final state.\n* **ChallengeShopper**\ + \ \u2013 The issuer requires further shopper interaction before the payment\ + \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ + \ \u2013 There was an error when the payment was being processed. The\ + \ reason is given in the `refusalReason` field. This is a final state.\n\ + * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ + \ fingerprint before the payment can be authenticated. Returned for 3D\ + \ Secure 2 transactions.\n* **Pending** \u2013 Indicates that it is not\ + \ possible to obtain the final status of the payment. This can happen\ + \ if the systems providing final status information for the payment are\ + \ unavailable, or if the shopper needs to take further action to complete\ + \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ + \ contains additional information that you need to present to a shopper,\ + \ so that they can use it to complete a payment.\n* **Received** \u2013\ + \ Indicates the payment has successfully been received by Adyen, and will\ + \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ + \ \u2013 Indicates the shopper should be redirected to an external web\ + \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ + \ the payment was refused. The reason is given in the `refusalReason`\ + \ field. This is a final state." + enum: + - AuthenticationFinished + - Authorised + - Cancelled + - ChallengeShopper + - Error + - IdentifyShopper + - Pending + - PresentToShopper + - Received + - RedirectShopper + - Refused + - Success + type: string + threeDS2ResponseData: + x-addedInVersion: '67' + description: Response of the 3D Secure 2 authentication. + $ref: '#/components/schemas/ThreeDS2ResponseData' + threeDS2Result: + x-addedInVersion: '41' + description: Result of the 3D Secure 2 authentication. + $ref: '#/components/schemas/ThreeDS2Result' + threeDSPaymentData: + x-addedInVersion: '67' + description: When non-empty, contains a value that you must submit to the + `/payments/details` endpoint as `paymentData`. + type: string + PaymentReversalResource: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentPspReference: + description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) + of the payment to reverse. ' + type: string + pspReference: + description: Adyen's 16-character reference associated with the reversal + request. + type: string + reference: + description: Your reference for the reversal request. + type: string + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - pspReference + - paymentPspReference + PaymentSetupRequest: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/AdditionalData3DSecure' + - $ref: '#/components/schemas/AdditionalDataAirline' + - $ref: '#/components/schemas/AdditionalDataCarRental' + - $ref: '#/components/schemas/AdditionalDataCommon' + - $ref: '#/components/schemas/AdditionalDataLevel23' + - $ref: '#/components/schemas/AdditionalDataLodging' + - $ref: '#/components/schemas/AdditionalDataOpenInvoice' + - $ref: '#/components/schemas/AdditionalDataOpi' + - $ref: '#/components/schemas/AdditionalDataRatepay' + - $ref: '#/components/schemas/AdditionalDataRetry' + - $ref: '#/components/schemas/AdditionalDataRisk' + - $ref: '#/components/schemas/AdditionalDataRiskStandalone' + - $ref: '#/components/schemas/AdditionalDataSubMerchant' + - $ref: '#/components/schemas/AdditionalDataTemporaryServices' + - $ref: '#/components/schemas/AdditionalDataWallets' + description: 'This field contains additional data, which may be required + for a particular payment request. + + + The `additionalData` object consists of entries, each of which includes + the key and value.' + type: object + allowedPaymentMethods: + x-addedInVersion: '33' + description: 'List of payment methods to be presented to the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"allowedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + amount: + description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). + For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) + requests, set amount to 0 (zero). + $ref: '#/components/schemas/Amount' + applicationInfo: + x-addedInVersion: '40' + description: Information about your application. For more details, see [Building + Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). + $ref: '#/components/schemas/ApplicationInfo' + billingAddress: + x-addedInVersion: '4' + description: 'The address where to send the invoice. + + > The `billingAddress` object is required in the following scenarios. + Include all of the fields within this object. + + >* For 3D Secure 2 transactions in all browser-based and mobile implementations. + + >* For cross-border payouts to and from Canada.' + $ref: '#/components/schemas/Address' + blockedPaymentMethods: + x-addedInVersion: '33' + description: 'List of payment methods to be hidden from the shopper. To + refer to payment methods, use their `paymentMethod.type`from [Payment + methods overview](https://docs.adyen.com/payment-methods). + + + Example: `"blockedPaymentMethods":["ideal","giropay"]`' + items: + type: string + type: array + captureDelayHours: + x-addedInVersion: '2' + description: The delay between the authorisation and scheduled auto-capture, + specified in hours. + format: int32 + type: integer + channel: + description: 'The platform where a payment transaction takes place. This + field is optional for filtering out payment methods that are only available + on specific platforms. If this value is not set, then we will try to infer + it from the `sdkVersion` or `token`. + + + Possible values: + + * iOS + + * Android + + * Web' + enum: + - iOS + - Android + - Web + type: string + checkoutAttemptId: + x-addedInVersion: '68' + description: Checkout attempt ID that corresponds to the Id generated for + tracking user payment journey. + type: string + company: + x-addedInVersion: '32' + description: Information regarding the company. + $ref: '#/components/schemas/Company' + configuration: + description: Specify configurations to enable additional features. + $ref: '#/components/schemas/Configuration' + conversionId: + x-addedInVersion: '49' + description: Conversion ID that corresponds to the Id generated for tracking + user payment journey. + type: string + countryCode: + description: 'The shopper country. + + + Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + + Example: NL or DE' + type: string + dateOfBirth: + x-addedInVersion: '7' + description: 'The shopper''s date of birth. + + + Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' + format: date-time + type: string + dccQuote: + description: The forex quote as returned in the response of the forex service. + $ref: '#/components/schemas/ForexQuote' + deliveryAddress: + description: The address where the purchased goods should be delivered. + $ref: '#/components/schemas/Address' + deliveryDate: + x-addedInVersion: '8' + description: 'The date and time the purchased goods should be delivered. + + + Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD + + + Example: 2017-07-17T13:42:40.428+01:00' + format: date-time + type: string + enableOneClick: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the shopper will + be asked if the payment details should be stored for future one-click + payments. + type: boolean + enablePayOut: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for payouts. + type: boolean + enableRecurring: + x-addedInVersion: '32' + description: When true and `shopperReference` is provided, the payment details + will be tokenized for recurring payments. + type: boolean + entityType: + x-addedInVersion: '24' + description: The type of the entity the payment is processed for. + enum: + - NaturalPerson + - CompanyName + type: string + fraudOffset: + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + installments: + x-addedInVersion: '4' + description: Contains installment settings. For more information, refer + to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). + $ref: '#/components/schemas/Installments' + lineItems: + x-addedInVersion: '32' + description: 'Price and product information about the purchased items, to + be included on the invoice sent to the shopper. + + > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, + Ratepay, Zip and Atome.' + items: + $ref: '#/components/schemas/LineItem' + type: array + mandate: + description: The mandate details to initiate recurring transaction. + $ref: '#/components/schemas/Mandate' + mcc: + x-addedInVersion: '12' + description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) + (MCC) is a four-digit number, which relates to a particular market segment. + This code reflects the predominant activity that is conducted by the merchant. + type: string + merchantAccount: + description: The merchant account identifier, with which you want to process + the transaction. + type: string + merchantOrderReference: + x-addedInVersion: '9' + description: 'This reference allows linking multiple transactions to each + other for reporting purposes (i.e. order auth-rate). The reference should + be unique per billing cycle. + + The same merchant order reference should never be reused after the first + authorised attempt. If used, this field should be supplied for all incoming + authorisations. + + > We strongly recommend you send the `merchantOrderReference` value to + benefit from linking payment requests when authorisation retries take + place. In addition, we recommend you provide `retry.orderAttemptNumber`, + `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' + type: string + metadata: + x-addedInVersion: '17' + additionalProperties: + type: string + description: 'Metadata consists of entries, each of which includes a key + and a value. + + Limits: + + * Maximum 20 key-value pairs per request. When exceeding, the "177" error + occurs: "Metadata size exceeds limit". + + * Maximum 20 characters per key. + + * Maximum 80 characters per value. ' + type: object + orderReference: + description: When you are doing multiple partial (gift card) payments, this + is the `pspReference` of the first payment. We use this to link the multiple + payments to each other. As your own reference for linking multiple payments, + use the `merchantOrderReference`instead. + type: string + origin: + description: 'Required for the Web integration. + + + Set this parameter to the origin URL of the page that you are loading + the SDK from.' + type: string + recurringExpiry: + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + type: string + recurringFrequency: + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + reference: + description: 'The reference to uniquely identify a payment. This reference + is used in all communication with you about the payment status. We recommend + using a unique value per payment; however, it is not a requirement. + + If you need to provide multiple references for a transaction, separate + them with hyphens ("-"). + + Maximum length: 80 characters.' + type: string + returnUrl: + description: 'The URL to return to in case of a redirection. + + The format depends on the channel. This URL can have a maximum of 1024 + characters. + + * For web, include the protocol `http://` or `https://`. You can also + include your own additional query parameters, for example, shopper ID + or order reference number. + + Example: `https://your-company.com/checkout?shopperOrder=12xy` + + * For iOS, use the custom URL for your app. To know more about setting + custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). + + Example: `my-app://` + + * For Android, use a custom URL handled by an Activity on your app. You + can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). + + Example: `my-app://your.package.name`' + maxLength: 8000 + type: string + riskData: + description: Contains risk data, such as client-side data, used to identify + risk for a transaction. + $ref: '#/components/schemas/RiskData' + sdkVersion: + x-addedInVersion: '32' + description: The version of the SDK you are using (for Web SDK integrations + only). + type: string + sessionValidity: + description: 'The date and time until when the session remains valid, in + [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. + + + For example: 2020-07-18T15:42:40.428+01:00' + type: string + shopperEmail: + description: 'The shopper''s email address. We recommend that you provide + this data, as it is used in velocity fraud checks. + + > For 3D Secure 2 transactions, schemes require `shopperEmail` for all + browser-based and mobile implementations.' + type: string + shopperIP: + description: 'The shopper''s IP address. In general, we recommend that you + provide this data, as it is used in a number of risk checks (for instance, + number of payment attempts or location-based checks). + + > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based + implementations. + + This field is also mandatory for some merchants depending on your business + model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new).' + type: string + shopperInteraction: + description: 'Specifies the sales channel, through which the shopper gives + their card details, and whether the shopper is a returning customer. + + For the web service API, Adyen assumes Ecommerce shopper interaction by + default. + + + This field has the following possible values: + + * `Ecommerce` - Online transactions where the cardholder is present (online). + For better authorisation rates, we recommend sending the card security + code (CSC) along with the request. + + * `ContAuth` - Card on file and/or subscription transactions, where the + cardholder is known to the merchant (returning customer). If the shopper + is present (online), you can supply also the CSC to improve authorisation + (one-click payment). + + * `Moto` - Mail-order and telephone-order transactions where the shopper + is in contact with the merchant via email or telephone. + + * `POS` - Point-of-sale transactions where the shopper is physically present + to make a payment using a secure payment terminal.' + enum: + - Ecommerce + - ContAuth + - Moto + - POS + type: string + shopperLocale: + x-addedInVersion: '7' + description: The combination of a language code and a country code to specify + the language to be used in the payment. + type: string + shopperName: + x-addedInVersion: '7' + description: The shopper's full name. + $ref: '#/components/schemas/Name' + shopperReference: + description: "Required for recurring payments. \nYour reference to uniquely\ + \ identify this shopper, for example user ID or account ID. Minimum length:\ + \ 3 characters.\n> Your reference must not include personally identifiable\ + \ information (PII), for example name or email address." + type: string + shopperStatement: + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." + type: string + socialSecurityNumber: + x-addedInVersion: '4' + description: The shopper's social security number. + type: string + splits: + x-addedInVersion: '37' + description: An array of objects specifying how the payment should be split + when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). + items: + $ref: '#/components/schemas/Split' + type: array + store: + x-addedInVersion: '23' + description: The ecommerce or point-of-sale store that is processing the + payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) + for Adyen for Platforms. + maxLength: 16 + minLength: 1 + type: string + storePaymentMethod: + x-addedInVersion: '49' + description: When true and `shopperReference` is provided, the payment details + will be stored. + type: boolean + telephoneNumber: + x-addedInVersion: '7' + description: The shopper's telephone number. + type: string + threeDSAuthenticationOnly: + x-addedInVersion: '50' + deprecated: true + x-deprecatedInVersion: '69' + x-deprecatedMessage: Use `authenticationData.authenticationOnly` 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 + token: + description: 'The token obtained when initializing the SDK. + + + > This parameter is required for iOS and Android; not required for Web.' + type: string + trustedShopper: + x-addedInVersion: '37' + description: Set to true if the payment should be routed to a trusted MID. + type: boolean + required: + - merchantAccount + - reference + - amount + - returnUrl + - countryCode + PaymentSetupResponse: + properties: + paymentSession: + description: The encoded payment session that you need to pass to the SDK. + type: string + recurringDetails: + deprecated: true + description: The detailed list of stored payment details required to generate + payment forms. Will be empty if oneClick is set to false in the request. + items: + $ref: '#/components/schemas/RecurringDetail' + type: array + PaymentVerificationRequest: + properties: + payload: + description: Encrypted and signed payment result data. You should receive + this value from the Checkout SDK after the shopper completes the payment. + maxLength: 40000 + type: string + required: + - payload + PaymentVerificationResponse: + properties: + additionalData: + additionalProperties: + type: string + x-anyOf: + - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' + - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' + - $ref: '#/components/schemas/ResponseAdditionalDataCard' + - $ref: '#/components/schemas/ResponseAdditionalDataCommon' + - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' + - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' + - $ref: '#/components/schemas/ResponseAdditionalDataOpi' + - $ref: '#/components/schemas/ResponseAdditionalDataSepa' + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs** > **Additional data settings**.' + type: object + fraudResult: + description: The fraud result properties of the payment. + $ref: '#/components/schemas/FraudResult' + merchantReference: + description: A unique value that you provided in the initial `/paymentSession` + request as a `reference` field. + type: string + order: + description: Contains updated information regarding the order in case order + information was provided in the request. + $ref: '#/components/schemas/CheckoutOrderResponse' + pspReference: + description: Adyen's 16-character reference associated with the transaction/request. + This value is globally unique; quote it when communicating with us about + this request. + type: string + refusalReason: + description: 'If the payment''s authorisation is refused or an error occurs + during authorisation, this field holds Adyen''s mapped reason for the + refusal or a description of the error. When a transaction fails, the authorisation + response includes `resultCode` and `refusalReason` values. + + + For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' + type: string + refusalReasonCode: + x-addedInVersion: '37' + description: Code that specifies the refusal reason. For more information, + see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). + type: string + resultCode: + description: "The result of the payment. For more information, see [Result\ + \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ + \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ + \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ + \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ + \ \u2013 The transaction does not require 3D Secure authentication. Returned\ + \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ + * **Authorised** \u2013 The payment was successfully authorised. This\ + \ state serves as an indicator to proceed with the delivery of goods and\ + \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ + \ payment has been cancelled (either by the shopper or the merchant) before\ + \ processing was completed. This is a final state.\n* **ChallengeShopper**\ + \ \u2013 The issuer requires further shopper interaction before the payment\ + \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ + \ \u2013 There was an error when the payment was being processed. The\ + \ reason is given in the `refusalReason` field. This is a final state.\n\ + * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ + \ fingerprint before the payment can be authenticated. Returned for 3D\ + \ Secure 2 transactions.\n* **Pending** \u2013 Indicates that it is not\ + \ possible to obtain the final status of the payment. This can happen\ + \ if the systems providing final status information for the payment are\ + \ unavailable, or if the shopper needs to take further action to complete\ + \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ + \ contains additional information that you need to present to a shopper,\ + \ so that they can use it to complete a payment.\n* **Received** \u2013\ + \ Indicates the payment has successfully been received by Adyen, and will\ + \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ + \ \u2013 Indicates the shopper should be redirected to an external web\ + \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ + \ the payment was refused. The reason is given in the `refusalReason`\ + \ field. This is a final state." + enum: + - AuthenticationFinished + - Authorised + - Cancelled + - ChallengeShopper + - Error + - IdentifyShopper + - Pending + - PresentToShopper + - Received + - RedirectShopper + - Refused + - Success + type: string + serviceError: + description: The type of the error. + $ref: '#/components/schemas/ServiceError2' + shopperLocale: + description: The shopperLocale value provided in the payment request. + type: string + required: + - merchantReference + - shopperLocale + Phone: + properties: + cc: + description: "Country code. Length: 1\u20133 characters." + maxLength: 3 + minLength: 1 + type: string + subscriber: + description: 'Subscriber number. Maximum length: 15 characters.' + maxLength: 15 + type: string + RatepayDetails: + additionalProperties: false + properties: + billingAddress: + description: The address where to send the invoice. + type: string + deliveryAddress: + description: The address where the goods should be delivered. + type: string + personalDetails: + description: Shopper name, date of birth, phone number, and email address. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: ratepay + description: '**ratepay**' + enum: + - ratepay + - ratepay_directdebit + type: string + required: + - type + title: Ratepay + Recurring: + properties: + contract: + description: "The type of recurring contract to be used.\nPossible values:\n\ + * `ONECLICK` \u2013 Payment details can be used to initiate a one-click\ + \ payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n\ + * `RECURRING` \u2013 Payment details can be used without the card security\ + \ code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n\ + * `ONECLICK,RECURRING` \u2013 Payment details can be used regardless of\ + \ whether the shopper is on your site or not.\n* `PAYOUT` \u2013 Payment\ + \ details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts)." + enum: + - ONECLICK + - RECURRING + - PAYOUT + type: string + recurringDetailName: + description: A descriptive name for this detail. + type: string + recurringExpiry: + x-addedInVersion: '40' + description: Date after which no further authorisations shall be performed. + Only for 3D Secure 2. + format: date-time + type: string + recurringFrequency: + x-addedInVersion: '40' + description: Minimum number of days between authorisations. Only for 3D + Secure 2. + type: string + tokenService: + x-addedInVersion: '25' + description: The name of the token service. + enum: + - VISATOKENSERVICE + - MCTOKENSERVICE + type: string + RecurringDetail: + properties: + brand: + x-addedInVersion: '65' + description: 'Brand for the selected gift card. For example: plastix, hmclub.' + type: string + brands: + x-addedInVersion: '49' + description: 'List of possible brands. For example: visa, mc.' + items: + type: string + type: array + configuration: + additionalProperties: + type: string + description: The configuration of the payment method. + type: object + fundingSource: + x-addedInVersion: '53' + description: The funding source of the payment method. + enum: + - debit + type: string + group: + description: The group where this payment method belongs to. + $ref: '#/components/schemas/PaymentMethodGroup' + inputDetails: + deprecated: true + description: All input details to be provided to complete the payment with + this payment method. + items: + $ref: '#/components/schemas/InputDetail' + type: array + issuers: + x-addedInVersion: '68' + description: A list of issuers for this payment method. + items: + $ref: '#/components/schemas/PaymentMethodIssuer' + type: array + name: + description: The displayable name of this payment method. + type: string + recurringDetailReference: + description: The reference that uniquely identifies the recurring detail. + type: string + storedDetails: + description: Contains information on previously stored payment details. + $ref: '#/components/schemas/StoredDetails' + type: + description: The unique payment method code. + type: string + Redirect: + properties: + data: + additionalProperties: + type: string + description: When the redirect URL must be accessed via POST, use this data + to post to the redirect URL. + type: object + method: + description: 'The web method that you must use to access the redirect URL. + + + Possible values: GET, POST.' + enum: + - GET + - POST + type: string + url: + description: The URL, to which you must redirect a shopper to complete a + payment. + type: string + ResponseAdditionalData3DSecure: + properties: + cardHolderInfo: + description: 'Information provided by the issuer to the cardholder. If this + field is present, you need to display this information to the cardholder. ' + type: string + cavv: + description: The Cardholder Authentication Verification Value (CAVV) for + the 3D Secure authentication session, as a Base64-encoded 20-byte array. + type: string + cavvAlgorithm: + description: The CAVV algorithm used. + type: string + scaExemptionRequested: + description: "Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\ + \ that Adyen requested for the payment.\n\n Possible values:\n* **lowValue**\ + \ \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** " + type: string + threeds2.cardEnrolled: + description: Indicates whether a card is enrolled for 3D Secure 2. + type: boolean + ResponseAdditionalDataBillingAddress: + properties: + billingAddress.city: + description: The billing address city passed in the payment request. + type: string + billingAddress.country: + description: 'The billing address country passed in the payment request. + + + Example: NL' + type: string + billingAddress.houseNumberOrName: + description: The billing address house number or name passed in the payment + request. + type: string + billingAddress.postalCode: + description: 'The billing address postal code passed in the payment request. + + + Example: 1011 DJ' + type: string + billingAddress.stateOrProvince: + description: 'The billing address state or province passed in the payment + request. + + + Example: NH' + type: string + billingAddress.street: + description: The billing address street passed in the payment request. + type: string + ResponseAdditionalDataCard: + properties: + cardBin: + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. + + + Example: 521234' + type: string + cardHolderName: + description: The cardholder name passed in the payment request. + type: string + cardIssuingBank: + description: The bank or the financial institution granting lines of credit + through card association branded payment cards. This information can be + included when available. + type: string + cardIssuingCountry: + description: 'The country where the card was issued. + + + Example: US' + type: string + cardIssuingCurrency: + description: "The currency in which the card is issued, if this information\ + \ is available. Provided as the currency code or currency number from\ + \ the ISO-4217 standard. \n\nExample: USD" + type: string + cardPaymentMethod: + description: 'The card payment method used for the transaction. + + + Example: amex' + type: string + cardSummary: + description: 'The last four digits of a card number. + + + > Returned only in case of a card payment.' + type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string + ResponseAdditionalDataCommon: + properties: + acquirerAccountCode: + description: 'The name of the Adyen acquirer account. + + + Example: PayPalSandbox_TestAcquirer + + + > Only relevant for PayPal transactions.' + type: string + acquirerCode: + description: 'The name of the acquirer processing the payment request. + + + Example: TestPmmAcquirer' + type: string + acquirerReference: + description: 'The reference number that can be used for reconciliation in + case a non-Adyen acquirer is used for settlement. + + + Example: 7C9N3FNBKT9' + type: string + alias: + description: 'The Adyen alias of the card. + + + Example: H167852639363479' + type: string + aliasType: + description: 'The type of the card alias. + + + Example: Default' + type: string + authCode: + description: 'Authorisation code: + + * When the payment is authorised successfully, this field holds the authorisation + code for the payment. + + * When the payment is not authorised, this field is empty. + + + Example: 58747' + type: string + authorisationMid: + description: Merchant ID known by the acquirer. + type: string + authorisedAmountCurrency: + description: The currency of the authorised amount, as a three-character + [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + type: string + authorisedAmountValue: + description: 'Value of the amount authorised. + + + This amount is represented in minor units according to the [following + table](https://docs.adyen.com/development-resources/currency-codes).' + type: string + avsResult: + description: 'The AVS result code of the payment, which provides information + about the outcome of the AVS check. + + + For possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs).' + type: string + avsResultRaw: + description: 'Raw AVS result received from the acquirer, where available. + + + Example: D' + type: string + bic: + description: 'BIC of a bank account. + + + Example: TESTNL01 + + + > Only relevant for SEPA Direct Debit transactions.' + type: string + coBrandedWith: + description: Includes the co-branded card information. + type: string + cvcResult: + description: The result of CVC verification. + example: 1 Matches + type: string + cvcResultRaw: + description: The raw result of CVC verification. + example: M + type: string + dsTransID: + description: Supported for 3D Secure 2. The unique transaction identifier + assigned by the DS to identify a single transaction. + type: string + eci: + description: 'The Electronic Commerce Indicator returned from the schemes + for the 3DS payment session. + + + Example: 02' + type: string + expiryDate: + description: 'The expiry date on the card. + + + Example: 6/2016 + + + > Returned only in case of a card payment.' + type: string + extraCostsCurrency: + description: 'The currency of the extra amount charged due to additional + amounts set in the skin used in the HPP payment request. + + + Example: EUR' + type: string + extraCostsValue: + description: The value of the extra amount charged due to additional amounts + set in the skin used in the HPP payment request. The amount is in minor + units. + type: string + fraudCheck-[itemNr]-[FraudCheckname]: + description: The fraud score due to a particular fraud check. The fraud + check name is found in the key of the key-value pair. + type: string + fraudManualReview: + description: Indicates if the payment is sent to manual review. + type: string + fraudResultType: + description: The fraud result properties of the payment. + enum: + - GREEN + - FRAUD + type: string + fundingSource: + description: 'Information regarding the funding type of the card. The possible + return values are: + + * CHARGE + + * CREDIT + + * DEBIT + + * PREPAID + + * PREPAID_RELOADABLE + + + * PREPAID_NONRELOADABLE + + * DEFFERED_DEBIT + + + > This functionality requires additional configuration on Adyen''s end. + To enable it, contact the Support Team. + + + For receiving this field in the notification, enable **Include Funding + Source** in **Notifications** > **Additional settings**.' + type: string + fundsAvailability: + description: 'Indicates availability of funds. + + + Visa: + + * "I" (fast funds are supported) + + * "N" (otherwise) + + + Mastercard: + + * "I" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM + list) + + * "N" (otherwise) + + + > Returned when you verify a card BIN or estimate costs, and only if payoutEligible + is "Y" or "D".' + type: string + inferredRefusalReason: + description: 'Provides the more granular indication of why a transaction + was refused. When a transaction fails with either "Refused", "Restricted + Card", "Transaction Not Permitted", "Not supported" or "DeclinedNon Generic" + refusalReason from the issuer, Adyen cross references its PSP-wide data + for extra insight into the refusal reason. If an inferred refusal reason + is available, the `inferredRefusalReason`, field is populated and the + `refusalReason`, is set to "Not Supported". + + + Possible values: + + + * 3D Secure Mandated + + * Closed Account + + * ContAuth Not Supported + + * CVC Mandated + + * Ecommerce Not Allowed + + * Crossborder Not Supported + + * Card Updated + + + * Low Authrate Bin + + * Non-reloadable prepaid card' + type: string + isCardCommercial: + description: Indicates if the card is used for business purposes only. + type: string + issuerCountry: + description: 'The issuing country of the card based on the BIN list that + Adyen maintains. + + + Example: JP' + type: string + liabilityShift: + description: A Boolean value indicating whether a liability shift was offered + for this payment. + type: string + mcBankNetReferenceNumber: + description: 'The `mcBankNetReferenceNumber`, is a minimum of six characters + and a maximum of nine characters long. + + + > Contact Support Team to enable this field.' + type: string + merchantAdviceCode: + description: 'A code and message that issuers send to provide more details + about the payment. This field is especially useful when implementing a + retry logic for declined payments. + + + Possible values: + + + * **01: New account information available** + + + * **02: Cannot approve at this time, try again later** + + + * **03: Do not try again** + + + * **04: Token requirements not fulfilled for this token type** + + + * **21: Payment Cancellation** (only for Mastercard) + + + ' + enum: + - '01: New account information available' + - '02: Cannot approve at this time, try again later' + - '03: Do not try again' + - '04: Token requirements not fulfilled for this token type' + - '21: Payment Cancellation' + type: string + merchantReference: + description: The reference provided for the transaction. + type: string + networkTxReference: + description: 'Returned in the response if you are not tokenizing with Adyen + and are using the Merchant-initiated transactions (MIT) framework from + Mastercard or Visa. + + + This contains either the Mastercard Trace ID or the Visa Transaction ID.' + type: string + ownerName: + description: 'The owner name of a bank account. + + + Only relevant for SEPA Direct Debit transactions.' + type: string + paymentAccountReference: + description: The Payment Account Reference (PAR) value links a network token + with the underlying primary account number (PAN). The PAR value consists + of 29 uppercase alphanumeric characters. + type: string + paymentMethod: + description: The payment method used in the transaction. + type: string + paymentMethodVariant: + description: 'The Adyen sub-variant of the payment method used for the payment + request. + + + For more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant). + + + Example: mcpro' + type: string + payoutEligible: + description: 'Indicates whether a payout is eligible or not for this card. + + + Visa: + + * "Y" + + * "N" + + + Mastercard: + + * "Y" (domestic and cross-border) + + + * "D" (only domestic) + + * "N" (no MoneySend) + + * "U" (unknown)' + type: string + realtimeAccountUpdaterStatus: + description: 'The response code from the Real Time Account Updater service. + + + Possible return values are: + + * CardChanged + + * CardExpiryChanged + + * CloseAccount + + + * ContactCardAccountHolder' + type: string + receiptFreeText: + description: Message to be displayed on the terminal. + type: string + recurring.contractTypes: + x-addedInVersion: '40' + description: The recurring contract types applicable to the transaction. + type: string + recurring.firstPspReference: + description: 'The `pspReference`, of the first recurring payment that created + the recurring detail. + + + This functionality requires additional configuration on Adyen''s end. + To enable it, contact the Support Team.' + type: string + recurring.recurringDetailReference: + description: The reference that uniquely identifies the recurring transaction. + type: string + recurring.shopperReference: + x-addedInVersion: '40' + description: The provided reference of the shopper for a recurring transaction. + type: string + recurringProcessingModel: + x-addedInVersion: '40' + description: The processing model used for the recurring transaction. + enum: + - CardOnFile + - Subscription + - UnscheduledCardOnFile + type: string + referred: + description: 'If the payment is referred, this field is set to true. + + + This field is unavailable if the payment is referred and is usually not + returned with ecommerce transactions. + + + Example: true' + type: string + refusalReasonRaw: + description: 'Raw refusal reason received from the acquirer, where available. + + + Example: AUTHORISED' + type: string + requestAmount: + description: The amount of the payment request. + type: string + requestCurrencyCode: + description: The currency of the payment request. + type: string + shopperInteraction: + description: 'The shopper interaction type of the payment request. + + + Example: Ecommerce' + type: string + shopperReference: + description: 'The shopperReference passed in the payment request. + + + Example: AdyenTestShopperXX' + type: string + terminalId: + description: 'The terminal ID used in a point-of-sale payment. + + + Example: 06022622' + type: string + threeDAuthenticated: + description: 'A Boolean value indicating whether 3DS authentication was + completed on this payment. + + + Example: true' + type: string + threeDAuthenticatedResponse: + description: 'The raw 3DS authentication result from the card issuer. + + + Example: N' + type: string + threeDOffered: + description: 'A Boolean value indicating whether 3DS was offered for this + payment. + + + Example: true' + type: string + threeDOfferedResponse: + description: 'The raw enrollment result from the 3DS directory services + of the card schemes. + + + Example: Y' + type: string + threeDSVersion: + description: The 3D Secure 2 version. + type: string + visaTransactionId: + description: 'The `visaTransactionId`, has a fixed length of 15 numeric + characters. + + + > Contact Support Team to enable this field.' + type: string + xid: + description: 'The 3DS transaction ID of the 3DS session sent in notifications. + The value is Base64-encoded and is returned for transactions with directoryResponse + ''N'' or ''Y''. If you want to submit the xid in your 3D Secure 1 request, + use the `mpiData.xid`, field. + + + Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' + type: string + ResponseAdditionalDataInstallments: + properties: + installmentPaymentData.installmentType: + description: Type of installment. The value of `installmentType` should + be **IssuerFinanced**. + type: string + installmentPaymentData.option[itemNr].annualPercentageRate: + description: Annual interest rate. + type: string + installmentPaymentData.option[itemNr].firstInstallmentAmount: + description: First Installment Amount in minor units. + type: string + installmentPaymentData.option[itemNr].installmentFee: + description: Installment fee amount in minor units. + type: string + installmentPaymentData.option[itemNr].interestRate: + description: Interest rate for the installment period. + type: string + installmentPaymentData.option[itemNr].maximumNumberOfInstallments: + description: Maximum number of installments possible for this payment. + type: string + installmentPaymentData.option[itemNr].minimumNumberOfInstallments: + description: Minimum number of installments possible for this payment. + type: string + installmentPaymentData.option[itemNr].numberOfInstallments: + description: Total number of installments possible for this payment. + type: string + installmentPaymentData.option[itemNr].subsequentInstallmentAmount: + description: Subsequent Installment Amount in minor units. + type: string + installmentPaymentData.option[itemNr].totalAmountDue: + description: Total amount in minor units. + type: string + installmentPaymentData.paymentOptions: + description: 'Possible values: + + * PayInInstallmentsOnly + + * PayInFullOnly + + * PayInFullOrInstallments' + type: string + installments.value: + description: 'The number of installments that the payment amount should + be charged with. + + + Example: 5 + + > Only relevant for card payments in countries that support installments.' + type: string + ResponseAdditionalDataNetworkTokens: + properties: + networkToken.available: + description: Indicates whether a network token is available for the specified + card. + type: string + networkToken.bin: + description: The Bank Identification Number of a tokenized card, which is + the first six digits of a card number. + type: string + networkToken.tokenSummary: + description: The last four digits of a network token. + type: string + ResponseAdditionalDataOpi: + properties: + opi.transToken: + description: 'Returned in the response if you included `opi.includeTransToken: + true` in an ecommerce payment request. This contains an Oracle Payment + Interface token that you can store in your Oracle Opera database to identify + tokenized ecommerce transactions. For more information and required settings, + see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).' + type: string + ResponseAdditionalDataSepa: + properties: + sepadirectdebit.dateOfSignature: + description: 'The transaction signature date. + + + Format: yyyy-MM-dd' + type: string + sepadirectdebit.mandateId: + description: Its value corresponds to the pspReference value of the transaction. + type: string + sepadirectdebit.sequenceType: + description: 'This field can take one of the following values: + + * OneOff: (OOFF) Direct debit instruction to initiate exactly one direct + debit transaction. + + + * First: (FRST) Initial/first collection in a series of direct debit instructions. + + * Recurring: (RCUR) Direct debit instruction to carry out regular direct + debit transactions initiated by the creditor. + + * Final: (FNAL) Last/final collection in a series of direct debit instructions. + + + Example: OOFF' + type: string + ResponsePaymentMethod: + properties: + brand: + description: The card brand. Only returned for card payments. + type: string + type: + description: The payment method type. + type: string + title: paymentResponse + RiskData: + properties: + clientData: + description: Contains client-side data, like the device fingerprint, cookies, + and specific browser settings. + type: string + customFields: + x-addedInVersion: '65' + additionalProperties: + type: string + description: Any custom fields used as part of the input to configured risk + rules. + type: object + fraudOffset: + x-addedInVersion: '65' + description: An integer value that is added to the normal fraud score. The + value can be either positive or negative. + format: int32 + type: integer + profileReference: + x-addedInVersion: '65' + description: The risk profile to assign to this payment. When left empty, + the merchant-level account's default risk profile will be applied. + type: string + SDKEphemPubKey: + properties: + crv: + description: The `crv` value as received from the 3D Secure 2 SDK. + type: string + kty: + description: The `kty` value as received from the 3D Secure 2 SDK. + type: string + x: + description: The `x` value as received from the 3D Secure 2 SDK. + type: string + y: + description: The `y` value as received from the 3D Secure 2 SDK. + type: string + SamsungPayDetails: + additionalProperties: false + properties: + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + samsungPayToken: + description: The payload you received from the Samsung Pay SDK response. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: samsungpay + description: '**samsungpay**' + enum: + - samsungpay + type: string + required: + - samsungPayToken + title: Samsung Pay + SepaDirectDebitDetails: + additionalProperties: false + properties: + iban: + description: The International Bank Account Number (IBAN). + type: string + ownerName: + description: The name of the bank account holder. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: sepadirectdebit + description: '**sepadirectdebit**' + enum: + - sepadirectdebit + - sepadirectdebit_amazonpay + type: string + required: + - iban + - ownerName + title: SEPA Direct Debit + ServiceError: + properties: + additionalData: + x-addedInVersion: '46' + additionalProperties: + type: string + description: 'Contains additional information about the payment. Some data + fields are included only if you select them first: Go to **Customer Area** + > **Account** > **API URLs**.' + type: object + errorCode: + description: The error code mapped to the error message. + type: string + errorType: + description: The category of the error. + type: string + message: + description: A short explanation of the issue. + type: string + pspReference: + description: The PSP reference of the payment. + type: string + status: + description: The HTTP response status. + format: int32 + type: integer + ServiceError2: + properties: + errorCode: + type: string + errorType: + type: string + message: + type: string + pspReference: + type: string + ShopperInput: + properties: + billingAddress: + description: 'Specifies visibility of billing address fields. + + + Permitted values: + + * editable + + * hidden + + * readOnly' + enum: + - editable + - hidden + - readOnly + type: string + deliveryAddress: + description: 'Specifies visibility of delivery address fields. + + + Permitted values: + + * editable + + * hidden + + * readOnly' + enum: + - editable + - hidden + - readOnly + type: string + personalDetails: + description: 'Specifies visibility of personal details. + + + Permitted values: + + * editable + + * hidden + + * readOnly' + enum: + - editable + - hidden + - readOnly + type: string + ShopperInteractionDevice: + properties: + locale: + description: Locale on the shopper interaction device. + type: string + os: + description: Operating system running on the shopper interaction device. + type: string + osVersion: + description: Version of the operating system on the shopper interaction + device. + type: string + Split: + properties: + account: + description: 'Unique identifier of the account where the split amount should + be sent. This is required if `type` is **MarketPlace** or **BalanceAccount**. + + + ' + type: string + amount: + description: The amount of this split. + $ref: '#/components/schemas/SplitAmount' + description: + description: A description of this split. + type: string + reference: + description: 'Your reference for the split, which you can use to link the + split to other operations such as captures and refunds. + + + This is required if `type` is **MarketPlace** or **BalanceAccount**. For + the other types, we also recommend sending a reference so you can reconcile + the split and the associated payment in the transaction overview and in + the reports. If the reference is not provided, the split is reported as + part of the aggregated [TransferBalance record type](https://docs.adyen.com/reporting/marketpay-payments-accounting-report) + in Adyen for Platforms.' + type: string + type: + description: 'The type of split. + + Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, + **MarketPlace**, **BalanceAccount**, **Remainder**.' + enum: + - BalanceAccount + - Commission + - Default + - MarketPlace + - PaymentFee + - Remainder + - VAT + - Verification + type: string + required: + - amount + - type + SplitAmount: + properties: + currency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + + + If this value is not provided, the currency in which the payment is made + will be used.' + maxLength: 3 + minLength: 3 + type: string + value: + description: The amount in [minor units](https://docs.adyen.com/development-resources/currency-codes). + format: int64 + type: integer + required: + - value + StandalonePaymentCancelResource: + properties: + merchantAccount: + description: The merchant account that is used to process the payment. + type: string + paymentReference: + description: The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) + of the payment to cancel. + type: string + pspReference: + description: Adyen's 16-character reference associated with the cancel request. + type: string + reference: + description: Your reference for the cancel request. + type: string + status: + description: The status of your request. This will always have the value + **received**. + enum: + - received + type: string + required: + - status + - merchantAccount + - pspReference + - paymentReference + StoredDetails: + properties: + bank: + description: The stored bank account. + $ref: '#/components/schemas/BankAccount' + card: + description: The stored card information. + $ref: '#/components/schemas/Card' + emailAddress: + description: The email associated with stored payment details. + type: string + StoredPaymentMethod: + properties: + brand: + description: The brand of the card. + type: string + expiryMonth: + description: The month the card expires. + type: string + expiryYear: + description: The last two digits of the year the card expires. For example, + **22** for the year 2022. + type: string + holderName: + description: The unique payment method code. + type: string + iban: + x-addedInVersion: '67' + description: The IBAN of the bank account. + type: string + id: + description: A unique identifier of this stored payment method. + type: string + lastFour: + description: The last four digits of the PAN. + type: string + name: + description: The display name of the stored payment method. + type: string + networkTxReference: + x-addedInVersion: '68' + description: 'Returned in the response if you are not tokenizing with Adyen + and are using the Merchant-initiated transactions (MIT) framework from + Mastercard or Visa. + + + This contains either the Mastercard Trace ID or the Visa Transaction ID.' + type: string + ownerName: + x-addedInVersion: '67' + description: The name of the bank account holder. + type: string + shopperEmail: + description: "The shopper\u2019s email address." + type: string + supportedShopperInteractions: + description: The supported shopper interactions for this stored payment + method. + items: + type: string + type: array + type: + description: The type of payment method. + type: string + StoredPaymentMethodDetails: + additionalProperties: false + properties: + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + description: The payment method type. + enum: + - bcmc_mobile + - bcmc_mobile_QR + - bcmc_mobile_app + - momo_wallet + - momo_wallet_app + - paymaya_wallet + - grabpay_SG + - grabpay_MY + - grabpay_TH + - grabpay_ID + - grabpay_VN + - grabpay_PH + - oxxo + - gcash + - kakaopay + - truemoney + type: string + title: Stored Payment Method + SubInputDetail: + properties: + configuration: + additionalProperties: + type: string + description: Configuration parameters for the required input. + type: object + items: + description: In case of a select, the items to choose from. + items: + $ref: '#/components/schemas/Item' + type: array + key: + description: The value to provide in the result. + type: string + optional: + description: True if this input is optional to provide. + type: boolean + type: + description: The type of the required input. + type: string + value: + description: The value can be pre-filled, if available. + type: string + ThreeDS2RequestData: + properties: + acctInfo: + x-addedInVersion: '68' + description: "Additional information about the Cardholder\u2019s 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** \u2014\ + \ Not applicable\n* **02** \u2014 Credit\n* **03** \u2014 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** \u2014 Shipping\ + \ Address matches Billing Address.\n* **N** \u2014 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. + + Allowed values: + + * `noPreference` + + * `requestNoChallenge` + + * `requestChallenge` + + * `requestChallengeAsMandate` + + ' + enum: + - noPreference + - requestNoChallenge + - requestChallenge + - requestChallengeAsMandate + type: string + deviceChannel: + description: 'The environment of the shopper. + + Allowed values: + + * `app` + + * `browser`' + type: string + deviceRenderOptions: + description: 'Display options for the 3D Secure 2 SDK. + + Optional 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. + + > 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: + default: 2.1.0 + 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 + purchaseInstalData: + x-addedInVersion: '68' + description: "Indicates the maximum number of authorisations permitted for\ + \ instalment payments. Length: 1\u20133 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. + + Required for `deviceChannel` set to **app**.' + type: string + sdkEncData: + description: 'The `sdkEncData` value as received from the 3D Secure 2 SDK. + + Required for `deviceChannel` set to **app**.' + type: string + sdkEphemPubKey: + description: 'The `sdkEphemPubKey` value as received from the 3D Secure + 2 SDK. + + Required for `deviceChannel` set to **app**.' + $ref: '#/components/schemas/SDKEphemPubKey' + sdkMaxTimeout: + default: 60 + description: '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.' + format: int32 + type: integer + sdkReferenceNumber: + description: 'The `sdkReferenceNumber` value as received from the 3D Secure + 2 SDK. + + Only for `deviceChannel` set to **app**.' + type: string + sdkTransID: + description: 'The `sdkTransID` value as received from the 3D Secure 2 SDK. + + Only for `deviceChannel` set to **app**.' + type: string + sdkVersion: + x-addedInVersion: '40' + description: "Version of the 3D Secure 2 mobile SDK. \nOnly for `deviceChannel`\ + \ set to **app**." + 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' + x-enum: + - description: No preference + value: '01' + - description: No challenge requested + value: '02' + - description: Challenge requested (3DS Requestor preference) + value: '03' + - description: Challenge requested (Mandate) + value: '04' + - description: No challenge (transactional risk analysis is already performed) + value: '05' + description: "Indicates whether a challenge is requested for this transaction.\ + \ Possible values:\n* **01** \u2014 No preference\n* **02** \u2014 No\ + \ challenge requested\n* **03** \u2014 Challenge requested (3DS Requestor\ + \ preference)\n* **04** \u2014 Challenge requested (Mandate)\n* **05**\ + \ \u2014 No challenge (transactional risk analysis is already performed)" + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + 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** \u2014 Goods/Service Purchase\n\ + * **03** \u2014 Check Acceptance\n* **10** \u2014 Account Funding\n* **11**\ + \ \u2014 Quasi-Cash Transaction\n* **28** \u2014 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' + required: + - deviceChannel + ThreeDS2ResponseData: + properties: + acsChallengeMandated: + type: string + acsOperatorID: + type: string + acsReferenceNumber: + type: string + acsSignedContent: + type: string + acsTransID: + type: string + acsURL: + type: string + authenticationType: + type: string + cardHolderInfo: + type: string + cavvAlgorithm: + type: string + challengeIndicator: + type: string + dsReferenceNumber: + type: string + dsTransID: + type: string + exemptionIndicator: + type: string + messageVersion: + type: string + riskScore: + type: string + sdkEphemPubKey: + type: string + threeDSServerTransID: + type: string + transStatus: + type: string + transStatusReason: + type: string + ThreeDS2Result: + properties: + authenticationValue: + description: The `authenticationValue` value as defined in the 3D Secure + 2 specification. + type: string + cavvAlgorithm: + x-addedInVersion: '50' + description: The algorithm used by the ACS to calculate the authentication + value, only for Cartes Bancaires integrations. + type: string + challengeCancel: + x-addedInVersion: '67' + description: Indicator informing the Access Control Server (ACS) and the + Directory Server (DS) that the authentication has been cancelled. For + possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata). + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + - '06' + - '07' + type: string + challengeIndicator: + x-addedInVersion: '67' + description: 'Specifies a preference for receiving a challenge from the + issuer. + + Allowed values: + + * `noPreference` + + * `requestNoChallenge` + + * `requestChallenge` + + * `requestChallengeAsMandate` + + ' + enum: + - noPreference + - requestNoChallenge + - requestChallenge + - requestChallengeAsMandate + type: string + dsTransID: + description: The `dsTransID` value as defined in the 3D Secure 2 specification. + type: string + eci: + description: The `eci` value as defined in the 3D Secure 2 specification. + type: string + exemptionIndicator: + x-addedInVersion: '67' + description: 'Indicates the exemption type that was applied by the issuer + to the authentication, if exemption applied. + + Allowed values: + + * `lowValue` + + * `secureCorporate` + + * `trustedBeneficiary` + + * `transactionRiskAnalysis` + + ' + enum: + - lowValue + - secureCorporate + - trustedBeneficiary + - transactionRiskAnalysis + type: string + messageVersion: + x-addedInVersion: '49' + description: The `messageVersion` value as defined in the 3D Secure 2 specification. + type: string + riskScore: + x-addedInVersion: '67' + description: Risk score calculated by Cartes Bancaires Directory Server + (DS). + type: string + threeDSServerTransID: + description: The `threeDSServerTransID` value as defined in the 3D Secure + 2 specification. + type: string + timestamp: + description: The `timestamp` value of the 3D Secure 2 authentication. + type: string + transStatus: + description: The `transStatus` value as defined in the 3D Secure 2 specification. + type: string + transStatusReason: + description: Provides information on why the `transStatus` field has the + specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values). + type: string + whiteListStatus: + x-addedInVersion: '49' + description: The `whiteListStatus` value as defined in the 3D Secure 2 specification. + type: string + ThreeDSRequestData: + properties: + nativeThreeDS: + x-addedInVersion: '69' + x-enum: + - description: Use native 3D Secure authentication when available. + value: preferred + description: 'Indicates if [native 3D Secure authentication](https://docs.adyen.com/online-payments/3d-secure/native-3ds2) + should be used when available. + + + Possible values: + + * **preferred**: Use native 3D Secure authentication when available.' + enum: + - preferred + type: string + threeDSVersion: + x-addedInVersion: '69' + x-enum: + - description: Version 2.1.0 + value: 2.1.0 + - description: Version 2.2.0 + value: 2.2.0 + description: 'The version of 3D Secure to use. + + + Possible values: + + + * **2.1.0** + + * **2.2.0**' + enum: + - 2.1.0 + - 2.2.0 + type: string + ThreeDSRequestorAuthenticationInfo: + properties: + threeDSReqAuthData: + description: 'Data that documents and supports a specific authentication + process. Maximum length: 2048 bytes.' + type: string + threeDSReqAuthMethod: + description: "Mechanism used by the Cardholder to authenticate to the 3DS\ + \ Requestor. Allowed values:\n* **01** \u2014 No 3DS Requestor authentication\ + \ occurred (for example, cardholder \u201Clogged in\u201D as guest).\n\ + * **02** \u2014 Login to the cardholder account at the 3DS Requestor system\ + \ using 3DS Requestor\u2019s own credentials.\n* **03** \u2014 Login to\ + \ the cardholder account at the 3DS Requestor system using federated ID.\n\ + * **04** \u2014 Login to the cardholder account at the 3DS Requestor system\ + \ using issuer credentials.\n* **05** \u2014 Login to the cardholder account\ + \ at the 3DS Requestor system using third-party authentication.\n* **06**\ + \ \u2014 Login to the cardholder account at the 3DS Requestor system using\ + \ FIDO Authenticator." + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + - '06' + maxLength: 2 + minLength: 2 + type: string + threeDSReqAuthTimestamp: + description: 'Date and time in UTC of the cardholder authentication. Format: + YYYYMMDDHHMM' + maxLength: 12 + minLength: 12 + type: string + ThreeDSRequestorPriorAuthenticationInfo: + properties: + threeDSReqPriorAuthData: + description: 'Data that documents and supports a specific authentication + process. Maximum length: 2048 bytes.' + type: string + threeDSReqPriorAuthMethod: + description: "Mechanism used by the Cardholder to previously authenticate\ + \ to the 3DS Requestor. Allowed values:\n* **01** \u2014 Frictionless\ + \ authentication occurred by ACS.\n* **02** \u2014 Cardholder challenge\ + \ occurred by ACS.\n* **03** \u2014 AVS verified.\n* **04** \u2014 Other\ + \ issuer methods." + enum: + - '01' + - '02' + - '03' + - '04' + maxLength: 2 + minLength: 2 + type: string + threeDSReqPriorAuthTimestamp: + description: 'Date and time in UTC of the prior cardholder authentication. + Format: YYYYMMDDHHMM' + maxLength: 12 + minLength: 12 + type: string + threeDSReqPriorRef: + description: 'This data element provides additional information to the ACS + to determine the best approach for handing a request. This data element + contains an ACS Transaction ID for a prior authenticated transaction. + For example, the first recurring transaction that was authenticated with + the cardholder. Length: 30 characters.' + maxLength: 36 + minLength: 36 + type: string + ThreeDSecureData: + properties: + authenticationResponse: + description: 'In 3D Secure 1, the authentication response if the shopper + was redirected. + + + In 3D Secure 2, this is the `transStatus` from the challenge result. If + the transaction was frictionless, omit this parameter.' + enum: + - Y + - N + - U + - A + type: string + cavv: + description: The cardholder authentication value (base64 encoded, 20 bytes + in a decoded form). + format: byte + type: string + cavvAlgorithm: + description: The CAVV algorithm used. Include this only for 3D Secure 1. + type: string + challengeCancel: + x-addedInVersion: '67' + description: Indicator informing the Access Control Server (ACS) and the + Directory Server (DS) that the authentication has been cancelled. For + possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata). + enum: + - '01' + - '02' + - '03' + - '04' + - '05' + - '06' + - '07' + type: string + directoryResponse: + description: 'In 3D Secure 1, this is the enrollment response from the 3D + directory server. + + + In 3D Secure 2, this is the `transStatus` from the `ARes`.' + enum: + - A + - C + - D + - I + - N + - R + - U + - Y + type: string + dsTransID: + x-addedInVersion: '40' + description: Supported for 3D Secure 2. The unique transaction identifier + assigned by the Directory Server (DS) to identify a single transaction. + type: string + eci: + description: The electronic commerce indicator. + type: string + riskScore: + x-addedInVersion: '67' + description: Risk score calculated by Directory Server (DS). Required for + Cartes Bancaires integrations. + type: string + threeDSVersion: + x-addedInVersion: '40' + description: The version of the 3D Secure protocol. + type: string + tokenAuthenticationVerificationValue: + x-addedInVersion: '68' + description: Network token authentication verification value (TAVV). The + network token cryptogram. + format: byte + type: string + transStatusReason: + x-addedInVersion: '67' + description: Provides information on why the `transStatus` field has the + specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values). + type: string + xid: + description: Supported for 3D Secure 1. The transaction identifier (Base64-encoded, + 20 bytes in a decoded form). + format: byte + type: string + UpdatePaymentLinkRequest: + properties: + status: + x-enum: + - description: The link can be used to make payments. + value: active + - description: 'The shopper is in the process of making the payment. Applies + to payment methods with an asynchronous flow. + + + Added in v68.' + value: paymentPending + - description: 'The shopper completed the payment. + + + Removed in v66 and replaced with **completed**.' + value: paid + - description: The expiry date for the payment link has passed. Shoppers + can no longer use the link to make payments. + value: expired + - description: 'The shopper completed the payment. + + + Added in v66 and replaces **paid**.' + value: completed + description: 'Status of the payment link. Possible values: + + * **expired**' + enum: + - expired + type: string + required: + - status + UpiCollectDetails: + additionalProperties: false + properties: + billingSequenceNumber: + description: The sequence number for the debit. For example, send **2** + if this is the second debit for the subscription. The sequence number + is included in the notification sent to the shopper. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + shopperNotificationReference: + description: The `shopperNotificationReference` returned in the response + when you requested to notify the shopper. Used for recurring payment only. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: upi_collect + description: '**upi_collect**' + enum: + - upi_collect + type: string + virtualPaymentAddress: + description: The virtual payment address for UPI. + type: string + required: + - type + - billingSequenceNumber + title: UPI Collect + UpiIntentDetails: + additionalProperties: false + properties: + type: + default: upi_intent + description: '**upi_intent**' + enum: + - upi_intent + type: string + required: + - type + title: UPI Intent + VippsDetails: + additionalProperties: false + properties: + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + telephoneNumber: + description: '' + type: string + type: + default: vipps + description: '**vipps**' + enum: + - vipps + type: string + required: + - telephoneNumber + title: Vipps + VisaCheckoutDetails: + additionalProperties: false + properties: + fundingSource: + description: The funding source that should be used when multiple sources + are available. For Brazilian combo cards, by default the funding source + is credit. To use debit, set this value to **debit**. + enum: + - debit + type: string + type: + default: visacheckout + description: '**visacheckout**' + enum: + - visacheckout + type: string + visaCheckoutCallId: + description: The Visa Click to Pay Call ID value. When your shopper selects + a payment and/or a shipping address from Visa Click to Pay, you will receive + a Visa Click to Pay Call ID. + type: string + required: + - visaCheckoutCallId + title: Visa Checkout + WeChatPayDetails: + additionalProperties: false + properties: + type: + default: wechatpay + description: '**wechatpay**' + enum: + - wechatpay + - wechatpay_pos + type: string + title: WeChat Pay + WeChatPayMiniProgramDetails: + additionalProperties: false + properties: + appId: + type: string + openid: + type: string + type: + default: wechatpayMiniProgram + description: '**wechatpayMiniProgram**' + enum: + - wechatpayMiniProgram + type: string + title: WeChat Pay - Mini Program + ZipDetails: + additionalProperties: false + properties: + clickAndCollect: + description: Set this to **true** if the shopper would like to pick up and + collect their order, instead of having the goods delivered to them. + type: string + recurringDetailReference: + deprecated: true + x-deprecatedInVersion: '49' + x-deprecatedMessage: Use `storedPaymentMethodId` instead. + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + storedPaymentMethodId: + x-addedInVersion: '49' + description: This is the `recurringDetailReference` returned in the response + when you created the token. + type: string + type: + default: zip + description: '**zip**' + enum: + - zip + - zip_pos + type: string + title: Zip + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + headers: + Idempotency-Key: + description: The idempotency key used for processing the request. Present if + the key was provided in the request. + schema: + type: string + parameters: + Idempotency-Key: + description: A unique identifier for the message with a maximum of 64 characters + (we recommend a UUID). + example: 37ca9c97-d1d1-4c62-89e8-706891a563ed + name: Idempotency-Key + in: header + schema: + type: string + examples: + generic-400: + summary: Response code 400. Bad request. + value: + status: 400 + errorCode: '702' + message: 'Unexpected input: ", expected: }' + errorType: validation + generic-401: + summary: Response code 401. Unauthorized. + value: + status: 401 + errorCode: '000' + message: HTTP Status Response - Unauthorized + errorType: security + generic-403: + summary: Response code 403. Forbidden. + value: + status: 403 + errorCode: '901' + message: Invalid Merchant Account + errorType: security + pspReference: 881611827877203B + generic-422: + summary: Response code 422. Unprocessable entity. + value: + status: 422 + errorCode: '14_030' + message: Return URL is missing. + errorType: validation + pspReference: '8816118280275544' + generic-500: + summary: Response code 500. Internal server error. + value: + status: 500 + errorCode: '905' + message: Payment details are not supported + errorType: configuration + pspReference: '8516091485743033' + get-paymentLinks-linkId-basic-200: + summary: Example response for request 'basic' + value: + amount: + currency: EUR + value: 8700 + countryCode: NL + expiresAt: '2021-04-08T14:06:39Z' + merchantAccount: TestMerchantCheckout + reference: shopper-reference-ekvL83 + shopperLocale: hu-HU + shopperReference: shopper-reference-LZfdWZ + status: active + url: https://test.adyen.link/PL61C53A8B97E6915A + patch-paymentLinks-linkId-basic: + summary: Update the status of a payment link + value: + status: expired + patch-paymentLinks-linkId-basic-200: + summary: Example response for request 'basic' + value: + amount: + currency: EUR + value: 8700 + countryCode: NL + expiresAt: '2021-04-08T14:06:39Z' + merchantAccount: TestMerchantCheckout + reference: shopper-reference-ekvL83 + shopperLocale: hu-HU + shopperReference: shopper-reference-LZfdWZ + status: expired + url: https://test.adyen.link/PL61C53A8B97E6915A + post-cardDetails-basic: + summary: Get a list of brands on a card + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + post-cardDetails-basic-200: + summary: List of brands on the card + description: Example response when the card is co-branded. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'true' + post-cardDetails-supported-brands: + summary: Get a list of brands on a card specifying your supported card brands + description: Example request for getting a list of brands on a card using the + first 6 digits of the card number and including the card brands you support. + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + cardNumber: '411111' + supportedBrands: + - visa + - mc + - amex + post-cardDetails-supported-brands-200: + summary: List of brands on the card when you specify your supported card brands + description: Example response when the card is co-branded, and you only support + Visa. + value: + brands: + - type: visa + supported: 'true' + - type: cartebancaire + supported: 'false' + post-donations-donations: + summary: Start a donation transaction + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + donationToken: YOUR_DONATION_TOKEN + donationOriginalPspReference: 991559660454807J + donationAccount: CHARITY_ACCOUNT + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + post-donations-donations-200: + summary: Example response + value: + id: UNIQUE_RESOURCE_ID + status: completed + donationAccount: CHARITY_ACCOUNT + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + payment: + pspReference: '8535762347980628' + resultCode: Authorised + amount: + currency: EUR + value: 1000 + merchantReference: YOUR_DONATION_REFERENCE + post-donations-donations-with-token: + summary: Start a donation transaction with a token + value: + amount: + currency: EUR + value: 1000 + reference: YOUR_DONATION_REFERENCE + paymentMethod: + type: scheme + storedPaymentMethodId: '8415718415172200' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + donationAccount: CHARITY_ACCOUNT + shopperInteraction: ContAuth + shopperReference: YOUR_UNIQUE_SHOPPER_ID + recurringProcessingModel: CardOnFile + post-orders-basic: + summary: Create an order + value: + reference: YOUR_ORDER_REFERENCE + amount: + value: 2500 + currency: EUR + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-orders-basic-200: + summary: Example response for request 'basic' + value: + pspReference: '8616178914061985' + resultCode: Success + expiresAt: '2021-04-09T14:16:46Z' + orderData: Ab02b4c0!BQABAgCxXvknCldOcRElkxY8Za7iyym4Wv8aDzyNwmj/3nh4G6YtwnUIJHaK62NlN4oIsACdkn1FEjBwKlheG40jvXcYGBk4KFV5WvOhTVCpv/KXnkrI7xQv/u2lE7U4wA+HPB6K4Zj2L8xO/ogZi+zGZqFs5m16jmkH7ku6FzXygXLNuUCuOlmlXSZhdkHHTNVQSq1MELDK9OL74y532ETRPTCNxx8WlEiZB+LDqYrPvH9GgigtD5kw8Do45jfFfG72kWBEgfYqp4mbUmBB9ebXFYZKfF0qvW1x7A2Y9+/MFlTIdXfKW484bJeDBCTTrmKGXIj+U4r5imr5fXTyNLcrxyUqwrb9jg+5B4qg1XB6Cgj5UPlSI4O62I7v0s5TTj69dzLwUQRxSQbwLrZVGYavXzeVKI54BVLRV3d/+BbPvTqnTo34UhfZbPlOx9F2eyaS0ZXdOKnHw89uGUgxUpLsMqnbRysi/pxpZaulel+0mExb68wVxb/7Teob5eRG4gp7cfZVZs6tLXOYWL+W0TqIlsa3hWsfM0LeaovzkoDtW/pK5JABXwMtLig9tsxoEh9ONYtIzkXC21LZ8ebiuSIMaPizjF8yca+QxrCZalQsu6uKnBz/mm8nnsflaGU2QS5zcoxk1RudL1Bl36LM9UZGPpFEYWiYA4sUsnNLw7peJjWCGhDepnwMv4TlgsEtoDtz1T54AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifRslOdmfgUHTXl66WPD9xoW2whIeRx/jR++2MqNE16x6zQy+KtDN8/h60crZwmqkjVTQYqQlsYSYDHSIyb4wnnay16/5il1yS7vN3UCLaTXjYBIAyyx6Wr9j4P3CI/etB+PpviHoESC4mV6ZN4whMDQyziQ8s230GtboXbh42qND7rk9phySBogowQlXrtF+l2n2F46nyif0owEgik5fGARfvjZtY2w23s30KMLNwU4gWSvX4H6RMVS8TfZH2fKfNrwB3tZUXwYkELs5ntaHysswq5Mn5aq2BKAMHu/Rh/wureMSI73Qi0avjrzWCwzt3JH4wnzErMnOZwSdgA== + reference: shopper-reference-ekvL83 + remainingAmount: + currency: EUR + value: 2500 + post-orders-cancel-basic: + summary: Cancel an order + value: + order: + pspReference: '8815517812932012' + orderData: 823fh892f8f18f4...148f13f9f3f + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-orders-cancel-basic-200: + summary: Example response for request 'basic' + value: + pspReference: '8816178914079738' + resultCode: Received + post-originKeys-basic: + summary: Get origin keys + value: + originDomains: + - https://www.your-domain1.com + - https://www.your-domain2.com + - https://www.your-domain3.com + post-originKeys-basic-200: + summary: Example response for request 'basic' + value: + originKeys: + https://www.your-domain1.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4xLmNvbQ.pvbYlrXz0ICP4kwMJXDGDLVMqALhwXr1MSRjT-fkhvw + https://www.your-domain3.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4zLmNvbQ.FrTpVz7_RzAywKasM0kXCRoMfoMkKIKaxjFymRGORIc + https://www.your-domain2.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4yLmNvbQ.LdN9kvJ35fYFFiBSJA4idMnwwxJ5_yXpeNS__Ap5wkg + post-paymentLinks-basic: + summary: Create a payment link + value: + reference: YOUR_ORDER_NUMBER + amount: + value: 1250 + currency: BRL + countryCode: BR + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperReference: YOUR_UNIQUE_SHOPPER_ID + shopperEmail: test@email.com + shopperLocale: pt-BR + billingAddress: + street: Roque Petroni Jr + postalCode: '59000060' + city: "S\xE3o Paulo" + houseNumberOrName: '999' + country: BR + stateOrProvince: SP + deliveryAddress: + street: Roque Petroni Jr + postalCode: '59000060' + city: "S\xE3o Paulo" + houseNumberOrName: '999' + country: BR + stateOrProvince: SP + post-paymentLinks-basic-200: + summary: Example response for request 'basic' + value: + amount: + currency: EUR + value: 1250 + expiresAt: '2021-04-09T14:17:31Z' + reference: shopper-reference-ekvL83 + url: https://test.adyen.link/PL6DB3157D27FFBBCF + post-paymentMethods-balance-basic: + summary: Retrieve gift card balance + value: + paymentMethod: + type: givex + number: '4126491073027401' + cvc: '737' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentMethods-balance-plastix: + summary: Retrieve gift card balance + value: + paymentMethod: + type: plastix + number: '4010100000000000000' + cvc: '73737' + holderName: BALANCE EUR 888 + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentMethods-balance-plastix-200: + summary: Example response for request 'plastix' + value: + additionalData: + nonScheme.transactionLimit: '5000' + nonScheme.transactionLimitCcy: EUR + pspReference: 851617891188737F + resultCode: Success + balance: + currency: EUR + value: 888 + post-paymentMethods-basic: + summary: Get available payment methods + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentMethods-basic-200: + summary: Example response for request 'basic' + value: + paymentMethods: + - details: + - details: + - key: ownerName + type: text + - key: bankLocationId + type: text + - key: bankAccountNumber + type: text + key: bankAccount + type: bankAccount + name: ACH Direct Debit + type: ach + - name: Adyen Voucher + type: adyen_test_voucher + - details: + - details: + - key: firstName + type: text + - key: lastName + type: text + - items: + - id: M + name: male + - id: F + name: female + key: gender + type: radio + - key: dateOfBirth + type: date + - key: telephoneNumber + type: tel + - key: shopperEmail + type: emailAddress + key: personalDetails + type: fieldSet + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + key: billingAddress + type: address + - key: separateDeliveryAddress + optional: true + type: boolean + value: 'false' + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + key: deliveryAddress + optional: true + type: address + name: AfterPay Invoice + type: afterpay_default + - name: AfterPay DirectDebit + type: afterpay_directdebit + - name: Afterpay + type: afterpaytouch + - details: + - key: encryptedCardNumber + type: cardToken + - key: encryptedSecurityCode + type: cardToken + - key: encryptedExpiryMonth + type: cardToken + - key: encryptedExpiryYear + type: cardToken + - key: holderName + optional: true + type: text + name: Credit Card + type: scheme + - name: AliPay + type: alipay + - name: AliPay HK + type: alipay_hk + - name: AliPay + type: alipay_wap + - details: + - key: additionalData.androidpay.token + type: androidPayToken + name: Android Pay + type: androidpay + - details: + - key: additionalData.applepay.token + type: applePayToken + name: Apple Pay + type: applepay + - name: Credit Card via AsiaPay + type: asiapay + - name: China UnionPay + type: asiapay_unionpay + - name: Baby Gift Card + type: babygiftcard + - name: Baloto + type: baloto + - name: BancNet + type: bancnet + - name: Bank Transfer (BG) + type: bankTransfer_BG + - name: Bank Transfer (CH) + type: bankTransfer_CH + - name: Bank Transfer (DE) + type: bankTransfer_DE + - name: Bank Transfer (FI) + type: bankTransfer_FI + - name: Bank Transfer (GB) + type: bankTransfer_GB + - name: Bank Transfer (HU) + type: bankTransfer_HU + - name: SEPA Bank Transfer + type: bankTransfer_IBAN + - name: Bank Transfer (IE) + type: bankTransfer_IE + - name: Electronic Bank Transfer (MX) + type: bankTransfer_MX_linked + - name: Bank Transfer (MX) + type: bankTransfer_MX_offline + - name: Bank Transfer (NL) + type: bankTransfer_NL + - name: Bank Transfer (PL) + type: bankTransfer_PL + - name: Bank Transfer (SE) + type: bankTransfer_SE + - name: Bank Transfer (US) + type: bankTransfer_US + - name: Payconiq by Bancontact + type: bcmc_mobile + - name: Bijenkorf Cadeaucard + type: bijcadeaucard + - name: 99Bill + type: bill99 + - details: + - items: + - id: AUB_DIRECT + name: AU Small Finance Bank + - id: ALB_DIRECT + name: 'Allahabad Bank ' + - id: APG_DIRECT + name: Andhra Pragathi Grameena Bank + - id: BDN_DIRECT + name: Bandhan bank + - id: BBK_DIRECT + name: Bank of Bahrain and Kuwait + - id: BBR_DIRECT + name: Bank of Baroda - Retail Banking + - id: BCB_DIRECT + name: 'Bassien Catholic Co-Operative Bank ' + - id: CNB_DIRECT + name: Canara Bank + - id: SYD_DIRECT + name: Canara Bank (e-Syndicate) + - id: CSB_DIRECT + name: Catholic Syrian Bank + - id: CBI_DIRECT + name: Central Bank of India + - id: CUB_DIRECT + name: City Union Bank + - id: COB_DIRECT + name: Cosmos Bank + - id: DEN_DIRECT + name: Dena Bank + - id: DBK_DIRECT + name: Deutsche Bank + - id: DCB_DIRECT + name: Development Credit Bank + - id: DLB_DIRECT + name: Dhanlakshmi Bank - Retail Net Banking + - id: ESF_DIRECT + name: ESAF Small Finance Bank + - id: EQB_DIRECT + name: Equitas Small Finance Bank + - id: FBK_DIRECT + name: Federal Bank + - id: FNC_DIRECT + name: Fincare Bank + - id: HDF_DIRECT + name: HDFC Bank + - id: ICI_DIRECT + name: 'ICICI Bank ' + - id: IDB_DIRECT + name: IDBI Bank - Retail Net Banking + - id: IDN_DIRECT + name: IDFC FIRST Bank + - id: INB_DIRECT + name: Indian Bank + - id: IOB_DIRECT + name: Indian Overseas Bank + - id: IDS_DIRECT + name: IndusInd Bank + - id: JKB_DIRECT + name: Jammu & Kashmir Bank + - id: JNB_DIRECT + name: Jana Small Finance Bank + - id: JSB_DIRECT + name: Janata Sahakari Bank Ltd Pune + - id: KJB_DIRECT + name: Kalyan Janata Sahakari Bank + - id: KBL_DIRECT + name: Karnataka Bank Ltd + - id: KVB_DIRECT + name: Karur Vysya Bank + - id: 162_DIRECT + name: Kotak Bank + - id: LVR_DIRECT + name: Laxmi Vilas Bank - Retail + - id: NKB_DIRECT + name: NKGSB Co-op Bank + - id: NEB_DIRECT + name: North East Small Finance Bank + - id: OBC_DIRECT + name: PNB (Erstwhile-Oriental Bank of Commerce) + - id: UNI_DIRECT + name: PNB (Erstwhile-United Bank of India) + - id: PMC_DIRECT + name: Punjab & Maharastra Co-op Bank + - id: PSB_DIRECT + name: Punjab & Sind Bank + - id: CPN_DIRECT + name: 'Punjab National Bank - Corporate ' + - id: PNB_DIRECT + name: Punjab National Bank - Retail Banking + - id: RBL_DIRECT + name: RBL Bank Limited + - id: SWB_DIRECT + name: Saraswat Bank + - id: SHB_DIRECT + name: Shivalik Mercantile Cooperative Bank Ltd + - id: SIB_DIRECT + name: South Indian Bank + - id: SCB_DIRECT + name: Standard Chartered Bank + - id: SBI_DIRECT + name: State Bank of India + - id: SRB_DIRECT + name: Suryoday Small Finance Bank + - id: TJB_DIRECT + name: TJSB Bank + - id: TNC_DIRECT + name: Tamil Nadu State Co-operative Bank + - id: TMB_DIRECT + name: Tamilnad Mercantile Bank Ltd + - id: TBB_DIRECT + name: Thane Bharat Sahakari Bank Ltd + - id: MSB_DIRECT + name: The Mehsana Urban Co Op Bank Ltd + - id: UCO_DIRECT + name: UCO Bank + - id: UBI_DIRECT + name: Union Bank of India + - id: ADB_DIRECT + name: Union Bank of India (Erstwhile Andhra Bank) + - id: CRP_DIRECT + name: Union Bank of India (Erstwhile Corporation Bank) + - id: VRB_DIRECT + name: Varachha Co-operative Bank Limited + - id: VJB_DIRECT + name: Vijaya Bank + - id: YBK_DIRECT + name: Yes Bank + - id: ZOB_DIRECT + name: Zoroastrian Co-operative Bank Limited + - id: DBS_DIRECT + name: digibank by DBS + key: issuer + type: select + name: Online Banking India + type: billdesk_online + - name: UPI + type: billdesk_upi + - details: + - items: + - id: DCW_DIRECT + name: DCB Cippy + - id: ICC_DIRECT + name: ICC Cash Card + - id: OXY_DIRECT + name: Oxigen Wallet + - id: PCH_DIRECT + name: Pay World Money + key: issuer + type: select + name: Wallets India + type: billdesk_wallet + - name: Blik + type: blik + - name: Bloemen Giftcard + type: bloemengiftcard + - name: Boekenbon Giftcard + type: boekenbon + - name: Boleto + type: boleto + - name: Boleto Bancario + type: boletobancario_santander + - name: Bradesco + type: bradesco + - name: Cash-Ticket + type: cashticket + - name: CashU + type: cashu + - name: CCAvenue + type: ccavenue + - name: Mula Checkout + type: cellulant + - name: Chasin Giftcard + type: chasingiftcard + - name: Clearpay + type: clearpay + - name: ClickandBuy + type: clickandbuy + - name: Paiement en 3 fois par Cartes Bancaires + type: cofinoga_3xcb + - name: Costes Giftcard + type: costesgiftcard + - name: custom_settlement + type: custom_settlement + - name: DANA + type: dana + - name: DineroMail + type: dineromail + - name: Online bank transfer. + type: directEbanking + - name: Direct Debit Brazil - Banco do Brazil + type: directdebit_BR_bancodobrasil + - name: Direct Debit Brazil - Bradesco + type: directdebit_BR_bradesco + - name: Direct Debit Brazil - Caixa Economica Federal + type: directdebit_BR_caixa + - name: Direct Debit Brazil - HSBC + type: directdebit_BR_hsbc + - name: Direct Debit Brazil - Itau + type: directdebit_BR_itau + - name: Direct Debit Brazil - Santander + type: directdebit_BR_santander + - name: BACS Direct Debit + type: directdebit_GB + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: Alfamart + type: doku_alfamart + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: BCA Bank Transfer + type: doku_bca_va + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: BNI VA + type: doku_bni_va + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: BRI VA + type: doku_bri_va + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: CIMB VA + type: doku_cimb_va + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: Danamon VA + type: doku_danamon_va + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: Indomaret + type: doku_indomaret + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: Mandiri VA + type: doku_mandiri_va + - details: + - key: ovoId + type: text + name: OVO + type: doku_ovo + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: Bank Transfer + type: doku_permata_lite_atm + - details: + - key: shopperEmail + type: emailAddress + - key: firstName + type: text + - key: lastName + type: text + - key: infix + optional: true + type: text + name: DOKU wallet + type: doku_wallet + - details: + - items: + - id: '66' + name: Bank Nowy BFG S.A. + - id: '92' + name: "Bank Sp\xF3\u0142dzielczy w Brodnicy" + - id: '11' + name: Bank transfer / postal + - id: '74' + name: "Banki Sp\xF3\u0142dzielcze" + - id: '73' + name: BLIK + - id: '90' + name: "BNP Paribas - p\u0142ac\u0119 z Pl@net" + - id: '59' + name: CinkciarzPAY + - id: '87' + name: Credit Agricole PBL + - id: '83' + name: EnveloBank + - id: '76' + name: Getin Bank PBL + - id: '81' + name: Idea Cloud + - id: '7' + name: ING Corporate customers + - id: '93' + name: Kasa Stefczyka + - id: '44' + name: "Millennium - P\u0142atno\u015Bci Internetowe" + - id: '10' + name: Millennium Corporate customers + - id: '68' + name: mRaty + - id: '1' + name: mTransfer + - id: '91' + name: Nest Bank + - id: '80' + name: Noble Pay + - id: '50' + name: Pay Way Toyota Bank + - id: '45' + name: Pay with Alior Bank + - id: '36' + name: Pekao24Przelew + - id: '70' + name: Pocztowy24 + - id: '6' + name: Przelew24 + - id: '46' + name: "P\u0142ac\u0119 z Citi Handlowy" + - id: '38' + name: "P\u0142ac\u0119 z ING" + - id: '2' + name: "P\u0142ac\u0119 z Inteligo" + - id: '4' + name: "P\u0142ac\u0119 z iPKO" + - id: '75' + name: "P\u0142ac\u0119 z Plus Bank" + - id: '51' + name: "P\u0142a\u0107 z BO\u015A" + - id: '55' + name: Raty z Alior Bankiem PLN + - id: '89' + name: Santander + - id: '52' + name: SkyCash + key: issuer + type: select + name: Local Polish Payment Methods + type: dotpay + - name: Dragonpay Prepaid Credits + type: dragonpay_credits + - name: Online Banking + type: dragonpay_ebanking + - name: GCash + type: dragonpay_gcash + - name: Over The Counter Banks + type: dragonpay_otc_banking + - name: OTC non-Bank via Dragonpay + type: dragonpay_otc_non_banking + - name: Convenience Stores + type: dragonpay_otc_philippines + - name: 7/11 + type: dragonpay_seveneleven + - name: eagleeye_voucher + type: eagleeye_voucher + - name: Finnish E-Banking + type: ebanking_FI + - name: Pay-easy ATM + type: econtext_atm + - name: Online Banking + type: econtext_online + - name: 7-Eleven + type: econtext_seven_eleven + - name: Convenience Stores + type: econtext_stores + - name: eft_directdebit_CA + type: eft_directdebit_CA + - name: Lastschrift (ELV) + type: elv + - details: + - items: + - id: '231' + name: POP Pankki + - id: '551' + name: "Komer\u010Dn\xED banka" + - id: '232' + name: Aktia + - id: '552' + name: Raiffeisen + - id: '233' + name: "S\xE4\xE4st\xF6pankki" + - id: '750' + name: Swedbank + - id: '211' + name: Nordea + - id: '553' + name: "\u010CSOB" + - id: '234' + name: S-Pankki + - id: '751' + name: SEB + - id: '554' + name: Moneta + - id: '235' + name: OmaSP + - id: '752' + name: Nordea + - id: '213' + name: Op-Pohjola + - id: '555' + name: UniCredit + - id: '753' + name: LHV + - id: '556' + name: Fio + - id: '557' + name: mBank + - id: '216' + name: Handelsbanken + - id: '558' + name: Air Bank + - id: '260' + name: "L\xE4nsf\xF6rs\xE4kringar" + - id: '240' + name: BankDeposit + - id: '265' + name: Sparbanken + - id: '640' + name: BankDeposit + - id: '200' + name: "\xC5landsbanken" + - id: '940' + name: Swedbank + - id: '500' + name: "\u010Cesk\xE1 spo\u0159itelna" + - id: '720' + name: Swedbank + - id: '941' + name: SEB + - id: '204' + name: Danske Bank + - id: '721' + name: SEB + - id: '942' + name: Citadele + - id: '205' + name: Handelsbanken + - id: '722' + name: DNB + - id: '943' + name: DNB + - id: '206' + name: Nordea + - id: '723' + name: "\u0160iauli\u0173 bankas" + - id: '207' + name: SEB + - id: '724' + name: Nordea + - id: '505' + name: "Komer\u010Dn\xED banka" + - id: '208' + name: Skandiabanken + - id: '209' + name: Swedbank + key: issuer + type: select + name: Bank Payment + type: entercash + - name: Nationale Entertainment Card + type: entertainmentcard + - details: + - items: + - id: d5d5b133-1c0d-4c08-b2be-3c9b116dc326 + name: Dolomitenbank + - id: ee9fc487-ebe0-486c-8101-17dce5141a67 + name: Raiffeissen Bankengruppe + - id: 6765e225-a0dc-4481-9666-e26303d4f221 + name: Hypo Tirol Bank AG + - id: 8b0bfeea-fbb0-4337-b3a1-0e25c0f060fc + name: Sparda Bank Wien + - id: 1190c4d1-b37a-487e-9355-e0a067f54a9f + name: Schoellerbank AG + - id: e2e97aaa-de4c-4e18-9431-d99790773433 + name: Volksbank Gruppe + - id: bb7d223a-17d5-48af-a6ef-8a2bf5a4e5d9 + name: Immo-Bank + - id: e6819e7a-f663-414b-92ec-cf7c82d2f4e5 + name: Bank Austria + - id: eff103e6-843d-48b7-a6e6-fbd88f511b11 + name: Easybank AG + - id: 25942cc9-617d-42a1-89ba-d1ab5a05770a + name: VR-BankBraunau + - id: 4a0a975b-0594-4b40-9068-39f77b3a91f9 + name: Volkskreditbank + - id: 3fdc41fc-3d3d-4ee3-a1fe-cd79cfd58ea3 + name: Erste Bank und Sparkassen + - id: ba7199cc-f057-42f2-9856-2378abf21638 + name: BAWAG P.S.K. Gruppe + key: issuer + type: select + name: EPS + type: eps + - name: Expert Cadeaukaart + type: expertgiftcard + - details: + - details: + - key: firstName + type: text + - key: lastName + type: text + - items: + - id: M + name: male + - id: F + name: female + key: gender + type: radio + - key: telephoneNumber + type: tel + - key: shopperEmail + type: emailAddress + key: personalDetails + type: fieldSet + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: FR + name: France + - id: ES + name: Spain + key: country + type: select + key: billingAddress + type: address + - key: separateDeliveryAddress + optional: true + type: boolean + value: 'false' + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: FR + name: France + - id: ES + name: Spain + key: country + type: select + key: deliveryAddress + optional: true + type: address + name: 3x Oney + type: facilypay_3x + - details: + - details: + - key: firstName + type: text + - key: lastName + type: text + - items: + - id: M + name: male + - id: F + name: female + key: gender + type: radio + - key: telephoneNumber + type: tel + - key: shopperEmail + type: emailAddress + key: personalDetails + type: fieldSet + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: FR + name: France + - id: ES + name: Spain + key: country + type: select + key: billingAddress + type: address + - key: separateDeliveryAddress + optional: true + type: boolean + value: 'false' + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: FR + name: France + - id: ES + name: Spain + key: country + type: select + key: deliveryAddress + optional: true + type: address + name: 4x Oney + type: facilypay_4x + - name: Fashioncheque + type: fashioncheque + - details: + - key: shopper.firstName + type: text + - key: shopper.lastName + type: text + - key: shopper.gender + type: text + - key: shopperEmail + type: emailAddress + - key: telephoneNumber + type: tel + - key: countryCode + type: text + name: Fawry + type: fawry + - name: FijnCadeau + type: fijncadeau + - name: Fleurop Bloemenbon + type: fleuropbloemenbon + - name: Fonq Giftcard + type: fonqgiftcard + - name: Gall & Gall + type: gallgall + - name: GCash + type: gcash + - name: Generic GiftCard + type: genericgiftcard + - name: GiftFor2 + type: giftfor2card + - details: + - key: bic + type: text + name: GiroPay + type: giropay + - name: Givex + type: givex + - name: Globe GCash + type: globegcash + - name: Goldsmiths Card + type: goldsmithscard + - name: GoPay Wallet + type: gopay_wallet + - name: OVO + type: grabpay_ID + - name: GrabPay + type: grabpay_PH + - name: GrabPay + type: grabpay_SG + - name: Hallmark Card + type: hallmarkcard + - name: HDFC + type: hdfc + - name: Hunkemoller Member Card + type: hmclub + - name: Hunkemoller Lingerie Card + type: hmlingerie + - details: + - items: + - id: '1121' + name: Test Issuer + - id: '1154' + name: Test Issuer 5 + - id: '1153' + name: Test Issuer 4 + - id: '1152' + name: Test Issuer 3 + - id: '1151' + name: Test Issuer 2 + - id: '1162' + name: Test Issuer Cancelled + - id: '1161' + name: Test Issuer Pending + - id: '1160' + name: Test Issuer Refused + - id: '1159' + name: Test Issuer 10 + - id: '1158' + name: Test Issuer 9 + - id: '1157' + name: Test Issuer 8 + - id: '1156' + name: Test Issuer 7 + - id: '1155' + name: Test Issuer 6 + key: issuer + type: select + name: iDEAL + type: ideal + - name: igive + type: igive + - name: Korean Account Transfer (IniPay) + type: inicisIniPay_accounttransfer + - name: Korean Credit Cards (IniPay) + type: inicisIniPay_creditcard + - name: Korean Mobile Phone (IniPay) + type: inicisIniPay_mobilephone + - name: Korean Virtual Account (IniPay) + type: inicisIniPay_virtualaccount + - name: Korean Account Transfer (Mobile) + type: inicisMobile_accounttransfer + - name: Korean Credit Cards (Mobile) + type: inicisMobile_creditcard + - name: Korean Mobile Phone (Mobile) + type: inicisMobile_mobilephone + - name: Korean Virtual Account (Mobile) + type: inicisMobile_virtualaccount + - name: Korean Credit Cards + type: inicis_creditcard + - name: "Interac\xAE Online" + type: interac + - name: Instant EFT + type: ipay + - name: iPay88 + type: ipay88 + - name: isracard + type: isracard + - name: Phone Payment + type: ivr + - name: Landline phone + type: ivrLandline + - name: Mobile phone + type: ivrMobile + - name: Kado Wereld + type: kadowereld + - name: KakaoPay + type: kakaopay + - name: Karen Millen Card + type: karenmillen + - name: Karen Millen GiftCard + type: karenmillengiftcard + - name: Bank Transfer + type: kcp_banktransfer + - name: "Korea\u2013issued cards" + type: kcp_creditcard + - name: PayCo + type: kcp_payco + - name: Naver Pay + type: kcp_naverpay + - name: Virtual Account via KCP + type: kcp_va + - name: Pay later with Klarna. + type: klarna + - name: Pay over time with Klarna. + type: klarna_account + - name: Klarna B2B + type: klarna_b2b + - name: Pay now with Klarna. + type: klarna_paynow + - name: Leisure Card + type: leisurecard + - name: China Credit Card + type: lianlianpay_creditcard + - name: China Debit Card + type: lianlianpay_debitcard + - details: + - key: telephoneNumber + type: tel + name: China Online Banking - Credit Card + type: lianlianpay_ebanking_credit + - details: + - items: + - id: '01030000' + name: Agricultural Bank of China + - id: '4031000' + name: Bank of Beijing + - id: '01040000' + name: Bank of China + - id: '03020000' + name: China Citic Bank + - id: '01050000' + name: China Construction Bank + - id: '03030000' + name: China Everbright Bank + - id: 03080000 + name: China Merchants Bank + - id: '03050000' + name: China Minsheng Banking Group + - id: '03040000' + name: Hua Xia Bank Co + - id: '01020000' + name: Industrial and Commercial Bank of China + - id: '03070000' + name: PingAn Bank + - id: '1000000' + name: Postal Savings Bank of China + key: issuer + type: select + - key: telephoneNumber + type: tel + name: China Online Banking - Debit Card + type: lianlianpay_ebanking_debit + - details: + - items: + - id: '01030000' + name: Agricultural Bank of China + - id: '01050000' + name: China Construction Bank + - id: 03080000 + name: China Merchants Bank + - id: '01020000' + name: Industrial and Commercial Bank of China + - id: '03100000' + name: Shanghai Pudong Development Bank + key: issuer + type: select + - key: telephoneNumber + type: tel + name: China Online Banking - Enterprise + type: lianlianpay_ebanking_enterprise + - name: Loods5 Cadeaukaart + type: loods5giftcard + - name: Loods5 Tegoedbon + type: loods5prepaidcard + - name: Love2Shop GiftCard + type: love2shop + - details: + - key: shopper.firstName + type: text + - key: shopper.lastName + type: text + - key: shopper.gender + type: text + - key: shopperEmail + type: emailAddress + - key: telephoneNumber + type: tel + - key: countryCode + type: text + name: mada + type: mada + - name: Mappin & Webb Card + type: mappinwebbcard + - name: MB WAY + type: mbway + - details: + - key: additionalData.amazonPayToken + type: text + name: Amazon Pay + supportsRecurring: true + type: amazonpay + - name: Mercado Pago + type: mercadopago + - name: MobilePay + type: mobilepay + - name: AliPay via Razer Merchant Services + type: molpay_alipay + - name: 7-Eleven + type: molpay_cash + - name: CIMB Virtual Account + type: molpay_cimb_va + - name: Malaysia E-Banking via Razer Merchant Services + type: molpay_ebanking_MY + - details: + - items: + - id: vtcpay-vietinbank + name: Vietinbank + - id: vtcpay-bidv + name: BIDV + - id: vtcpay-agribank + name: Agribank + - id: vtcpay-mb + name: MB Bank + - id: vtcpay-sacombank + name: Sacombank + - id: vtcpay-dongabank + name: DongABank + - id: vtcpay-maritimebank + name: MaritimeBank + - id: vtcpay-vietcombank + name: Vietcombank + - id: vtcpay-acb + name: ACB + - id: vtcpay-techcombank + name: Techcombank + key: issuer + type: select + name: Vietnam E-Banking + type: molpay_ebanking_VN + - details: + - items: + - id: fpx_bimb + name: Bank Islam + - id: fpx_uob + name: UOB Bank + - id: fpx_cimbclicks + name: CIMB Clicks + - id: fpx_kfh + name: Kuwait Finance House + - id: fpx_rhb + name: RHB Now + - id: fpx_abmb + name: Alliance Bank + - id: fpx_amb + name: Am Online + - id: fpx_hsbc + name: HSBC + - id: fpx_abb + name: Affin Bank + - id: fpx_ocbc + name: OCBC Bank + - id: fpx_pbb + name: Public Bank + - id: fpx_scb + name: Standard Chartered Bank + - id: fpx_bsn + name: Bank Simpanan Nasional + - id: fpx_mb2u + name: Maybank2u + - id: fpx_hlb + name: Hong Leong Connect + - id: fpx_bmmb + name: Bank Muamalat + - id: fpx_bkrm + name: Bank Rakyat + key: issuer + type: select + name: Malaysia E-Banking + type: molpay_ebanking_fpx_MY + - name: eNETS Debit + type: molpay_enetsd + - name: epay + type: molpay_epay + - name: Esapay + type: molpay_esapay + - name: MyClear FPX + type: molpay_fpx + - name: Maybank2u + type: molpay_maybank2u + - name: Nganluong + type: molpay_nganluong + - name: Tesco Lotus + type: molpay_paysbuy + - name: MOLPoints + type: molpay_points + - name: RHB Now + type: molpay_rhb + - name: SAM by SingPost + type: molpay_singpost + - name: MOLWallet + type: molpay_wallet + - name: MoMo ATM + type: momo_atm + - name: Momo Wallet + type: momo_wallet + - name: Moneybookers + type: moneybookers + - name: Multibanco + type: multibanco + - name: De Nationale Musicalcard + type: musicalcard + - name: Nationale Bioscoopbon + type: nationalebioscoopbon + - name: Nationale Tuinbon + type: nationaletuinbon + - name: Nationale Verwen Cadeaubon + type: nationaleverwencadeaubon + - name: BankAxess + type: netaxept_bankaxess + - name: NETELLER + type: neteller + - name: Onebip + type: onebip + - name: One Two Three + type: onetwothree + - name: Online Banking PL + type: onlineBanking_PL + - details: + - items: + - id: '1' + name: Model Bank v2 + key: issuer + type: select + name: Online banking + type: openbanking_UK + - name: Oxxo + type: oxxo + - name: Pathe Giftcard + type: pathegiftcard + - name: PayBright + type: paybright + - name: PayMaya Wallet + type: paymaya_wallet + - name: PayPal + type: paypal + - name: Paysafecard + type: paysafecard + - name: Payshop + type: payshop + - name: PayD AMT via Paythru + type: paythru_amt + - name: EFT via Paythru + type: paythru_eft + - name: PayTM + type: paytm + - details: + - key: virtualPaymentAddress + type: text + name: PayU UPI + type: payu_IN_upi + - name: EFT Pro via PayU + type: payu_ZA_eftpro + - details: + - key: additionalData.paywithgoogle.token + type: payWithGoogleToken + name: Google Pay + type: paywithgoogle + - name: pix + type: pix + - name: Plastix + type: plastix + - name: Pluim + type: pluimgiftcard + - name: Podium Card + type: podiumcard + - name: POLi + type: poli + - name: PPS + type: pps + - name: Primera Cadeaukaart + type: primeracadeaucard + - name: Illicado Gift Card + type: prosodie_illicado + - name: PSE + type: pse + - details: + - items: + - id: '+7' + name: RU + - id: '+9955' + name: GE + - id: '+507' + name: PA + - id: '+44' + name: GB + - id: '+992' + name: TJ + - id: '+370' + name: LT + - id: '+972' + name: IL + - id: '+996' + name: KG + - id: '+380' + name: UA + - id: '+84' + name: VN + - id: '+90' + name: TR + - id: '+994' + name: AZ + - id: '+374' + name: AM + - id: '+371' + name: LV + - id: '+91' + name: IN + - id: '+66' + name: TH + - id: '+373' + name: MD + - id: '+1' + name: US + - id: '+81' + name: JP + - id: '+998' + name: UZ + - id: '+77' + name: KZ + - id: '+375' + name: BY + - id: '+372' + name: EE + - id: '+40' + name: RO + - id: '+82' + name: KR + key: qiwiwallet.telephoneNumberPrefix + type: select + - key: qiwiwallet.telephoneNumber + type: text + name: Qiwi Wallet + type: qiwiwallet + - name: RatePay Invoice + type: ratepay + - name: RatePay Direct Debit + type: ratepay_directdebit + - name: Rituals Giftcard + type: rituals + - name: Rob Peetoom Giftcard + type: robpeetoomgiftcard + - name: SafetyPay + type: safetypay + - name: SafetyPay Cash + type: safetypay_cash + - name: Shoes&Accessories Cadeau + type: sagiftcard + - name: Score Giftcard + type: scoregiftcard + - name: SEB Direktbetalning + type: sebdirectpayment + - details: + - key: sepa.ownerName + type: text + - key: sepa.ibanNumber + type: text + name: SEPA Direct Debit + type: sepadirectdebit + - name: 7-Eleven + type: seveneleven + - name: Premium SMS + type: sms + - name: SVS + type: svs + - name: Swish + type: swish + - name: TCS Test GiftCard + type: tcstestgiftcard + - name: TenPay + type: tenpay + - name: The Sting Giftcard + type: thestinggiftcard + - name: TrueMoney + type: truemoney + - name: Trustly + type: trustly + - name: Online Banking by Trustpay + type: trustpay + - name: TWINT + type: twint + - name: Ukash + type: ukash + - name: UnionPay + type: unionpay + - details: + - key: virtualPaymentAddress + type: text + name: UPI Collect + type: upi_collect + - name: Valuelink + type: valuelink + - name: V&D Cadeaukaart + type: vdcadeaucard + - details: + - key: telephoneNumber + optional: true + type: tel + name: Vipps + type: vipps + - details: + - key: additionalData.visacheckout.callId + type: text + name: Visa Checkout + type: visacheckout + - name: VVV Cadeaubon + type: vvvcadeaubon + - name: VVV Giftcard + type: vvvgiftcard + - name: Webshop Giftcard + type: webshopgiftcard + - name: WeChat Pay + type: wechatpayMiniProgram + - name: WeChat Pay + type: wechatpayQR + - name: WeChat Pay + type: wechatpayWeb + - name: WE Fashion Giftcard + type: wefashiongiftcard + - name: Western Union + type: westernunion + - name: Winkel Cheque + type: winkelcheque + - name: WOS Card + type: woscard + - name: Alfa-Click + type: yandex_alfaclick + - name: Pay using bank card + type: yandex_bank_card + - name: Cash terminals + type: yandex_cash + - name: Pay using installments + type: yandex_installments + - name: YooMoney + type: yandex_money + - name: Promsvyazbank + type: yandex_promsvyazbank + - name: SberPay + type: yandex_sberbank + - name: WebMoney + type: yandex_webmoney + - name: Your Gift + type: yourgift + - name: Zip + type: zip + post-paymentMethods-filtered: + summary: Get payment methods based on the country and amount + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + countryCode: NL + shopperLocale: nl-NL + amount: + currency: EUR + value: 1000 + post-paymentMethods-filtered-200: + summary: Example response for request 'filtered' + value: + paymentMethods: + - details: + - items: + - id: '1121' + name: Test Issuer + - id: '1154' + name: Test Issuer 5 + - id: '1153' + name: Test Issuer 4 + - id: '1152' + name: Test Issuer 3 + - id: '1151' + name: Test Issuer 2 + - id: '1162' + name: Test Issuer Cancelled + - id: '1161' + name: Test Issuer Pending + - id: '1160' + name: Test Issuer Refused + - id: '1159' + name: Test Issuer 10 + - id: '1158' + name: Test Issuer 9 + - id: '1157' + name: Test Issuer 8 + - id: '1156' + name: Test Issuer 7 + - id: '1155' + name: Test Issuer 6 + key: issuer + type: select + name: iDEAL + type: ideal + - details: + - key: encryptedCardNumber + type: cardToken + - key: encryptedSecurityCode + type: cardToken + - key: encryptedExpiryMonth + type: cardToken + - key: encryptedExpiryYear + type: cardToken + - key: holderName + optional: true + type: text + name: "Hitelk\xE1rtya" + type: scheme + - name: PayPal + type: paypal + - details: + - details: + - key: firstName + type: text + - key: lastName + type: text + - items: + - id: M + name: male + - id: F + name: female + key: gender + type: radio + - key: dateOfBirth + type: date + - key: telephoneNumber + type: tel + - key: shopperEmail + type: emailAddress + key: personalDetails + type: fieldSet + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + value: NL + key: billingAddress + type: address + - key: separateDeliveryAddress + optional: true + type: boolean + value: 'false' + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + value: NL + key: deliveryAddress + optional: true + type: address + name: AfterPay Invoice + type: afterpay_default + - name: Pay later with Klarna. + type: klarna + - details: + - key: sepa.ownerName + type: text + - key: sepa.ibanNumber + type: text + name: SEPA Direct Debit + type: sepadirectdebit + - name: Paysafecard + type: paysafecard + - name: Bijenkorf Cadeaucard + type: bijcadeaucard + - name: Fonq Giftcard + type: fonqgiftcard + - name: Bank Transfer (NL) + type: bankTransfer_NL + - name: Pathe Giftcard + type: pathegiftcard + - name: VVV Giftcard + type: vvvgiftcard + - name: Podium Card + type: podiumcard + - name: RatePay Direct Debit + type: ratepay_directdebit + - name: Rituals Giftcard + type: rituals + - name: Hunkemoller Lingerie Card + type: hmlingerie + - name: Primera Cadeaukaart + type: primeracadeaucard + - name: Fashioncheque + type: fashioncheque + - name: NETELLER + type: neteller + - name: Adyen Voucher + type: adyen_test_voucher + - name: AfterPay B2B + type: afterpay_b2b + - name: AfterPay DirectDebit + type: afterpay_directdebit + - name: AliPay + type: alipay + - name: AliPay + type: alipay_wap + - details: + - key: additionalData.androidpay.token + type: androidPayToken + name: Android Pay + type: androidpay + - details: + - key: additionalData.applepay.token + type: applePayToken + name: Apple Pay + type: applepay + - name: Baby Gift Card + type: babygiftcard + - name: SEPA Bank Transfer + type: bankTransfer_IBAN + - name: Bloemen Giftcard + type: bloemengiftcard + - name: Boekenbon Giftcard + type: boekenbon + - name: Cash-Ticket + type: cashticket + - name: Chasin Giftcard + type: chasingiftcard + - name: ClickandBuy + type: clickandbuy + - name: Costes Giftcard + type: costesgiftcard + - name: custom_settlement + type: custom_settlement + - name: eft_directdebit_CA + type: eft_directdebit_CA + - name: Nationale Entertainment Card + type: entertainmentcard + - name: Expert Cadeaukaart + type: expertgiftcard + - name: FijnCadeau + type: fijncadeau + - name: Fleurop Bloemenbon + type: fleuropbloemenbon + - name: Gall & Gall + type: gallgall + - name: Generic GiftCard + type: genericgiftcard + - name: GiftFor2 + type: giftfor2card + - name: Givex + type: givex + - name: Goldsmiths Card + type: goldsmithscard + - name: Hunkemoller Member Card + type: hmclub + - name: Phone Payment + type: ivr + - name: Landline phone + type: ivrLandline + - name: Mobile phone + type: ivrMobile + - name: Kado Wereld + type: kadowereld + - name: Karen Millen GiftCard + type: karenmillengiftcard + - name: Leisure Card + type: leisurecard + - name: Loods5 Cadeaukaart + type: loods5giftcard + - name: Loods5 Tegoedbon + type: loods5prepaidcard + - details: + - key: additionalData.amazonPayToken + type: text + name: Amazon Pay + supportsRecurring: true + type: amazonpay + - name: MOLPoints + type: molpay_points + - name: Moneybookers + type: moneybookers + - name: De Nationale Musicalcard + type: musicalcard + - name: Nationale Bioscoopbon + type: nationalebioscoopbon + - name: Nationale Tuinbon + type: nationaletuinbon + - name: Nationale Verwen Cadeaubon + type: nationaleverwencadeaubon + - name: Onebip + type: onebip + - details: + - key: additionalData.paywithgoogle.token + type: payWithGoogleToken + name: Google Pay + type: paywithgoogle + - name: Plastix + type: plastix + - name: Pluim + type: pluimgiftcard + - name: Illicado Gift Card + type: prosodie_illicado + - name: RatePay Invoice + type: ratepay + - name: Rob Peetoom Giftcard + type: robpeetoomgiftcard + - name: Shoes&Accessories Cadeau + type: sagiftcard + - name: Score Giftcard + type: scoregiftcard + - name: Premium SMS + type: sms + - name: SVS + type: svs + - name: TCS Test GiftCard + type: tcstestgiftcard + - name: The Sting Giftcard + type: thestinggiftcard + - name: Ukash + type: ukash + - name: UnionPay + type: unionpay + - name: Valuelink + type: valuelink + - name: V&D Cadeaukaart + type: vdcadeaucard + - details: + - key: additionalData.visacheckout.callId + type: text + name: Visa Checkout + type: visacheckout + - name: VVV Cadeaubon + type: vvvcadeaubon + - name: Webshop Giftcard + type: webshopgiftcard + - name: WE Fashion Giftcard + type: wefashiongiftcard + - name: Western Union + type: westernunion + - name: Winkel Cheque + type: winkelcheque + - name: Your Gift + type: yourgift + post-paymentMethods-include-oneclick: + summary: Get payment methods including stored card details + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + countryCode: NL + amount: + currency: EUR + value: 1000 + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + post-paymentMethods-include-oneclick-200: + summary: Example response for request 'include-oneclick' + value: + paymentMethods: + - details: + - items: + - id: '1121' + name: Test Issuer + - id: '1154' + name: Test Issuer 5 + - id: '1153' + name: Test Issuer 4 + - id: '1152' + name: Test Issuer 3 + - id: '1151' + name: Test Issuer 2 + - id: '1162' + name: Test Issuer Cancelled + - id: '1161' + name: Test Issuer Pending + - id: '1160' + name: Test Issuer Refused + - id: '1159' + name: Test Issuer 10 + - id: '1158' + name: Test Issuer 9 + - id: '1157' + name: Test Issuer 8 + - id: '1156' + name: Test Issuer 7 + - id: '1155' + name: Test Issuer 6 + key: issuer + type: select + name: iDEAL + type: ideal + - details: + - key: encryptedCardNumber + type: cardToken + - key: encryptedSecurityCode + type: cardToken + - key: encryptedExpiryMonth + type: cardToken + - key: encryptedExpiryYear + type: cardToken + - key: holderName + optional: true + type: text + name: Credit Card + type: scheme + - name: PayPal + type: paypal + - details: + - details: + - key: firstName + type: text + - key: lastName + type: text + - items: + - id: M + name: male + - id: F + name: female + key: gender + type: radio + - key: dateOfBirth + type: date + - key: telephoneNumber + type: tel + - key: shopperEmail + type: emailAddress + key: personalDetails + type: fieldSet + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + value: NL + key: billingAddress + type: address + - key: separateDeliveryAddress + optional: true + type: boolean + value: 'false' + - details: + - key: street + type: text + - key: houseNumberOrName + type: text + - key: city + type: text + - key: postalCode + type: text + - key: stateOrProvince + optional: true + type: text + - items: + - id: NL + name: Netherlands + - id: BE + name: Belgium + key: country + type: select + value: NL + key: deliveryAddress + optional: true + type: address + name: AfterPay Invoice + type: afterpay_default + - name: Pay later with Klarna. + type: klarna + - details: + - key: sepa.ownerName + type: text + - key: sepa.ibanNumber + type: text + name: SEPA Direct Debit + type: sepadirectdebit + - name: Paysafecard + type: paysafecard + - name: Bijenkorf Cadeaucard + type: bijcadeaucard + - name: Fonq Giftcard + type: fonqgiftcard + - name: Bank Transfer (NL) + type: bankTransfer_NL + - name: Pathe Giftcard + type: pathegiftcard + - name: VVV Giftcard + type: vvvgiftcard + - name: Podium Card + type: podiumcard + - name: RatePay Direct Debit + type: ratepay_directdebit + - name: Rituals Giftcard + type: rituals + - name: Hunkemoller Lingerie Card + type: hmlingerie + - name: Primera Cadeaukaart + type: primeracadeaucard + - name: Fashioncheque + type: fashioncheque + - name: NETELLER + type: neteller + - name: Adyen Voucher + type: adyen_test_voucher + - name: AfterPay B2B + type: afterpay_b2b + - name: AfterPay DirectDebit + type: afterpay_directdebit + - name: AliPay + type: alipay + - name: AliPay + type: alipay_wap + - details: + - key: additionalData.androidpay.token + type: androidPayToken + name: Android Pay + type: androidpay + - details: + - key: additionalData.applepay.token + type: applePayToken + name: Apple Pay + type: applepay + - name: Baby Gift Card + type: babygiftcard + - name: SEPA Bank Transfer + type: bankTransfer_IBAN + - name: Bloemen Giftcard + type: bloemengiftcard + - name: Boekenbon Giftcard + type: boekenbon + - name: Cash-Ticket + type: cashticket + - name: Chasin Giftcard + type: chasingiftcard + - name: ClickandBuy + type: clickandbuy + - name: Costes Giftcard + type: costesgiftcard + - name: custom_settlement + type: custom_settlement + - name: eft_directdebit_CA + type: eft_directdebit_CA + - name: Nationale Entertainment Card + type: entertainmentcard + - name: Expert Cadeaukaart + type: expertgiftcard + - name: FijnCadeau + type: fijncadeau + - name: Fleurop Bloemenbon + type: fleuropbloemenbon + - name: Gall & Gall + type: gallgall + - name: Generic GiftCard + type: genericgiftcard + - name: GiftFor2 + type: giftfor2card + - name: Givex + type: givex + - name: Goldsmiths Card + type: goldsmithscard + - name: Hunkemoller Member Card + type: hmclub + - name: Phone Payment + type: ivr + - name: Landline phone + type: ivrLandline + - name: Mobile phone + type: ivrMobile + - name: Kado Wereld + type: kadowereld + - name: Karen Millen GiftCard + type: karenmillengiftcard + - name: Leisure Card + type: leisurecard + - name: Loods5 Cadeaukaart + type: loods5giftcard + - name: Loods5 Tegoedbon + type: loods5prepaidcard + - details: + - key: additionalData.amazonPayToken + type: text + name: Amazon Pay + supportsRecurring: true + type: amazonpay + - name: MOLPoints + type: molpay_points + - name: Moneybookers + type: moneybookers + - name: De Nationale Musicalcard + type: musicalcard + - name: Nationale Bioscoopbon + type: nationalebioscoopbon + - name: Nationale Tuinbon + type: nationaletuinbon + - name: Nationale Verwen Cadeaubon + type: nationaleverwencadeaubon + - name: Onebip + type: onebip + - details: + - key: additionalData.paywithgoogle.token + type: payWithGoogleToken + name: Google Pay + type: paywithgoogle + - name: Plastix + type: plastix + - name: Pluim + type: pluimgiftcard + - name: Illicado Gift Card + type: prosodie_illicado + - name: RatePay Invoice + type: ratepay + - name: Rob Peetoom Giftcard + type: robpeetoomgiftcard + - name: Shoes&Accessories Cadeau + type: sagiftcard + - name: Score Giftcard + type: scoregiftcard + - name: Premium SMS + type: sms + - name: SVS + type: svs + - name: TCS Test GiftCard + type: tcstestgiftcard + - name: The Sting Giftcard + type: thestinggiftcard + - name: Ukash + type: ukash + - name: UnionPay + type: unionpay + - name: Valuelink + type: valuelink + - name: V&D Cadeaukaart + type: vdcadeaucard + - details: + - key: additionalData.visacheckout.callId + type: text + name: Visa Checkout + type: visacheckout + - name: VVV Cadeaubon + type: vvvcadeaubon + - name: Webshop Giftcard + type: webshopgiftcard + - name: WE Fashion Giftcard + type: wefashiongiftcard + - name: Western Union + type: westernunion + - name: Winkel Cheque + type: winkelcheque + - name: Your Gift + type: yourgift + post-paymentSession-android: + summary: Set up a payment session (Android) + value: + amount: + currency: EUR + value: 17408 + reference: Your order number + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + channel: Android + token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK + returnUrl: app:// + countryCode: NL + shopperLocale: nl_NL + sessionValidity: '2017-04-06T13:09:13Z' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentSession-enableOneClick: + summary: Set up a payment session with the option to store card details + value: + amount: + currency: EUR + value: 17408 + reference: Your order number + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + enableOneClick: true + enableRecurring: true + channel: Web + html: true + origin: https://www.yourwebsite.com + returnUrl: https://www.yourshop.com/checkout/result + countryCode: NL + shopperLocale: nl_NL + merchantAccount: YOUR_MERCHANT_ACCOUNT + sdkVersion: 1.7.0 + post-paymentSession-enableOneClick-200: + summary: Example response for request 'enableOneClick' + value: + paymentSession: eyJjaGVja291dHNob3BwZXJCYXN... + post-paymentSession-ios: + summary: Set up a payment session (iOS) + value: + amount: + currency: EUR + value: 17408 + reference: Your order number + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + channel: iOS + token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK + returnUrl: app:// + countryCode: NL + shopperLocale: nl_NL + sessionValidity: '2017-04-06T13:09:13Z' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentSession-split: + summary: Split a payment between a sub-merchant and a platform account + value: + amount: + currency: EUR + value: 6200 + additionalData: + split.api: '1' + split.nrOfItems: '2' + split.totalAmount: '6200' + split.currencyCode: EUR + split.item1.amount: '6000' + split.item1.type: MarketPlace + split.item1.account: '151272963' + split.item1.reference: '6124145' + split.item1.description: 'Porcelain Doll: Eliza (20cm)' + split.item2.amount: '200' + split.item2.type: Commission + split.item2.reference: '6124146' + reference: Your order number + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + channel: Android + token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK + returnUrl: app:// + countryCode: NL + shopperLocale: nl_NL + sessionValidity: '2017-04-06T13:09:13Z' + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-paymentSession-web: + summary: Set up a payment session (Web) + value: + amount: + currency: EUR + value: 17408 + reference: Your order number + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + channel: Web + html: true + origin: https://www.yourwebsite.com + returnUrl: https://www.yourshop.com/checkout/result + countryCode: NL + shopperLocale: nl_NL + merchantAccount: YOUR_MERCHANT_ACCOUNT + sdkVersion: 1.9.5 + post-paymentSession-web-200: + summary: Example response for request 'web' + value: + paymentSession: eyJjaGVja291dHNob3BwZXJCYXN... + post-payments-applepay: + summary: Make an Apple Pay payment + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: applepay + applePayToken: VNRWtuNlNEWkRCSm1xWndjMDFFbktkQU... + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-3d-secure-2-web: + summary: Make a card payment with 3D Secure 2 native authentication + value: + amount: + currency: USD + value: 1000 + reference: YOUR_ORDER_NUMBER + paymentMethod: + type: scheme + number: '4917610000000000' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + cvc: '737' + additionalData: + allow3DS2: true + accountInfo: + accountCreationDate: '2019-01-17T13:42:40+01:00' + billingAddress: + country: US + city: New York + street: Redwood Block + houseNumberOrName: 37C + stateOrProvince: NY + postalCode: '10039' + shopperEmail: s.hopper@test.com + shopperIP: 192.0.2.1 + browserInfo: + userAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 + (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36 + acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 + language: nl-NL + colorDepth: 24 + screenHeight: 723 + screenWidth: 1536 + timeZoneOffset: 0 + javaEnabled: true + channel: web + origin: https://your-company.com + returnUrl: https://your-company.com/checkout/ + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-3d-secure-2-web-200: + summary: Example response for request 'card-3d-secure-2-web' + value: + additionalData: + cvcResult: 1 Matches + authCode: 097410 + avsResult: 4 AVS not supported for this card type + avsResultRaw: C + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VHQOF + pspReference: 993617895214576G + resultCode: Authorised + merchantReference: string + post-payments-card-3d-secure-direct: + summary: Make card payment with 3D Secure redirect authentication + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + number: '4212345678901237' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + cvc: '737' + browserInfo: + userAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9) Gecko/2008052912 + Firefox/3.0 + acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-3d-secure-direct-200: + summary: Example response for request 'card-3d-secure-direct' + value: + additionalData: + cvcResult: 1 Matches + authCode: 054817 + avsResult: 4 AVS not supported for this card type + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VIO26 + pspReference: 993617895217578K + resultCode: Authorised + merchantReference: string + post-payments-card-3d-secure-securedfields: + summary: Make a payment with 3D Secure 2 native authentication + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + encryptedCardNumber: test_4212345678901237 + encryptedExpiryMonth: test_03 + encryptedExpiryYear: test_2030 + encryptedSecurityCode: test_737 + holderName: John Smith + browserInfo: + userAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9) Gecko/2008052912 + Firefox/3.0 + acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-3d-secure-securedfields-200: + summary: Example response for request 'card-3d-secure-securedfields' + value: + additionalData: + cvcResult: 1 Matches + authCode: '046773' + avsResult: 4 AVS not supported for this card type + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VCAVH + pspReference: 993617895196572H + resultCode: Authorised + merchantReference: string + post-payments-card-direct: + summary: Make a card payment + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + number: '4111111111111111' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + cvc: '737' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-direct-200: + summary: Example response for request 'card-direct' + value: + additionalData: + cvcResult: 1 Matches + authCode: 044925 + avsResult: 4 AVS not supported for this card type + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VEP3H + pspReference: 993617895204576J + resultCode: Authorised + merchantReference: string + post-payments-card-securedfields: + summary: Make a card payment (using encrypted card details) + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + encryptedCardNumber: test_4111111111111111 + encryptedExpiryMonth: test_03 + encryptedExpiryYear: test_2030 + encryptedSecurityCode: test_737 + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-card-securedfields-200: + summary: Example response for request 'card-securedfields' + value: + additionalData: + cvcResult: 1 Matches + authCode: 065696 + avsResult: 4 AVS not supported for this card type + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VIE9N + pspReference: 993617895215577D + resultCode: Authorised + merchantReference: string + post-payments-details-3d-secure-2-native: + summary: Submit 3D Secure 2 authentication result + value: + details: + threeDSResult: eyJ0cmFuc1N0YXR1cyI6IlkifQ== + post-payments-details-redirect: + summary: Submit the redirect result + value: + details: + redirectResult: X6XtfGC3!Y... + post-payments-enableOneClick-SF: + summary: Tokenize card details for one-off payments (using encrypted card details) + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + encryptedCardNumber: test_4111111111111111 + encryptedExpiryMonth: test_03 + encryptedExpiryYear: test_2030 + encryptedSecurityCode: test_737 + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + storePaymentMethod: true + shopperInteraction: Ecommerce + recurringProcessingModel: CardOnFile + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-enableOneClick-SF-200: + summary: Example response for request 'enableOneClick-SF' + value: + additionalData: + cvcResult: 1 Matches + authCode: 082338 + avsResult: 4 AVS not supported for this card type + recurring.recurringDetailReference: '9916178934434753' + recurringProcessingModel: CardOnFile + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + recurring.shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VC172 + pspReference: 993617895195570C + resultCode: Authorised + merchantReference: string + post-payments-enableOneClick-raw: + summary: Tokenize card details for one-off payments + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + number: '4111111111111111' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + cvc: '737' + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + shopperInteraction: Ecommerce + recurringProcessingModel: CardOnFile + storePaymentMethod: true + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-enableOneClick-raw-200: + summary: Example response for request 'enableOneClick-raw' + value: + additionalData: + cvcResult: 1 Matches + authCode: '003704' + avsResult: 4 AVS not supported for this card type + recurring.recurringDetailReference: '9916178934434753' + recurringProcessingModel: CardOnFile + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + recurring.shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VCKO0 + pspReference: 993617895197573E + resultCode: Authorised + merchantReference: string + post-payments-giropay: + summary: Make a giropay payment + value: + amount: + currency: EUR + value: 1000 + reference: Your order number + paymentMethod: + type: giropay + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-giropay-200: + summary: Example response for request 'giropay' + value: + resultCode: RedirectShopper + action: + paymentData: Ab02b4c0!BQABAgAt9sA8lQOSEpwOpedJBZvOI6J4xAEGqCpPCfZkvEQPbXSQBP0O+HEElyemCjzTkp4G70QJLaMvq6IlQ5uPk8rlFoPbTb59E9vrOS4IXxlxQH2TQ6iAAGJvU/SIBHAqENNbg1MjG5HR04c6GgpmaO/9LISgGVlqyoY8FlyHvJQcPcMqkK1hYh0mGmbHLtXqyCAx6yRIOGpV3aaI3GMNkSwf3007BwxJBNd7o0o3XktxLuqU8T9OJquwqWoD2FtfUZ9ZEPk2m5/AbOvhoFYuWrKCW1xptWw04m3JyAJHB2F7gPMjwAi5rE0hlMu3d19WucrxsXakeA/noqubbvsHqqtWdRAn+2fMrpOacX5C4VDdE/xrED6iHM6VoqCztCH8mBtyPxPPU5DMnfxUmmeTrIrrf8j95S1FBman8UORs3jiFtCgCD6uS7y0cFSs6J2DWijpO0chjxNM4xR4q5gedL2idE6rRjZjm6cLhrM21XeroNvQYJtoW2q+gDxl9o/3M74jP+3sPafBZMkdHZ8vUdCueHDdw7bST5UCPHRnEfNHy5XaYf2kG0meaE3tpAAmoCNO2qPdcozHJZggVl9lqHQ394BLpLfYr3YROyWu+36HQRZoa2U2Yz/sFYhF81Iimx6FQWEtLZzT/kGJHsXawb68gqd7xf9jo4p6qokklGkzCRC3iOTKmbnmADUPLdy/qNw7AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifX48+5ZqamGvpSW2oKGEqf2KQdVyjcJrlnNiJKp613bt+5k9/OD8G/5T00dp7aNtQx9nGc+mWf17T7VZ6OmooTBV9bmL0ZcGccD+z4UvQbxjXYnMXKLfQmHKi58x6skXW0y3PhxfCLbm/BClmKuCIrACpLmqX/Mu9mJU4DpdOFMpf047WLI9T9yFQ/6ciUpi09DD89bOGQwvlVTkJhvPu31u7OZCd1r8sZ+NsyoEv5Pe3VPRh6R+OoGuY8cDOt9GhMfjGxp7whTcxtKzwnvETJrMrsRfCVIXv95DefR/YsVL8kchNmljNwwzvCGWACeNM7lY6/96+d27Cf2VBf5fS9EcSGtlZpYpNXsdOMLyJBYdiCujp6r1Sd68jsLJG8/XGw9MPODz8Bhqg5XSLuukhGlmVgSkp/TwHwl+p0bhnS0fz+VWDp90mrEY1B8vxFe4yZ1v0sWWaX5USb1/sEZVT3X/1X2qFCbpM6jr498Kk3w3dUGPmDlZ+XiFk0HUt2800jTYrTZYRMjQjnEOrL15aW5h2ynCtxAJXewfk+9NSYjqScbvHKjLGA8FUB6v5TVhsf+sNFSf/zVtNs+PczPZDZMLTiUnZih36iAu5f4HYjl1o4/K+V1JSKHjegDggW+RCUokGH6kKRnMcs2pU3KoG9kOdGDBOQYj94a+CPWfgE7j97v2bQxmbFHOWgJLzX0lPGM3RR5dDboH3k2BrDHb92K88i+2IHMO8WvrW2qhkB4lGpecupG0XEBOUTH4Lnc3TzUFgsDCvF8mnLweIbRyohzd4SAfn2W4wR7QK1S0 + paymentMethodType: giropay + url: https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1vozAQ-DXwFoT5zoMfIkpbmqRtSDhVfakcswUrxKa24UJ--Rku16tOJ1m71oy1O7ProyS8SkUFuGZSdGS0aS8lcDrOYFYW9hkkbQjXK0pFzzU*gNLbK-ZF5lxDLYlmgjt67ACn91m6fioPb3fZY1bk6X9fDiCVyThEX3QB7zD1B6y0ZLz*Ruhe8huiCV4uUYTiZBmiZRBH6G-tPatx*7CG-fFJtt1OslMx7P3oMd9dVq9pOyq9e6Z36*1LF6F689Pyb2xj*QzG3Hn2hlzXtSWostjgRuvO8leWd2tOKyhpG6G0QRI3cQ1EG6An0WvViK4DaRAFcmAUlLk*-y6bcyrOxkUBFZNAtWEG9Kfc9c0WdCMqy7-9Z9BG3fdRW14k5xEYbYaa1JlG4SQwnCSaMIpeLkzDjvDRMXkGHcexFahpzj9IyyqmR*y5Hlq4wcJNDigyjtDShDB4ta9eph1JQqcd4cwUmpSBrU6Mz7*i64-O4DnXNcRRHMco8QPnMx9e-MNDVCXDmHnN6vJGq6a5lG5efr4HH5uP7H6T1TBWlfgFnQraMA + method: GET + type: redirect + details: + - key: payload + type: text + paymentData: Ab02b4c0!BQABAgAt9sA8lQOSEpwOpedJBZvOI6J4xAEGqCpPCfZkvEQPbXSQBP0O+HEElyemCjzTkp4G70QJLaMvq6IlQ5uPk8rlFoPbTb59E9vrOS4IXxlxQH2TQ6iAAGJvU/SIBHAqENNbg1MjG5HR04c6GgpmaO/9LISgGVlqyoY8FlyHvJQcPcMqkK1hYh0mGmbHLtXqyCAx6yRIOGpV3aaI3GMNkSwf3007BwxJBNd7o0o3XktxLuqU8T9OJquwqWoD2FtfUZ9ZEPk2m5/AbOvhoFYuWrKCW1xptWw04m3JyAJHB2F7gPMjwAi5rE0hlMu3d19WucrxsXakeA/noqubbvsHqqtWdRAn+2fMrpOacX5C4VDdE/xrED6iHM6VoqCztCH8mBtyPxPPU5DMnfxUmmeTrIrrf8j95S1FBman8UORs3jiFtCgCD6uS7y0cFSs6J2DWijpO0chjxNM4xR4q5gedL2idE6rRjZjm6cLhrM21XeroNvQYJtoW2q+gDxl9o/3M74jP+3sPafBZMkdHZ8vUdCueHDdw7bST5UCPHRnEfNHy5XaYf2kG0meaE3tpAAmoCNO2qPdcozHJZggVl9lqHQ394BLpLfYr3YROyWu+36HQRZoa2U2Yz/sFYhF81Iimx6FQWEtLZzT/kGJHsXawb68gqd7xf9jo4p6qokklGkzCRC3iOTKmbnmADUPLdy/qNw7AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifX48+5ZqamGvpSW2oKGEqf2KQdVyjcJrlnNiJKp613bt+5k9/OD8G/5T00dp7aNtQx9nGc+mWf17T7VZ6OmooTBV9bmL0ZcGccD+z4UvQbxjXYnMXKLfQmHKi58x6skXW0y3PhxfCLbm/BClmKuCIrACpLmqX/Mu9mJU4DpdOFMpf047WLI9T9yFQ/6ciUpi09DD89bOGQwvlVTkJhvPu31u7OZCd1r8sZ+NsyoEv5Pe3VPRh6R+OoGuY8cDOt9GhMfjGxp7whTcxtKzwnvETJrMrsRfCVIXv95DefR/YsVL8kchNmljNwwzvCGWACeNM7lY6/96+d27Cf2VBf5fS9EcSGtlZpYpNXsdOMLyJBYdiCujp6r1Sd68jsLJG8/XGw9MPODz8Bhqg5XSLuukhGlmVgSkp/TwHwl+p0bhnS0fz+VWDp90mrEY1B8vxFe4yZ1v0sWWaX5USb1/sEZVT3X/1X2qFCbpM6jr498Kk3w3dUGPmDlZ+XiFk0HUt2800jTYrTZYRMjQjnEOrL15aW5h2ynCtxAJXewfk+9NSYjqScbvHKjLGA8FUB6v5TVhsf+sNFSf/zVtNs+PczPZDZMLTiUnZih36iAu5f4HYjl1o4/K+V1JSKHjegDggW+RCUokGH6kKRnMcs2pU3KoG9kOdGDBOQYj94a+CPWfgE7j97v2bQxmbFHOWgJLzX0lPGM3RR5dDboH3k2BrDHb92K88i+2IHMO8WvrW2qhkB4lGpecupG0XEBOUTH4Lnc3TzUFgsDCvF8mnLweIbRyohzd4SAfn2W4wR7QK1S0 + redirect: + method: GET + url: https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1vozAQ-DXwFoT5zoMfIkpbmqRtSDhVfakcswUrxKa24UJ--Rku16tOJ1m71oy1O7ProyS8SkUFuGZSdGS0aS8lcDrOYFYW9hkkbQjXK0pFzzU*gNLbK-ZF5lxDLYlmgjt67ACn91m6fioPb3fZY1bk6X9fDiCVyThEX3QB7zD1B6y0ZLz*Ruhe8huiCV4uUYTiZBmiZRBH6G-tPatx*7CG-fFJtt1OslMx7P3oMd9dVq9pOyq9e6Z36*1LF6F689Pyb2xj*QzG3Hn2hlzXtSWostjgRuvO8leWd2tOKyhpG6G0QRI3cQ1EG6An0WvViK4DaRAFcmAUlLk*-y6bcyrOxkUBFZNAtWEG9Kfc9c0WdCMqy7-9Z9BG3fdRW14k5xEYbYaa1JlG4SQwnCSaMIpeLkzDjvDRMXkGHcexFahpzj9IyyqmR*y5Hlq4wcJNDigyjtDShDB4ta9eph1JQqcd4cwUmpSBrU6Mz7*i64-O4DnXNcRRHMco8QPnMx9e-MNDVCXDmHnN6vJGq6a5lG5efr4HH5uP7H6T1TBWlfgFnQraMA + post-payments-googlepay: + summary: Make a Google Pay payment + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: paywithgoogle + googlePayToken: ==Payload as retrieved from Google Pay response== + returnUrl: https://your-company.com/... + merchantAccount: YourMerchantAccount + post-payments-ideal: + summary: Make an iDEAL payment + value: + amount: + currency: EUR + value: 1000 + reference: Your order number + paymentMethod: + type: ideal + issuer: '1121' + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-ideal-200: + summary: Example response for request 'ideal' + value: + resultCode: RedirectShopper + action: + paymentData: Ab02b4c0!BQABAgCINC3kOq5nsaj4k+VaArf6VIiTWkYALwijaS+VOvzTSf76Un3WYBgKJlEBqALZW3vlw+IDQGw5jqkVBO4axEJEFKu5fDL2RkeHbm+aHY7tlRVsjvNIcVTNbMtHJcclHakOVTrtTCQfspf11XGsmENUaL45bdeu07iDBtpnIvd39p6g8OVaLcSIGaA8Zosd93hs0h3lvIePt3QTekeOUH+zrMMfLyy/4QKBZtLjnWo3/4U0e2tsneOudynW0l5i+VyobWOZb7yZUj7v9GMVpAZ3YEqNZ1aWJlSmty9TJTpXp4PQQcNeELQAfTu4zaarMq5btRZpcmDRvSOQK0Qo/PvfWrv/si0c1NPr5EM43ebdkLiDEUSIGBDTellblheOaRsgD0JlrNLOHSpS6iCiyY5FQaWx7FpnYReP/un2f/2mMGxdehif1MqWWZzgAhjdA4kksQVb8eMIGLY2IveJ4iTmDAkFbhIATs2SuWhYBGqFnBGeH1jlJCJDDV8/XJ0IcX1/r0qC3wsUFecoElZ6gts+4tlfPUoeuSH/NFmyBEzrjZbgCqCH9YVXa/+W+dwQCOQ0G7K4SJepnlNcmpCtI29zMZgeRqmtzI0hImvQYt188MXK44ieh2wsmpVv6Y9EGIgJVR+t1IZKizm6Q2D5MCUC1uAVwu2iw7Xt5Re1XcWSaBC/nZt2iHaZF7kpgIXfrFshAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifVTgdc9kCwE5LJyeGFVSr+P70S1hwc62Ad03Oy1Ksxr823klh1hxYQDWBJETNf/YmYC9cHDGr6LxMQ8OOnwfg2xjsVU7ZUwWJbHid1vU/oJzHBXe54lHMNNre0HaQD6TSokVpazQsY3hRB84uevmeT7KVal98iqXd755VuiIxwHhhywaub1ogyQQEVxNGWx2+vL5Vh8NKmoghZQ+NLSZWRn77hJTGV+lKJdseGA9nV7DSlWodNmZ8RyRfQoqwtaK9woQ87PIN7XqSznZMS1HWMOE/aDLEXLJEfozHWrHuGVmn6Hupt/fBnm1GckSsMGeQNKS+4XmKGrJefrHDmdoZVBaZS9UjxfKjD2sCwu5vutgb6SLrECgCvu3q5/LTyFeTuPV1ZZrlpapC6umnWmSKmj/SdnhXJO00PNuFT2WY/GyH0cyA498zApE6VtLx2e9IvS01Oex6ZCRFDJ6sDCBzVN5g60vsm9tBut6trpQWyryqVM2cQ39xh9olCQ5Ml+2h4YFV5gA+1c0i+e6SeMtFJN788NW2EnQT/2pzM/rNAaSVwSf8vJcx3ZB9n8Pf8xi2buKZFEkyJpZJSg22JC/38D1E0tPRpQ7gZ1Z86meAGXnfKUtA+w2FllB2Y0dMrqi8jXnS/mqMPBmPVnIxUW96e40cB7W8E0VDf1IKx/wQphI8/vM3UOSqC81agmnyQ3nIDrAy8vqMOD+d1xcoElzRNy0OxU6v/90IKkhfAKr3Tur7Vb3FD6Pi/XrujJX95UlRd7fmaAI7Po1cIh1v7HEhsCNoh1z7WFNag== + paymentMethodType: ideal + url: https://test.adyen.com/hpp/checkout.shtml?u=redirectIdeal&p=eJxtUl1zmzAQ-DXwZgaB*XrQg0Nwg2s3DTVtJy8ZRbqAYlsikmCMf30FddNMpzOak2bvZm-3Ts*KCJZLBpgzIEeX9kqBoOMMFXXlcq17UCXDCAXIPYGiLRFmRanshcF70GZ3xd6TpTDQKGK4FJ4ZO8D5XZF-vq-3T5*KL0VV5v*tHEBpe*Pob5cKXmBSA1gbxUXzIWF6JW6JITjLUIySNItQliVxsH6v*cYbnNSHZsMfcydYr8SrE9yY7HRjavMAlyyIjhuK*tzszj9ew-uHrN854a3bkfEE1uBp9od833cV6Lra4taYzglXlsueo6Tk2EptLJL6qW8h2gI9yN7oVnYdKItoUAOnoO3z62-aUlB5sk4qYFwBNTYzoD9015odmFYyJ1z-M2yr7uO4nSBW8xisNpua1NlG0SQwmiTaMMpeLWzDjojRs-cMep7natDTrL*TI2fcjDjwA7Twlws-3aPYOkKZDVH26F69THtShE57woUlmpSBqw9czP*k65*9IfCuq0jiJElQGi69Szn8DPebmKXDWATt6vxEWduea7*sLy-Lt*1bcbctGhgZk78A5S7dyQ + method: GET + type: redirect + details: + - key: payload + type: text + paymentData: Ab02b4c0!BQABAgCINC3kOq5nsaj4k+VaArf6VIiTWkYALwijaS+VOvzTSf76Un3WYBgKJlEBqALZW3vlw+IDQGw5jqkVBO4axEJEFKu5fDL2RkeHbm+aHY7tlRVsjvNIcVTNbMtHJcclHakOVTrtTCQfspf11XGsmENUaL45bdeu07iDBtpnIvd39p6g8OVaLcSIGaA8Zosd93hs0h3lvIePt3QTekeOUH+zrMMfLyy/4QKBZtLjnWo3/4U0e2tsneOudynW0l5i+VyobWOZb7yZUj7v9GMVpAZ3YEqNZ1aWJlSmty9TJTpXp4PQQcNeELQAfTu4zaarMq5btRZpcmDRvSOQK0Qo/PvfWrv/si0c1NPr5EM43ebdkLiDEUSIGBDTellblheOaRsgD0JlrNLOHSpS6iCiyY5FQaWx7FpnYReP/un2f/2mMGxdehif1MqWWZzgAhjdA4kksQVb8eMIGLY2IveJ4iTmDAkFbhIATs2SuWhYBGqFnBGeH1jlJCJDDV8/XJ0IcX1/r0qC3wsUFecoElZ6gts+4tlfPUoeuSH/NFmyBEzrjZbgCqCH9YVXa/+W+dwQCOQ0G7K4SJepnlNcmpCtI29zMZgeRqmtzI0hImvQYt188MXK44ieh2wsmpVv6Y9EGIgJVR+t1IZKizm6Q2D5MCUC1uAVwu2iw7Xt5Re1XcWSaBC/nZt2iHaZF7kpgIXfrFshAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifVTgdc9kCwE5LJyeGFVSr+P70S1hwc62Ad03Oy1Ksxr823klh1hxYQDWBJETNf/YmYC9cHDGr6LxMQ8OOnwfg2xjsVU7ZUwWJbHid1vU/oJzHBXe54lHMNNre0HaQD6TSokVpazQsY3hRB84uevmeT7KVal98iqXd755VuiIxwHhhywaub1ogyQQEVxNGWx2+vL5Vh8NKmoghZQ+NLSZWRn77hJTGV+lKJdseGA9nV7DSlWodNmZ8RyRfQoqwtaK9woQ87PIN7XqSznZMS1HWMOE/aDLEXLJEfozHWrHuGVmn6Hupt/fBnm1GckSsMGeQNKS+4XmKGrJefrHDmdoZVBaZS9UjxfKjD2sCwu5vutgb6SLrECgCvu3q5/LTyFeTuPV1ZZrlpapC6umnWmSKmj/SdnhXJO00PNuFT2WY/GyH0cyA498zApE6VtLx2e9IvS01Oex6ZCRFDJ6sDCBzVN5g60vsm9tBut6trpQWyryqVM2cQ39xh9olCQ5Ml+2h4YFV5gA+1c0i+e6SeMtFJN788NW2EnQT/2pzM/rNAaSVwSf8vJcx3ZB9n8Pf8xi2buKZFEkyJpZJSg22JC/38D1E0tPRpQ7gZ1Z86meAGXnfKUtA+w2FllB2Y0dMrqi8jXnS/mqMPBmPVnIxUW96e40cB7W8E0VDf1IKx/wQphI8/vM3UOSqC81agmnyQ3nIDrAy8vqMOD+d1xcoElzRNy0OxU6v/90IKkhfAKr3Tur7Vb3FD6Pi/XrujJX95UlRd7fmaAI7Po1cIh1v7HEhsCNoh1z7WFNag== + redirect: + method: GET + url: https://test.adyen.com/hpp/checkout.shtml?u=redirectIdeal&p=eJxtUl1zmzAQ-DXwZgaB*XrQg0Nwg2s3DTVtJy8ZRbqAYlsikmCMf30FddNMpzOak2bvZm-3Ts*KCJZLBpgzIEeX9kqBoOMMFXXlcq17UCXDCAXIPYGiLRFmRanshcF70GZ3xd6TpTDQKGK4FJ4ZO8D5XZF-vq-3T5*KL0VV5v*tHEBpe*Pob5cKXmBSA1gbxUXzIWF6JW6JITjLUIySNItQliVxsH6v*cYbnNSHZsMfcydYr8SrE9yY7HRjavMAlyyIjhuK*tzszj9ew-uHrN854a3bkfEE1uBp9od833cV6Lra4taYzglXlsueo6Tk2EptLJL6qW8h2gI9yN7oVnYdKItoUAOnoO3z62-aUlB5sk4qYFwBNTYzoD9015odmFYyJ1z-M2yr7uO4nSBW8xisNpua1NlG0SQwmiTaMMpeLWzDjojRs-cMep7natDTrL*TI2fcjDjwA7Twlws-3aPYOkKZDVH26F69THtShE57woUlmpSBqw9czP*k65*9IfCuq0jiJElQGi69Szn8DPebmKXDWATt6vxEWduea7*sLy-Lt*1bcbctGhgZk78A5S7dyQ + post-payments-klarna: + summary: Make a Klarna payment + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + reference: YOUR_ORDER_REFERENCE + paymentMethod: + type: klarna + amount: + currency: SEK + value: '1000' + shopperLocale: en_US + countryCode: SE + telephoneNumber: +46 840 839 298 + shopperEmail: youremail@email.com + shopperName: + firstName: Testperson-se + gender: UNKNOWN + lastName: Approved + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + billingAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + deliveryAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + returnUrl: https://www.your-company.com/... + lineItems: + - quantity: '1' + amountExcludingTax: '331' + taxPercentage: '2100' + description: Shoes + id: 'Item #1' + taxAmount: '69' + amountIncludingTax: '400' + productUrl: URL_TO_PURCHASED_ITEM + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + - quantity: '2' + amountExcludingTax: '248' + taxPercentage: '2100' + description: Socks + id: 'Item #2' + taxAmount: '52' + amountIncludingTax: '300' + productUrl: URL_TO_PURCHASED_ITEM + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + post-payments-oneclick-direct: + summary: Make a one-off payment with a token and CVV + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + storedPaymentMethodId: '8416038790273850' + cardDetails.cvc: '737' + shopperReference: YOUR_UNIQUE_SHOPPER_ID_6738oneoff + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-oneclick-securedfields: + summary: Make a one-off payment with a token and CVV (using encrypted card details) + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + storedPaymentMethodId: '8416038790273850' + encryptedSecurityCode: adyenjs_0_1_18$MT6ppy0FAMVMLH... + shopperReference: YOUR_UNIQUE_SHOPPER_ID_6738oneoff + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + recurringProcessingModel: CardOnFile + post-payments-recurring: + summary: Make a card payment with a token + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + storedPaymentMethodId: '8316038796685850' + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3subscription + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + shopperInteraction: ContAuth + recurringProcessingModel: Subscription + post-payments-result-basic: + summary: Verify payment results + value: + payload: VALUE_YOU_GET_FROM_CHECKOUT_SDK + post-payments-sofort: + summary: Make a Sofort payment + value: + amount: + currency: EUR + value: 1000 + reference: Your order number + paymentMethod: + type: directEbanking + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-sofort-200: + summary: Example response for request 'sofort' + value: + resultCode: RedirectShopper + action: + paymentData: Ab02b4c0!BQABAgB1H7lBY8Uxf1bWoNkA9C2/BuD1Fa2+f3+u8Q3sZLCf6/nmkhPEg1CleH0L6NnNoxwgiHBzmljYF6QFoshWsEZ4Hp1fyq9S/IGHFcl6GlQHlQf/RATlCw21Il1BDhcjSib3JpxXWk/NeZbk/ZEvNrWNQOmHo0/eYxCSLl7OgE+PVyKfWogK8awCPNcqV52wgy27P7MlKQaZVfMTTlMfA2tS+xnGgXCXK+BpdLGXagCyRkhmi4QQLVv/sgSv4Zycu829yhaorOkum7hKEW3Os/DaIZbZjKglVpfFk4N2Qsa8ReydNGI1EeX9CfntJMFOMIWJeyfTimHhxZvUnIJ1cgIBLA8rdSxf3xExRXnK8xphXX+Aah4BIgRmLfOsnwsf6lnYcvPKg/3rMV/gK/g9iOC32wMGbzB7J+nPbW+ht5LJOK9ax/63H1bLT2Zm5UxcbzZsm8BccCyGqkMq8vZAE262urS4rGLzDCZXyJ22bq9yzQ/wUDVMhbTn55Cxotx+FwIhQA2SF0yZ+wgi1ty9ovl251eYbRdWNasvCwPaXxdTCVVD7wrdQbC5wQTpQO64EnQvYfiRerVQ5mCAu82VL4dCesNHvpKv2hKENa3p9ZFRJrle6wIUYX5fyscZDvEoqHvuqF+SpTXANK9PKGl6aaTCpg497/2x3wSU9Sxf8lzsrxAymOZnLENryrDr0v9IrYfDAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifexJovSnPKAg5NtTcILGEFLB/SoybKa3lEbVdUI76QewA8VFXNI8Ulnwlriy07AS4NDbZSfSfNYijSBS1uVsfo9kiabnFe0CQ29377TnsI1Bliv/CM6lBFp9SWQcLgSQQZkD1j4daab9L33mkUhQ/6Q+ERVtx2g+MAYNjl4xyJrc2IOQQ+0IUVGUZgJ4xKNTbf4TN0+EZXPvqxQ3ejsdtE3UhGjlZGS4HND7nkdljh/AfN5+JLe0fnvEgdfPZFttHCvdoOwosLL4ACSD5HH5v3Dc6wXuHAILopU+P/JUWa04gKInYMc1ABOzR9kOwzOHvWey7vrjONxyvUgietuYsuXkyozuL+hCgaJ4uZAIIvKqR/uTAZm76T82ds8+OcWoVgywHJRp+Vgn9Q2N5zf36DI/OWkQuYgRITz0NlT9QTjFwuWi15igdBlfufW/Gzp3mUXfYwj5GfJQBALOIGMzr9VEH6iukqHnA6tpdDOqAo9l5gsjzbPIMGkz66memwj5ZkxSSN69mgi+VEhOebAxSDDbGX0ONGY4gu12UQiiCOYx29LH3D7ANQTOjuyMmFBnHzMMRf+RoSzfrPLqiGvEC7b4vHwdzqCYNsz/cFAEouXFrZ72zzoWgpx62j/yKacRSW/PjmnEK/BOzjcovKfE3+thEybC0sjvDQSrMxQ34BvZM/+pWLXK5dY2QlBlHzRVPxmcw0tqO7dIcklC9GtEBrcr6Oc4U9ry0USIRLphRlP2eC4DOudUhbJ9AjujilVAocGy/BXOufpLJuhbaprux++0RRpxQ3ZdpMP//TiWuw== + paymentMethodType: directEbanking + url: https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1zmzAQ-DXmzYwE5sMPenAJjmmdtqHGTfuSkcUFaGyJSIKa-PoexHU7nc4wErN7c7e7p4PmskxUCaxsNAibHrh8bmTliE5rkGKYuLTInRNoUXNpV0KoTlq2A2PvLtiVzKSFSnPbKOnaoQWWbNLkw6di93ibfkzzLPlvZQ-a4M0CeqVzeIJxPjBj9ajnD2E7LW*45Wy5pCGN4mXg0SAKF**uNV*aitGvXrK3tw-forjdn5fdWp*LIg88UtzbtviRHVN1X9lNuJ15658z-8Zp*XACtHea3FFCiKPBFPmW1da2M3*FhfgdleDHWhmLSExigpCoQTyrzppatS1oRAzovhFg8PfzW9tMCnVCHzm85YxMT3*3u9Tcga1VOfPX-0SN6v4Oe*aFegoBtSE1qsNBwSgwGCXiMahOz3Fgy*Xg4j2Brus6BsyY9J4fm7KxA-OIR*dkMSfxjoboyCN40OC7c-EybklzMW6JpdhoVAaOwRcyvYu2O7i9514WEYVRFNHYX7ivWf-g796HZdwPqVevzo*irOtzQbLi9Wnxsn1JN9u0gqEs1S-zMtxA + method: GET + type: redirect + details: + - key: payload + type: text + paymentData: Ab02b4c0!BQABAgB1H7lBY8Uxf1bWoNkA9C2/BuD1Fa2+f3+u8Q3sZLCf6/nmkhPEg1CleH0L6NnNoxwgiHBzmljYF6QFoshWsEZ4Hp1fyq9S/IGHFcl6GlQHlQf/RATlCw21Il1BDhcjSib3JpxXWk/NeZbk/ZEvNrWNQOmHo0/eYxCSLl7OgE+PVyKfWogK8awCPNcqV52wgy27P7MlKQaZVfMTTlMfA2tS+xnGgXCXK+BpdLGXagCyRkhmi4QQLVv/sgSv4Zycu829yhaorOkum7hKEW3Os/DaIZbZjKglVpfFk4N2Qsa8ReydNGI1EeX9CfntJMFOMIWJeyfTimHhxZvUnIJ1cgIBLA8rdSxf3xExRXnK8xphXX+Aah4BIgRmLfOsnwsf6lnYcvPKg/3rMV/gK/g9iOC32wMGbzB7J+nPbW+ht5LJOK9ax/63H1bLT2Zm5UxcbzZsm8BccCyGqkMq8vZAE262urS4rGLzDCZXyJ22bq9yzQ/wUDVMhbTn55Cxotx+FwIhQA2SF0yZ+wgi1ty9ovl251eYbRdWNasvCwPaXxdTCVVD7wrdQbC5wQTpQO64EnQvYfiRerVQ5mCAu82VL4dCesNHvpKv2hKENa3p9ZFRJrle6wIUYX5fyscZDvEoqHvuqF+SpTXANK9PKGl6aaTCpg497/2x3wSU9Sxf8lzsrxAymOZnLENryrDr0v9IrYfDAEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifexJovSnPKAg5NtTcILGEFLB/SoybKa3lEbVdUI76QewA8VFXNI8Ulnwlriy07AS4NDbZSfSfNYijSBS1uVsfo9kiabnFe0CQ29377TnsI1Bliv/CM6lBFp9SWQcLgSQQZkD1j4daab9L33mkUhQ/6Q+ERVtx2g+MAYNjl4xyJrc2IOQQ+0IUVGUZgJ4xKNTbf4TN0+EZXPvqxQ3ejsdtE3UhGjlZGS4HND7nkdljh/AfN5+JLe0fnvEgdfPZFttHCvdoOwosLL4ACSD5HH5v3Dc6wXuHAILopU+P/JUWa04gKInYMc1ABOzR9kOwzOHvWey7vrjONxyvUgietuYsuXkyozuL+hCgaJ4uZAIIvKqR/uTAZm76T82ds8+OcWoVgywHJRp+Vgn9Q2N5zf36DI/OWkQuYgRITz0NlT9QTjFwuWi15igdBlfufW/Gzp3mUXfYwj5GfJQBALOIGMzr9VEH6iukqHnA6tpdDOqAo9l5gsjzbPIMGkz66memwj5ZkxSSN69mgi+VEhOebAxSDDbGX0ONGY4gu12UQiiCOYx29LH3D7ANQTOjuyMmFBnHzMMRf+RoSzfrPLqiGvEC7b4vHwdzqCYNsz/cFAEouXFrZ72zzoWgpx62j/yKacRSW/PjmnEK/BOzjcovKfE3+thEybC0sjvDQSrMxQ34BvZM/+pWLXK5dY2QlBlHzRVPxmcw0tqO7dIcklC9GtEBrcr6Oc4U9ry0USIRLphRlP2eC4DOudUhbJ9AjujilVAocGy/BXOufpLJuhbaprux++0RRpxQ3ZdpMP//TiWuw== + redirect: + method: GET + url: https://test.adyen.com/hpp/checkout.shtml?u=skipDetails&p=eJxtUl1zmzAQ-DXmzYwE5sMPenAJjmmdtqHGTfuSkcUFaGyJSIKa-PoexHU7nc4wErN7c7e7p4PmskxUCaxsNAibHrh8bmTliE5rkGKYuLTInRNoUXNpV0KoTlq2A2PvLtiVzKSFSnPbKOnaoQWWbNLkw6di93ibfkzzLPlvZQ-a4M0CeqVzeIJxPjBj9ajnD2E7LW*45Wy5pCGN4mXg0SAKF**uNV*aitGvXrK3tw-forjdn5fdWp*LIg88UtzbtviRHVN1X9lNuJ15658z-8Zp*XACtHea3FFCiKPBFPmW1da2M3*FhfgdleDHWhmLSExigpCoQTyrzppatS1oRAzovhFg8PfzW9tMCnVCHzm85YxMT3*3u9Tcga1VOfPX-0SN6v4Oe*aFegoBtSE1qsNBwSgwGCXiMahOz3Fgy*Xg4j2Brus6BsyY9J4fm7KxA-OIR*dkMSfxjoboyCN40OC7c-EybklzMW6JpdhoVAaOwRcyvYu2O7i9514WEYVRFNHYX7ivWf-g796HZdwPqVevzo*irOtzQbLi9Wnxsn1JN9u0gqEs1S-zMtxA + post-payments-split: + summary: Split a payment between a sub-merchant and a platform account + value: + paymentMethod: + type: scheme + number: '4111111111111111' + cvc: '737' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + amount: + value: 6200 + currency: EUR + reference: YOUR_ORDER_NUMBER + merchantAccount: YOUR_MERCHANT_ACCOUNT + returnUrl: https://your-company.com/... + splits: + - amount: + value: 6000 + type: MarketPlace + account: '151272963' + reference: '6124145' + description: 'Porcelain Doll: Eliza (20cm)' + - amount: + value: 200 + type: Commission + reference: '6124146' + post-payments-subscription-first-transaction: + summary: Tokenize card details for a subscription + value: + amount: + currency: USD + value: 1000 + reference: Your order number + paymentMethod: + type: scheme + number: '4111111111111111' + expiryMonth: '03' + expiryYear: '2030' + holderName: John Smith + cvc: '737' + shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + storePaymentMethod: true + shopperInteraction: Ecommerce + recurringProcessingModel: Subscription + returnUrl: https://your-company.com/... + merchantAccount: YOUR_MERCHANT_ACCOUNT + post-payments-subscription-first-transaction-200: + summary: Example response for request 'subscription-first-transaction' + value: + additionalData: + cvcResult: 1 Matches + authCode: 098871 + avsResult: 4 AVS not supported for this card type + recurring.recurringDetailReference: '9916178934434753' + recurringProcessingModel: Subscription + avsResultRaw: '4' + cvcResultRaw: M + refusalReasonRaw: AUTHORISED + recurring.shopperReference: YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j + acquirerCode: TestPmmAcquirer + acquirerReference: 8PQMP9VD896 + pspReference: 993617895199574A + resultCode: Authorised + merchantReference: string + post-sessions-enableOneClick: + summary: Tokenize card details for one-off payments + description: Example request for tokenizing card details for one-off payments + value: + merchantAccount: TestMerchantCheckout + amount: + value: 100 + currency: EUR + returnUrl: https://your-company.com/checkout?shopperOrder=12xy.. + reference: YOUR_PAYMENT_REFERENCE + countryCode: NL + storePaymentMethod: true + shopperInteraction: Ecommerce + recurringProcessingModel: CardOnFile + post-sessions-enableOneClick-200: + summary: 'Response code: 201. Success.' + description: 'Example ' + value: + amount: + currency: EUR + value: 100 + countryCode: NL + expiresAt: '2022-01-11T13:56:05+01:00' + id: CSEE37DC1DD751A01F + merchantAccount: YOUR_MERCHANT_ACCOUNT + recurringProcessingModel: CardOnFile + reference: YOUR_PAYMENT_REFERENCE + returnUrl: https://your-company.com/checkout?shopperOrder=12xy.. + shopperInteraction: Ecommerce + storePaymentMethod: true + sessionData: Ab02b4c0!BQABAgBfYI29... + post-sessions-klarna: + summary: Create a payment session including Klarna fields + description: Example request for creating a payment session when Klarna is one + of the available payment methods + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + reference: YOUR_ORDER_REFERENCE + amount: + currency: SEK + value: 1000 + shopperLocale: en_US + countryCode: SE + telephoneNumber: +46 840 839 298 + shopperEmail: youremail@email.com + shopperName: + firstName: Testperson-se + gender: UNKNOWN + lastName: Approved + shopperReference: YOUR_UNIQUE_SHOPPER_ID + billingAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + deliveryAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + dateOfBirth: '1996-09-04' + socialSecurityNumber: 0108 + returnUrl: https://example.org + lineItems: + - quantity: '1' + amountExcludingTax: '331' + taxPercentage: '2100' + description: Shoes + id: 'Item #1' + taxAmount: '69' + amountIncludingTax: '400' + productUrl: URL_TO_PURCHASED_ITEM + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + - quantity: '2' + amountExcludingTax: '248' + taxPercentage: '2100' + description: Socks + id: 'Item #2' + taxAmount: '52' + amountIncludingTax: '300' + productUrl: URL_TO_PURCHASED_ITEM + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + post-sessions-klarna-200: + summary: 'Response code: 201. Success.' + description: 'Example ' + value: + amount: + currency: SEK + value: 1000 + billingAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + countryCode: SE + dateOfBirth: '1996-09-04T02:00:00+02:00' + deliveryAddress: + city: Ankeborg + country: SE + houseNumberOrName: '1' + postalCode: '12345' + street: Stargatan + expiresAt: '2022-01-11T13:57:52+01:00' + id: CSC52E9932D39ADAF3 + lineItems: + - amountExcludingTax: 331 + amountIncludingTax: 400 + description: Shoes + id: 'Item #1' + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + productUrl: URL_TO_PURCHASED_ITEM + quantity: 1 + taxAmount: 69 + taxPercentage: 2100 + - amountExcludingTax: 248 + amountIncludingTax: 300 + description: Socks + id: 'Item #2' + imageUrl: URL_TO_PICTURE_OF_PURCHASED_ITEM + productUrl: URL_TO_PURCHASED_ITEM + quantity: 2 + taxAmount: 52 + taxPercentage: 2100 + merchantAccount: YOUR_MERCHANT_ACCOUNT + reference: YOUR_ORDER_REFERENCE + returnUrl: https://example.org + shopperEmail: youremail@email.com + shopperLocale: en_US + shopperName: + firstName: Testperson-se + gender: UNKNOWN + lastName: Approved + shopperReference: YOUR_UNIQUE_SHOPPER_ID + socialSecurityNumber: 0108 + telephoneNumber: +46 840 839 298 + sessionData: Ab02b4c0!BQABAgBfYI29... + post-sessions-success: + summary: Create a payment session + description: Example request for creating a payment session + value: + merchantAccount: YOUR_MERCHANT_ACCOUNT + amount: + value: 100 + currency: EUR + returnUrl: https://your-company.com/checkout?shopperOrder=12xy.. + reference: YOUR_PAYMENT_REFERENCE + countryCode: NL + post-sessions-success-200: + summary: 'Response code: 201. Success.' + description: Example response for creating a payment session + value: + amount: + currency: EUR + value: 100 + countryCode: NL + expiresAt: '2022-01-11T13:53:18+01:00' + id: CS451F2AB1ED897A94 + merchantAccount: YOUR_MERCHANT_ACCOUNT + reference: YOUR_PAYMENT_REFERENCE + returnUrl: https://your-company.com/checkout?shopperOrder=12xy.. + sessionData: Ab02b4c0!BQABAgBfYI29... diff --git a/yaml/DataProtectionService-v1.yaml b/yaml/DataProtectionService-v1.yaml new file mode 100644 index 0000000..089ba4b --- /dev/null +++ b/yaml/DataProtectionService-v1.yaml @@ -0,0 +1,168 @@ +openapi: 3.1.0 +info: + version: '1' + x-publicVersion: true + title: Adyen Data Protection API + description: 'Adyen Data Protection API provides a way for you to process [Subject + Erasure Requests](https://gdpr-info.eu/art-17-gdpr/) as mandated in GDPR. + + + Use our API to submit a request to delete shopper''s data, including payment details + and other related information (for example, delivery address or shopper email).## + Authentication + + Each request to the Data Protection API must be signed with an API key. Get your + API Key from your Customer Area, as described in [How to get the API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key). + Then set this key to the `X-API-Key` header value, for example: + + + ``` + + curl + + -H "Content-Type: application/json" \ + + -H "X-API-Key: Your_API_key" \ + + ... + + ``` + + Note that when going live, you need to generate a new API Key to access the [live + endpoints](https://docs.adyen.com/development-resources/live-endpoints). + + + ## Versioning + + Data Protection Service API supports [versioning](https://docs.adyen.com/development-resources/versioning) + using a version suffix in the endpoint URL. This suffix has the following format: + "vXX", where XX is the version number. + + + For example: + + ``` + + https://ca-test.adyen.com/ca/services/DataProtectionService/v1/requestSubjectErasure + + ```' + x-timestamp: '2022-05-03T09:24:04Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- General +tags: +- name: General +paths: + /requestSubjectErasure: + post: + tags: + - General + summary: Submit a Subject Erasure Request. + description: Sends the PSP reference containing the shopper data that should + be deleted. + operationId: post-requestSubjectErasure + x-groupName: General + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectErasureByPspReferenceRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectErasureResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. +components: + schemas: + ServiceError: + properties: + errorCode: + description: The error code mapped to the error message. + type: string + errorType: + description: The category of the error. + type: string + message: + description: A short explanation of the issue. + type: string + pspReference: + description: The PSP reference of the payment. + type: string + status: + description: The HTTP response status. + format: int32 + type: integer + SubjectErasureByPspReferenceRequest: + properties: + forceErasure: + description: Set this to **true** if you want to delete shopper-related + data, even if the shopper has an existing recurring transaction. This + only deletes the shopper-related data for the specific payment, but does + not cancel the existing recurring transaction. + type: boolean + merchantAccount: + description: Your merchant account + type: string + pspReference: + description: The PSP reference of the payment. We will delete all shopper-related + data for this payment. + type: string + SubjectErasureResponse: + properties: + result: + description: The result of this operation. + enum: + - ACTIVE_RECURRING_TOKEN_EXISTS + - ALREADY_PROCESSED + - PAYMENT_NOT_FOUND + - SUCCESS + type: string + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + examples: {} diff --git a/yaml/FundService-v3.yaml b/yaml/FundService-v3.yaml index 6310d89..d3304c9 100644 --- a/yaml/FundService-v3.yaml +++ b/yaml/FundService-v3.yaml @@ -5,51 +5,24 @@ info: version: '3' x-publicVersion: true title: 'Adyen for Platforms: Fund API' - description: 'The Fund API provides endpoints for managing the funds in the accounts - on your platform. These management operations include actions such as the transfer - of funds from one account to another, the payout of funds to an account holder, - and the retrieval of balances in an account. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Fund API, you must use basic authentication credentials of your - web service user. If you don''t have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Fund/v3/accountHolderBalance - - ```' + description: "The Fund API provides endpoints for managing the funds in the accounts\ + \ on your platform. These management operations include, for example, the transfer\ + \ of funds from one account to another, the payout of funds to an account holder,\ + \ and the retrieval of balances in an account.\n\nFor more information, refer\ + \ to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\n\ + Your Adyen contact will provide your API credential and an API key. To connect\ + \ to the API, add an `X-API-Key` header with the API key as the value, for example:\n\ + \n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\"\ + \ \\\n...\n```\n\nAlternatively, you can use the username and password to connect\ + \ to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\"\ + :\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\n\ + When going live, you need to generate new web service user credentials to access\ + \ the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v3/accountHolderBalance\n\ + ```" + x-timestamp: '2022-04-21T16:24:56Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,10 +37,10 @@ paths: post: tags: - General - summary: Retrieve the balance(s) of an account holder. - description: 'This endpoint is used to retrieve the balance(s) of the accounts - of an account holder. An account''s balances are on a per-currency basis (i.e., - an account may have multiple balances: one per currency).' + summary: Get the balances of an account holder + description: 'Returns the account balances of an account holder. An account''s + balances are organized according by currencies. This mean that an account + may have multiple balances: one for each currency.' operationId: post-accountHolderBalance x-groupName: General x-sortIndex: 1 @@ -123,13 +96,13 @@ paths: post: tags: - General - summary: Retrieve a list of transactions. - description: This endpoint is used to retrieve a list of Transactions for an - account holder's accounts. The accounts and Transaction Statuses to be included - on the list can be specified. Each call will return a maximum of fifty (50) - Transactions per account; in order to retrieve the following set of Transactions - another call should be made with the 'page' value incremented. Note that Transactions - are ordered with most recent first. + summary: Get a list of transactions + description: Returns a list of transactions for an account holder's accounts. + You can specify the accounts and transaction statuses to be included on the + list. The call returns a maximum of 50 transactions for each account. To retrieve + all transactions, you must make another call with the 'page' value incremented. + Transactions are listed in chronological order, with the most recent transaction + first. operationId: post-accountHolderTransactionList x-groupName: General x-sortIndex: 2 @@ -187,12 +160,12 @@ paths: post: tags: - General - summary: Send a direct debit request. + summary: Send a direct debit request description: "Sends a direct debit request to an account holder's bank account.\ \ If the direct debit is successful, the funds are settled in the accounts\ \ specified in the split instructions. Adyen sends the result of the direct\ \ debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED)\ - \ notification webhook.\n\n To learn more about use cases, refer to [Top up\ + \ notification webhook.\n\n To learn more about direct debits, see [Top up\ \ accounts](https://docs.adyen.com/platforms/top-up-accounts)." operationId: post-debitAccountHolder x-groupName: General @@ -203,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder' schema: $ref: '#/components/schemas/DebitAccountHolderRequest' responses: '200': content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder-200' schema: $ref: '#/components/schemas/DebitAccountHolderResponse' description: OK - the request has succeeded. @@ -253,9 +232,9 @@ paths: post: tags: - General - summary: Disburse a specified amount from an account to the account holder. - description: This endpoint is used to pay out a specified amount from an account - to the bank account of the account's account holder. + summary: Pay out from an account to the account holder + description: Pays out a specified amount from an account to the bank account + of account holder. operationId: post-payoutAccountHolder x-groupName: General x-sortIndex: 3 @@ -318,10 +297,9 @@ paths: post: tags: - General - summary: Make a refund of the existing transfer funds transfer. - description: 'This endpoint is used to refund funds transferred from one account - to another. Both accounts must be in the same marketplace, but can have different - account holders. ' + summary: Refund a funds transfer + description: 'Refunds funds transferred from one account to another. Both accounts + must be in the same platform, but can have different account holders. ' operationId: post-refundFundsTransfer x-groupName: General x-sortIndex: 5 @@ -384,14 +362,13 @@ paths: post: tags: - General - summary: Refund all transactions of an account since the most recent payout. - description: This endpoint is used to refund all the transactions of an account - which have taken place since the most recent payout. This request is on a - per-account basis (as opposed to a per-payment basis), so only the portion - of the payment which was made to the specified account will be refunded. The - commission(s), fee(s), and payment(s) to other account(s), will remain in - the accounts to which they were sent as designated by the original payment's - split details. + summary: Refund all transactions of an account since the most recent payout + description: Refunds all the transactions of an account that have taken place + since the most recent payout. This request is on a account basis (as opposed + to a payment basis), so only the portion of the payment that was made to the + specified account is refunded. The commissions, fees, and payments to other + accounts remain in the accounts to which they were sent as designated by the + original payment's split details. operationId: post-refundNotPaidOutTransfers x-groupName: General x-sortIndex: 7 @@ -454,14 +431,14 @@ paths: post: tags: - General - summary: Designate an account to be the beneficiary of a separate account and - transfer the benefactor's current balance to the beneficiary. - description: This endpoint is used to define a benefactor and a beneficiary - relationship between two accounts. At the time of benefactor/beneficiary setup, - the funds in the benefactor account are transferred to the beneficiary account, - and any further payments to the benefactor account are automatically sent - to the beneficiary account. Note that a series of benefactor/beneficiaries - may not exceed four (4) beneficiaries and may not have a cycle in it. + summary: Designate a beneficiary account and transfer the benefactor's current + balance + description: Defines a benefactor and a beneficiary relationship between two + accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor + account are transferred to the beneficiary account, and any further payments + to the benefactor account are automatically sent to the beneficiary account. + A series of benefactor/beneficiaries may not exceed four beneficiaries and + may not have a cycle in it. operationId: post-setupBeneficiary x-groupName: General x-sortIndex: 6 @@ -524,11 +501,11 @@ paths: post: tags: - General - summary: Transfer funds from one platform account to another. - description: This endpoint is used to transfer funds from one account to another - account. Both accounts must be in the same marketplace, but can have different - account holders. The transfer must include a transfer code, which should be - determined by the marketplace, in compliance with local regulations. + summary: Transfer funds between platform accounts + description: Transfers funds from one account to another account. Both accounts + must be in the same platform, but can have different account holders. The + transfer must include a transfer code, which should be determined by the platform, + in compliance with local regulations. operationId: post-transferFunds x-groupName: General x-sortIndex: 4 @@ -934,9 +911,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1113,7 +1091,6 @@ components: required: - accountHolderCode - accountCode - - amount PayoutAccountHolderResponse: properties: bankAccountUUID: @@ -1303,13 +1280,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -1543,6 +1521,33 @@ components: - TransactionListForAccount: accountCode: 2e64b396-1200-4474-b848-0cb06b52b3c7 page: 2 + post-debitAccountHolder-debit-account-holder: + summary: Send a bank account direct debit + description: Example request to send a direct debit from a bank account + value: + accountHolderCode: ACCOUNT_HOLDER_CODE + description: YOUR_DESCRIPTION + bankAccountUUID: 000b81aa-ae7e-4492-aa7e-72b2129dce0c + amount: + value: 6200 + currency: USD + merchantAccount: YOUR_MERCHANT_ACCOUNT + splits: + - amount: + value: 6000 + type: MarketPlace + account: '8535516988037431' + reference: YOUR_SPLIT_REFERENCE_1 + - amount: + value: 200 + type: Commission + reference: YOUR_SPLIT_REFERENCE_2 + post-debitAccountHolder-debit-account-holder-200: + summary: Direct debit request sent + description: Example response for requesting a direct debit from a bank account + value: + pspReference: '8816480354727275' + submittedAsync: 'false' post-payoutAccountHolder-oneOff: summary: One-off payout value: diff --git a/yaml/FundService-v5.yaml b/yaml/FundService-v5.yaml index b7ec737..49a2d73 100644 --- a/yaml/FundService-v5.yaml +++ b/yaml/FundService-v5.yaml @@ -5,51 +5,24 @@ info: version: '5' x-publicVersion: true title: 'Adyen for Platforms: Fund API' - description: 'The Fund API provides endpoints for managing the funds in the accounts - on your platform. These management operations include actions such as the transfer - of funds from one account to another, the payout of funds to an account holder, - and the retrieval of balances in an account. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Fund API, you must use basic authentication credentials of your - web service user. If you don''t have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Fund/v5/accountHolderBalance - - ```' + description: "The Fund API provides endpoints for managing the funds in the accounts\ + \ on your platform. These management operations include, for example, the transfer\ + \ of funds from one account to another, the payout of funds to an account holder,\ + \ and the retrieval of balances in an account.\n\nFor more information, refer\ + \ to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\n\ + Your Adyen contact will provide your API credential and an API key. To connect\ + \ to the API, add an `X-API-Key` header with the API key as the value, for example:\n\ + \n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\"\ + \ \\\n...\n```\n\nAlternatively, you can use the username and password to connect\ + \ to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\"\ + :\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\n\ + When going live, you need to generate new web service user credentials to access\ + \ the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v5/accountHolderBalance\n\ + ```" + x-timestamp: '2022-04-21T16:24:56Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,10 +37,10 @@ paths: post: tags: - General - summary: Retrieve the balance(s) of an account holder. - description: 'This endpoint is used to retrieve the balance(s) of the accounts - of an account holder. An account''s balances are on a per-currency basis (i.e., - an account may have multiple balances: one per currency).' + summary: Get the balances of an account holder + description: 'Returns the account balances of an account holder. An account''s + balances are organized according by currencies. This mean that an account + may have multiple balances: one for each currency.' operationId: post-accountHolderBalance x-groupName: General x-sortIndex: 1 @@ -123,13 +96,13 @@ paths: post: tags: - General - summary: Retrieve a list of transactions. - description: This endpoint is used to retrieve a list of Transactions for an - account holder's accounts. The accounts and Transaction Statuses to be included - on the list can be specified. Each call will return a maximum of fifty (50) - Transactions per account; in order to retrieve the following set of Transactions - another call should be made with the 'page' value incremented. Note that Transactions - are ordered with most recent first. + summary: Get a list of transactions + description: Returns a list of transactions for an account holder's accounts. + You can specify the accounts and transaction statuses to be included on the + list. The call returns a maximum of 50 transactions for each account. To retrieve + all transactions, you must make another call with the 'page' value incremented. + Transactions are listed in chronological order, with the most recent transaction + first. operationId: post-accountHolderTransactionList x-groupName: General x-sortIndex: 2 @@ -187,12 +160,12 @@ paths: post: tags: - General - summary: Send a direct debit request. + summary: Send a direct debit request description: "Sends a direct debit request to an account holder's bank account.\ \ If the direct debit is successful, the funds are settled in the accounts\ \ specified in the split instructions. Adyen sends the result of the direct\ \ debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED)\ - \ notification webhook.\n\n To learn more about use cases, refer to [Top up\ + \ notification webhook.\n\n To learn more about direct debits, see [Top up\ \ accounts](https://docs.adyen.com/platforms/top-up-accounts)." operationId: post-debitAccountHolder x-groupName: General @@ -203,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder' schema: $ref: '#/components/schemas/DebitAccountHolderRequest' responses: '200': content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder-200' schema: $ref: '#/components/schemas/DebitAccountHolderResponse' description: OK - the request has succeeded. @@ -253,9 +232,9 @@ paths: post: tags: - General - summary: Disburse a specified amount from an account to the account holder. - description: This endpoint is used to pay out a specified amount from an account - to the bank account of the account's account holder. + summary: Pay out from an account to the account holder + description: Pays out a specified amount from an account to the bank account + of account holder. operationId: post-payoutAccountHolder x-groupName: General x-sortIndex: 3 @@ -318,10 +297,9 @@ paths: post: tags: - General - summary: Make a refund of the existing transfer funds transfer. - description: 'This endpoint is used to refund funds transferred from one account - to another. Both accounts must be in the same marketplace, but can have different - account holders. ' + summary: Refund a funds transfer + description: 'Refunds funds transferred from one account to another. Both accounts + must be in the same platform, but can have different account holders. ' operationId: post-refundFundsTransfer x-groupName: General x-sortIndex: 5 @@ -384,14 +362,13 @@ paths: post: tags: - General - summary: Refund all transactions of an account since the most recent payout. - description: This endpoint is used to refund all the transactions of an account - which have taken place since the most recent payout. This request is on a - per-account basis (as opposed to a per-payment basis), so only the portion - of the payment which was made to the specified account will be refunded. The - commission(s), fee(s), and payment(s) to other account(s), will remain in - the accounts to which they were sent as designated by the original payment's - split details. + summary: Refund all transactions of an account since the most recent payout + description: Refunds all the transactions of an account that have taken place + since the most recent payout. This request is on a account basis (as opposed + to a payment basis), so only the portion of the payment that was made to the + specified account is refunded. The commissions, fees, and payments to other + accounts remain in the accounts to which they were sent as designated by the + original payment's split details. operationId: post-refundNotPaidOutTransfers x-groupName: General x-sortIndex: 7 @@ -454,14 +431,14 @@ paths: post: tags: - General - summary: Designate an account to be the beneficiary of a separate account and - transfer the benefactor's current balance to the beneficiary. - description: This endpoint is used to define a benefactor and a beneficiary - relationship between two accounts. At the time of benefactor/beneficiary setup, - the funds in the benefactor account are transferred to the beneficiary account, - and any further payments to the benefactor account are automatically sent - to the beneficiary account. Note that a series of benefactor/beneficiaries - may not exceed four (4) beneficiaries and may not have a cycle in it. + summary: Designate a beneficiary account and transfer the benefactor's current + balance + description: Defines a benefactor and a beneficiary relationship between two + accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor + account are transferred to the beneficiary account, and any further payments + to the benefactor account are automatically sent to the beneficiary account. + A series of benefactor/beneficiaries may not exceed four beneficiaries and + may not have a cycle in it. operationId: post-setupBeneficiary x-groupName: General x-sortIndex: 6 @@ -524,11 +501,11 @@ paths: post: tags: - General - summary: Transfer funds from one platform account to another. - description: This endpoint is used to transfer funds from one account to another - account. Both accounts must be in the same marketplace, but can have different - account holders. The transfer must include a transfer code, which should be - determined by the marketplace, in compliance with local regulations. + summary: Transfer funds between platform accounts + description: Transfers funds from one account to another account. Both accounts + must be in the same platform, but can have different account holders. The + transfer must include a transfer code, which should be determined by the platform, + in compliance with local regulations. operationId: post-transferFunds x-groupName: General x-sortIndex: 4 @@ -930,9 +907,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1104,6 +1082,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -1305,7 +1287,6 @@ components: required: - accountHolderCode - accountCode - - amount PayoutAccountHolderResponse: properties: bankAccountUUID: @@ -1489,13 +1470,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -1723,6 +1705,33 @@ components: transactionListsPerAccount: - accountCode: 2e64b396-1200-4474-b848-0cb06b52b3c7 page: 2 + post-debitAccountHolder-debit-account-holder: + summary: Send a bank account direct debit + description: Example request to send a direct debit from a bank account + value: + accountHolderCode: ACCOUNT_HOLDER_CODE + description: YOUR_DESCRIPTION + bankAccountUUID: 000b81aa-ae7e-4492-aa7e-72b2129dce0c + amount: + value: 6200 + currency: USD + merchantAccount: YOUR_MERCHANT_ACCOUNT + splits: + - amount: + value: 6000 + type: MarketPlace + account: '8535516988037431' + reference: YOUR_SPLIT_REFERENCE_1 + - amount: + value: 200 + type: Commission + reference: YOUR_SPLIT_REFERENCE_2 + post-debitAccountHolder-debit-account-holder-200: + summary: Direct debit request sent + description: Example response for requesting a direct debit from a bank account + value: + pspReference: '8816480354727275' + submittedAsync: 'false' post-payoutAccountHolder-oneOff: summary: One-off payout value: diff --git a/yaml/FundService-v6.yaml b/yaml/FundService-v6.yaml index 073e666..4e03d58 100644 --- a/yaml/FundService-v6.yaml +++ b/yaml/FundService-v6.yaml @@ -5,51 +5,24 @@ info: version: '6' x-publicVersion: true title: 'Adyen for Platforms: Fund API' - description: 'The Fund API provides endpoints for managing the funds in the accounts - on your platform. These management operations include actions such as the transfer - of funds from one account to another, the payout of funds to an account holder, - and the retrieval of balances in an account. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms). - - ## Authentication - - To connect to the Fund API, you must use basic authentication credentials of your - web service user. If you don''t have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use its credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance - - ```' + description: "The Fund API provides endpoints for managing the funds in the accounts\ + \ on your platform. These management operations include, for example, the transfer\ + \ of funds from one account to another, the payout of funds to an account holder,\ + \ and the retrieval of balances in an account.\n\nFor more information, refer\ + \ to our [documentation](https://docs.adyen.com/platforms).\n## Authentication\n\ + Your Adyen contact will provide your API credential and an API key. To connect\ + \ to the API, add an `X-API-Key` header with the API key as the value, for example:\n\ + \n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\"\ + \ \\\n...\n```\n\nAlternatively, you can use the username and password to connect\ + \ to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\"\ + :\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\n\ + When going live, you need to generate new web service user credentials to access\ + \ the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Fund API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance\n\ + ```" + x-timestamp: '2022-04-21T16:24:56Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,10 +37,10 @@ paths: post: tags: - General - summary: Retrieve the balance(s) of an account holder. - description: 'This endpoint is used to retrieve the balance(s) of the accounts - of an account holder. An account''s balances are on a per-currency basis (i.e., - an account may have multiple balances: one per currency).' + summary: Get the balances of an account holder + description: 'Returns the account balances of an account holder. An account''s + balances are organized according by currencies. This mean that an account + may have multiple balances: one for each currency.' operationId: post-accountHolderBalance x-groupName: General x-sortIndex: 1 @@ -123,13 +96,13 @@ paths: post: tags: - General - summary: Retrieve a list of transactions. - description: This endpoint is used to retrieve a list of Transactions for an - account holder's accounts. The accounts and Transaction Statuses to be included - on the list can be specified. Each call will return a maximum of fifty (50) - Transactions per account; in order to retrieve the following set of Transactions - another call should be made with the 'page' value incremented. Note that Transactions - are ordered with most recent first. + summary: Get a list of transactions + description: Returns a list of transactions for an account holder's accounts. + You can specify the accounts and transaction statuses to be included on the + list. The call returns a maximum of 50 transactions for each account. To retrieve + all transactions, you must make another call with the 'page' value incremented. + Transactions are listed in chronological order, with the most recent transaction + first. operationId: post-accountHolderTransactionList x-groupName: General x-sortIndex: 2 @@ -187,12 +160,12 @@ paths: post: tags: - General - summary: Send a direct debit request. + summary: Send a direct debit request description: "Sends a direct debit request to an account holder's bank account.\ \ If the direct debit is successful, the funds are settled in the accounts\ \ specified in the split instructions. Adyen sends the result of the direct\ \ debit in a [`DIRECT_DEBIT_INITIATED`](https://docs.adyen.com/api-explorer/#/NotificationService/latest/post/DIRECT_DEBIT_INITIATED)\ - \ notification webhook.\n\n To learn more about use cases, refer to [Top up\ + \ notification webhook.\n\n To learn more about direct debits, see [Top up\ \ accounts](https://docs.adyen.com/platforms/top-up-accounts)." operationId: post-debitAccountHolder x-groupName: General @@ -203,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder' schema: $ref: '#/components/schemas/DebitAccountHolderRequest' responses: '200': content: application/json: + examples: + debit-account-holder: + $ref: '#/components/examples/post-debitAccountHolder-debit-account-holder-200' schema: $ref: '#/components/schemas/DebitAccountHolderResponse' description: OK - the request has succeeded. @@ -253,9 +232,9 @@ paths: post: tags: - General - summary: Disburse a specified amount from an account to the account holder. - description: This endpoint is used to pay out a specified amount from an account - to the bank account of the account's account holder. + summary: Pay out from an account to the account holder + description: Pays out a specified amount from an account to the bank account + of account holder. operationId: post-payoutAccountHolder x-groupName: General x-sortIndex: 3 @@ -318,10 +297,9 @@ paths: post: tags: - General - summary: Make a refund of the existing transfer funds transfer. - description: 'This endpoint is used to refund funds transferred from one account - to another. Both accounts must be in the same marketplace, but can have different - account holders. ' + summary: Refund a funds transfer + description: 'Refunds funds transferred from one account to another. Both accounts + must be in the same platform, but can have different account holders. ' operationId: post-refundFundsTransfer x-groupName: General x-sortIndex: 5 @@ -384,14 +362,13 @@ paths: post: tags: - General - summary: Refund all transactions of an account since the most recent payout. - description: This endpoint is used to refund all the transactions of an account - which have taken place since the most recent payout. This request is on a - per-account basis (as opposed to a per-payment basis), so only the portion - of the payment which was made to the specified account will be refunded. The - commission(s), fee(s), and payment(s) to other account(s), will remain in - the accounts to which they were sent as designated by the original payment's - split details. + summary: Refund all transactions of an account since the most recent payout + description: Refunds all the transactions of an account that have taken place + since the most recent payout. This request is on a account basis (as opposed + to a payment basis), so only the portion of the payment that was made to the + specified account is refunded. The commissions, fees, and payments to other + accounts remain in the accounts to which they were sent as designated by the + original payment's split details. operationId: post-refundNotPaidOutTransfers x-groupName: General x-sortIndex: 7 @@ -454,14 +431,14 @@ paths: post: tags: - General - summary: Designate an account to be the beneficiary of a separate account and - transfer the benefactor's current balance to the beneficiary. - description: This endpoint is used to define a benefactor and a beneficiary - relationship between two accounts. At the time of benefactor/beneficiary setup, - the funds in the benefactor account are transferred to the beneficiary account, - and any further payments to the benefactor account are automatically sent - to the beneficiary account. Note that a series of benefactor/beneficiaries - may not exceed four (4) beneficiaries and may not have a cycle in it. + summary: Designate a beneficiary account and transfer the benefactor's current + balance + description: Defines a benefactor and a beneficiary relationship between two + accounts. At the time of benefactor/beneficiary setup, the funds in the benefactor + account are transferred to the beneficiary account, and any further payments + to the benefactor account are automatically sent to the beneficiary account. + A series of benefactor/beneficiaries may not exceed four beneficiaries and + may not have a cycle in it. operationId: post-setupBeneficiary x-groupName: General x-sortIndex: 6 @@ -524,11 +501,11 @@ paths: post: tags: - General - summary: Transfer funds from one platform account to another. - description: This endpoint is used to transfer funds from one account to another - account. Both accounts must be in the same marketplace, but can have different - account holders. The transfer must include a transfer code, which should be - determined by the marketplace, in compliance with local regulations. + summary: Transfer funds between platform accounts + description: Transfers funds from one account to another account. Both accounts + must be in the same platform, but can have different account holders. The + transfer must include a transfer code, which should be determined by the platform, + in compliance with local regulations. operationId: post-transferFunds x-groupName: General x-sortIndex: 4 @@ -930,9 +907,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1104,6 +1082,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -1305,7 +1287,6 @@ components: required: - accountHolderCode - accountCode - - amount PayoutAccountHolderResponse: properties: bankAccountUUID: @@ -1489,13 +1470,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -1723,6 +1705,33 @@ components: transactionListsPerAccount: - accountCode: 2e64b396-1200-4474-b848-0cb06b52b3c7 page: 2 + post-debitAccountHolder-debit-account-holder: + summary: Send a bank account direct debit + description: Example request to send a direct debit from a bank account + value: + accountHolderCode: ACCOUNT_HOLDER_CODE + description: YOUR_DESCRIPTION + bankAccountUUID: 000b81aa-ae7e-4492-aa7e-72b2129dce0c + amount: + value: 6200 + currency: USD + merchantAccount: YOUR_MERCHANT_ACCOUNT + splits: + - amount: + value: 6000 + type: MarketPlace + account: '8535516988037431' + reference: YOUR_SPLIT_REFERENCE_1 + - amount: + value: 200 + type: Commission + reference: YOUR_SPLIT_REFERENCE_2 + post-debitAccountHolder-debit-account-holder-200: + summary: Direct debit request sent + description: Example response for requesting a direct debit from a bank account + value: + pspReference: '8816480354727275' + submittedAsync: 'false' post-payoutAccountHolder-oneOff: summary: One-off payout value: diff --git a/yaml/HopService-v1.yaml b/yaml/HopService-v1.yaml index 786d0b7..f2fc40d 100644 --- a/yaml/HopService-v1.yaml +++ b/yaml/HopService-v1.yaml @@ -5,50 +5,23 @@ info: version: '1' x-publicVersion: true title: 'Adyen for Platforms: Hosted Onboarding' - description: 'The Hosted onboarding API provides endpoints that you can use to generate - links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) - or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). - Then you can provide the link to your account holder so they can complete their - onboarding. - - - ## Authentication - - To connect to the Hosted onboarding API, you must use basic authentication credentials - of your web service user. If you don''t have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use your credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - When going live, you need to generate new web service user credentials to access - the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Hop/v1/getOnboardingUrl - - ```' + description: "The Hosted onboarding API provides endpoints that you can use to generate\ + \ links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page)\ + \ or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners).\ + \ You can provide these links to your account holders so that they can complete\ + \ their onboarding.\n\n## Authentication\nYour Adyen contact will provide your\ + \ API credential and an API key. To connect to the API, add an `X-API-Key` header\ + \ with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type:\ + \ application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively,\ + \ you can use the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v1/getOnboardingUrl\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -65,10 +38,10 @@ paths: post: tags: - Hosted Onboarding Page - summary: Get a link to a Adyen-hosted onboarding page. + summary: Get a link to a Adyen-hosted onboarding page description: 'Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer - to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ' + to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ' operationId: post-getOnboardingUrl x-groupName: Hosted Onboarding Page x-sortIndex: 1 @@ -78,12 +51,18 @@ paths: requestBody: content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url' schema: $ref: '#/components/schemas/GetOnboardingUrlRequest' responses: '200': content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url-200' schema: $ref: '#/components/schemas/GetOnboardingUrlResponse' description: OK - the request has succeeded. @@ -121,7 +100,7 @@ paths: post: tags: - PCI Compliance Questionnaire Page - summary: Get a link to a PCI compliance questionnaire. + summary: Get a link to a PCI compliance questionnaire description: "Returns a link to a PCI compliance questionnaire that you can\ \ send to your account holder.\n > You should only use this endpoint if you\ \ have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners)." @@ -134,12 +113,18 @@ paths: requestBody: content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url' schema: $ref: '#/components/schemas/GetPciUrlRequest' responses: '200': content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200' schema: $ref: '#/components/schemas/GetPciUrlResponse' description: OK - the request has succeeded. @@ -229,6 +214,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -533,6 +522,10 @@ components: description: Indicates whether the page with the legal arrangements' details must be shown. Defaults to **true**. type: boolean + manualBankAccountPage: + description: Indicates whether the page to manually add bank account' details + must be shown. Defaults to **true**. + type: boolean shareholderDetailsSummaryPage: description: Indicates whether the page with the shareholders' details must be shown. Defaults to **true**. @@ -549,4 +542,34 @@ components: BasicAuth: scheme: basic type: http - examples: {} + examples: + post-getOnboardingUrl-get-onboarding-url: + summary: Get a hosted onboarding page link + description: Returns a link to an Adyen-hosted onboarding page (HOP) that you + can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getOnboardingUrl-get-onboarding-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '9115677600500127' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/view/?token= + post-getPciQuestionnaireUrl-get-pci-questionnaire-url: + summary: Get a PCI questionnaire link + description: Returns a link to an Adyen-hosted PCI compliance questionnaire + that you can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '8315748692943050' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/pci/?token= diff --git a/yaml/HopService-v5.yaml b/yaml/HopService-v5.yaml index 5a64427..517c990 100644 --- a/yaml/HopService-v5.yaml +++ b/yaml/HopService-v5.yaml @@ -5,50 +5,23 @@ info: version: '5' x-publicVersion: true title: 'Adyen for Platforms: Hosted Onboarding' - description: 'The Hosted onboarding API provides endpoints that you can use to generate - links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) - or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). - Then you can provide the link to your account holder so they can complete their - onboarding. - - - ## Authentication - - To connect to the Hosted onboarding API, you must use basic authentication credentials - of your web service user. If you don''t have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use your credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - When going live, you need to generate new web service user credentials to access - the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Hop/v5/getOnboardingUrl - - ```' + description: "The Hosted onboarding API provides endpoints that you can use to generate\ + \ links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page)\ + \ or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners).\ + \ You can provide these links to your account holders so that they can complete\ + \ their onboarding.\n\n## Authentication\nYour Adyen contact will provide your\ + \ API credential and an API key. To connect to the API, add an `X-API-Key` header\ + \ with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type:\ + \ application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively,\ + \ you can use the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v5/getOnboardingUrl\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -65,10 +38,10 @@ paths: post: tags: - Hosted Onboarding Page - summary: Get a link to a Adyen-hosted onboarding page. + summary: Get a link to a Adyen-hosted onboarding page description: 'Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer - to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ' + to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ' operationId: post-getOnboardingUrl x-groupName: Hosted Onboarding Page x-sortIndex: 1 @@ -78,12 +51,18 @@ paths: requestBody: content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url' schema: $ref: '#/components/schemas/GetOnboardingUrlRequest' responses: '200': content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url-200' schema: $ref: '#/components/schemas/GetOnboardingUrlResponse' description: OK - the request has succeeded. @@ -121,7 +100,7 @@ paths: post: tags: - PCI Compliance Questionnaire Page - summary: Get a link to a PCI compliance questionnaire. + summary: Get a link to a PCI compliance questionnaire description: "Returns a link to a PCI compliance questionnaire that you can\ \ send to your account holder.\n > You should only use this endpoint if you\ \ have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners)." @@ -134,12 +113,18 @@ paths: requestBody: content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url' schema: $ref: '#/components/schemas/GetPciUrlRequest' responses: '200': content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200' schema: $ref: '#/components/schemas/GetPciUrlResponse' description: OK - the request has succeeded. @@ -229,6 +214,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -515,6 +504,10 @@ components: description: Indicates whether the page with the legal arrangements' details must be shown. Defaults to **true**. type: boolean + manualBankAccountPage: + description: Indicates whether the page to manually add bank account' details + must be shown. Defaults to **true**. + type: boolean shareholderDetailsSummaryPage: description: Indicates whether the page with the shareholders' details must be shown. Defaults to **true**. @@ -531,4 +524,34 @@ components: BasicAuth: scheme: basic type: http - examples: {} + examples: + post-getOnboardingUrl-get-onboarding-url: + summary: Get a hosted onboarding page link + description: Returns a link to an Adyen-hosted onboarding page (HOP) that you + can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getOnboardingUrl-get-onboarding-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '9115677600500127' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/view/?token= + post-getPciQuestionnaireUrl-get-pci-questionnaire-url: + summary: Get a PCI questionnaire link + description: Returns a link to an Adyen-hosted PCI compliance questionnaire + that you can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '8315748692943050' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/pci/?token= diff --git a/yaml/HopService-v6.yaml b/yaml/HopService-v6.yaml index 7b315d8..a40b2b2 100644 --- a/yaml/HopService-v6.yaml +++ b/yaml/HopService-v6.yaml @@ -5,50 +5,23 @@ info: version: '6' x-publicVersion: true title: 'Adyen for Platforms: Hosted Onboarding' - description: 'The Hosted onboarding API provides endpoints that you can use to generate - links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page) - or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners). - Then you can provide the link to your account holder so they can complete their - onboarding. - - - ## Authentication - - To connect to the Hosted onboarding API, you must use basic authentication credentials - of your web service user. If you don''t have one, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new). - Then use your credentials to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - When going live, you need to generate new web service user credentials to access - the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Hop/v6/getOnboardingUrl - - ```' + description: "The Hosted onboarding API provides endpoints that you can use to generate\ + \ links to Adyen-hosted pages, such as an [onboarding page](https://docs.adyen.com/platforms/hosted-onboarding-page)\ + \ or a [PCI compliance questionnaire](https://docs.adyen.com/platforms/platforms-for-partners).\ + \ You can provide these links to your account holders so that they can complete\ + \ their onboarding.\n\n## Authentication\nYour Adyen contact will provide your\ + \ API credential and an API key. To connect to the API, add an `X-API-Key` header\ + \ with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type:\ + \ application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively,\ + \ you can use the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Hosted onboarding API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Hop/v6/getOnboardingUrl\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -65,10 +38,10 @@ paths: post: tags: - Hosted Onboarding Page - summary: Get a link to a Adyen-hosted onboarding page. + summary: Get a link to a Adyen-hosted onboarding page description: 'Returns a link to an Adyen-hosted onboarding page (HOP) that you can send to your account holder. For more information on how to use HOP, refer - to [Hosted onboarding](https://docs.adyen.com/platforms/hosted-onboarding-page). ' + to [Hosted onboarding](https://docs.adyen.com/platforms/collect-verification-details/hosted-onboarding-page). ' operationId: post-getOnboardingUrl x-groupName: Hosted Onboarding Page x-sortIndex: 1 @@ -78,12 +51,18 @@ paths: requestBody: content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url' schema: $ref: '#/components/schemas/GetOnboardingUrlRequest' responses: '200': content: application/json: + examples: + get-onboarding-url: + $ref: '#/components/examples/post-getOnboardingUrl-get-onboarding-url-200' schema: $ref: '#/components/schemas/GetOnboardingUrlResponse' description: OK - the request has succeeded. @@ -121,7 +100,7 @@ paths: post: tags: - PCI Compliance Questionnaire Page - summary: Get a link to a PCI compliance questionnaire. + summary: Get a link to a PCI compliance questionnaire description: "Returns a link to a PCI compliance questionnaire that you can\ \ send to your account holder.\n > You should only use this endpoint if you\ \ have a [partner platform setup](https://docs.adyen.com/platforms/platforms-for-partners)." @@ -134,12 +113,18 @@ paths: requestBody: content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url' schema: $ref: '#/components/schemas/GetPciUrlRequest' responses: '200': content: application/json: + examples: + get-pci-questionnaire-url: + $ref: '#/components/examples/post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200' schema: $ref: '#/components/schemas/GetPciUrlResponse' description: OK - the request has succeeded. @@ -229,6 +214,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -449,14 +438,6 @@ components: after they fill out the questionnaire, or if their session times out. Maximum length of 500 characters. type: string - shopperLocale: - description: "The language to be used in the page, specified by a combination\ - \ of a language and country code. For example, **pt-BR**. \n\nIf not specified\ - \ in the request or if the language is not supported, the page uses the\ - \ browser language. If the browser language is not supported, the page\ - \ uses **en-US** by default.\n\nFor a list supported languages, refer\ - \ to [Change the page language](https://docs.adyen.com/platforms/hosted-onboarding-page/customize-experience#change-page-language)." - type: string required: - accountHolderCode GetPciUrlResponse: @@ -543,4 +524,34 @@ components: BasicAuth: scheme: basic type: http - examples: {} + examples: + post-getOnboardingUrl-get-onboarding-url: + summary: Get a hosted onboarding page link + description: Returns a link to an Adyen-hosted onboarding page (HOP) that you + can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getOnboardingUrl-get-onboarding-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '9115677600500127' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/view/?token= + post-getPciQuestionnaireUrl-get-pci-questionnaire-url: + summary: Get a PCI questionnaire link + description: Returns a link to an Adyen-hosted PCI compliance questionnaire + that you can send to your account holder. + value: + accountHolderCode: CODE_OF_ACCOUNT_HOLDER + returnUrl: https://your.return-url.com/?submerchant=123 + post-getPciQuestionnaireUrl-get-pci-questionnaire-url-200: + summary: Hosted onboarding page link + description: Example response for requesting a hosted onboarding page link + value: + invalidFields: [] + pspReference: '8315748692943050' + resultCode: Success + redirectUrl: https://hop-test.adyen.com/hop/pci/?token= diff --git a/yaml/LegalEntityService-v1.yaml b/yaml/LegalEntityService-v1.yaml new file mode 100644 index 0000000..d6e5558 --- /dev/null +++ b/yaml/LegalEntityService-v1.yaml @@ -0,0 +1,1654 @@ +openapi: 3.1.0 +servers: +- url: https://kyc-test.adyen.com/lem/v1 +info: + version: '1' + x-publicVersion: true + title: Legal Entity API + description: "The Legal Entity API enables you to manage legal entities that contain\ + \ information required for verification. \nFor every account holder, you need\ + \ to create a legal entity for their organization and the individuals associated\ + \ with their organization.\n## Authentication\nTo connect to the Legal Entity\ + \ API, you must use the basic authentication credentials of your web service user.\ + \ If you don't have one, contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new).\ + \ Use the web service user credentials to authenticate your request, for example:\n\ + \n```\ncurl\n-U \"ws12345@Scope.BalancePlatform_YourBalancePlatform\":\"YourWsPassword\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going\ + \ live, you need to generate new web service user credentials to access the [live\ + \ endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n\ + ## Versioning\nThe Legal Entity API supports versioning of its endpoints through\ + \ a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://kyc-test.adyen.com/lem/v1/legalEntities\n\ + ```\n## Going live\nWhen going live, your Adyen contact will provide your API\ + \ credential for the live environment. You can then use the username and password\ + \ to send requests to `https://kyc-live.adyen.com/lem/v1`.\n\nFor more information,\ + \ refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-05-03T09:24:02Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- Legal entities +- Transfer instruments +- Business lines +- Documents +tags: +- name: Legal entities +- name: Business lines +- name: Documents +- name: Transfer instruments +paths: + /businessLines: + post: + tags: + - Business lines + summary: Create a business line + description: "Creates a business line. \n\nThis resource contains information\ + \ about your user's line of business, including their industry and their source\ + \ of funds. Adyen uses this information to verify your users as required by\ + \ payment industry regulations. Adyen informs you of the verification results\ + \ through webhooks or API responses." + x-addedInVersion: '1' + operationId: post-businessLines + x-groupName: Business lines + x-sortIndex: 12 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + createBusinessLines: + $ref: '#/components/examples/post-businessLines-createBusinessLines' + schema: + $ref: '#/components/schemas/BusinessLineInfo' + responses: + '200': + content: + application/json: + examples: + post-businessLines: + $ref: '#/components/examples/post-businessLines-post-businessLines-200' + schema: + $ref: '#/components/schemas/BusinessLine' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /businessLines/{id}: + get: + tags: + - Business lines + summary: Get a business line + description: Returns a business line. + x-addedInVersion: '1' + operationId: get-businessLines-id + x-groupName: Business lines + x-sortIndex: 13 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the business line. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BusinessLine' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /documents: + post: + tags: + - Documents + summary: Upload a document for verification checks + description: "Uploads a document for verification checks.\n\n Adyen uses the\ + \ information from the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities)\ + \ to run automated verification checks. If these checks fail, you will be\ + \ notified to provide additional documents. Adyen uses the documents to validate\ + \ the identity of the individual or organization legal entity, or the legal\ + \ entity's bank account details.\n\n You should only upload documents when\ + \ Adyen requests additional information for the legal entity. For more information,\ + \ refer to [Onboard and verify account holders](https://docs.adyen.com/issuing/kyc-verification)." + x-addedInVersion: '1' + operationId: post-documents + x-groupName: Documents + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Document' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Document' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /documents/{id}: + delete: + tags: + - Documents + summary: Delete a document + description: Deletes a document. + x-addedInVersion: '1' + operationId: delete-documents-id + x-groupName: Documents + x-sortIndex: 7 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the document to be deleted. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/VoidResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + get: + tags: + - Documents + summary: Get a document + description: Returns a document. + x-addedInVersion: '1' + operationId: get-documents-id + x-groupName: Documents + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the document. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Document' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Documents + summary: Update a document + description: Updates a document. + x-addedInVersion: '1' + operationId: patch-documents-id + x-groupName: Documents + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Document' + parameters: + - description: The unique identifier of the document to be updated. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Document' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /legalEntities: + post: + tags: + - Legal entities + summary: Create a legal entity + description: "Creates a legal entity. \n\nThis resource contains information\ + \ about an individual or organization that will be onboarded in your balance\ + \ platform. Adyen uses this information to perform verification checks as\ + \ required by payment industry regulations. Adyen informs you of the verification\ + \ results through webhooks or API responses. \n\nAfter the legal entity has\ + \ passed the verification checks, you can issue a card to them. For more information,\ + \ refer to [Onboard and verify account holders](https://docs.adyen.com/issuing/kyc-verification)." + x-addedInVersion: '1' + operationId: post-legalEntities + x-groupName: Legal entities + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/LegalEntityInfo' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/LegalEntity' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /legalEntities/{id}: + get: + tags: + - Legal entities + summary: Get a legal entity + description: Returns a legal entity. + x-addedInVersion: '1' + operationId: get-legalEntities-id + x-groupName: Legal entities + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the legal entity. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/LegalEntity' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Legal entities + summary: Update a legal entity + description: "Updates a legal entity.\n\n >To update the `entityAssociations`\ + \ array, you need to replace the entire array. For example, if the array has\ + \ 3 entries and you want to remove 1 entry, you need to PATCH the resource\ + \ with the remaining 2 entries." + x-addedInVersion: '1' + operationId: patch-legalEntities-id + x-groupName: Legal entities + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GenericEntityInfo' + parameters: + - description: The unique identifier of the legal entity. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/LegalEntity' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /legalEntities/{id}/businessLines: + get: + tags: + - Legal entities + summary: Get all business lines under a legal entity + description: Returns the business lines owned by a legal entity. + x-addedInVersion: '1' + operationId: get-legalEntities-id-businessLines + x-groupName: Legal entities + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the legal entity + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BusinessLines' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /transferInstruments: + post: + tags: + - Transfer instruments + summary: Create a transfer instrument + description: "Creates a transfer instrument. \n\nA transfer instrument is a\ + \ bank account or other payment details that a legal entity owns. Adyen performs\ + \ verification checks on the transfer instrument as required by payment industry\ + \ regulations. We inform you of the verification results through webhooks\ + \ or API responses.\n\nWhen the transfer instrument passes the verification\ + \ checks, you can start sending funds from the balance platform to the transfer\ + \ instrument (such as payouts)." + x-addedInVersion: '1' + operationId: post-transferInstruments + x-groupName: Transfer instruments + x-sortIndex: 8 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInstrumentInfo' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInstrument' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + /transferInstruments/{id}: + delete: + tags: + - Transfer instruments + summary: Delete a transfer instrument + description: Deletes a transfer instrument. + x-addedInVersion: '1' + operationId: delete-transferInstruments-id + x-groupName: Transfer instruments + x-sortIndex: 11 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the transfer instrument to be deleted. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/VoidResponse' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + get: + tags: + - Transfer instruments + summary: Get a transfer instrument + description: Returns a transfer instrument. + x-addedInVersion: '1' + operationId: get-transferInstruments-id + x-groupName: Transfer instruments + x-sortIndex: 9 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the transfer instrument. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInstrument' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Transfer instruments + summary: Update a transfer instrument + description: Updates a transfer instrument. + x-addedInVersion: '1' + operationId: patch-transferInstruments-id + x-groupName: Transfer instruments + x-sortIndex: 10 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInstrumentInfo' + parameters: + - description: The unique identifier of the transfer instrument. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInstrument' + description: OK - the request has succeeded. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceError' + description: Internal Server Error - the server could not process the request. +components: + schemas: + Address: + properties: + city: + description: 'The name of the city. Required if `stateOrProvince` is provided. + + + If you specify the city, you must also send `postalCode` and `street`.' + type: string + country: + description: The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + country code. + type: string + postalCode: + description: Postal code. Required if `stateOrProvince` and/or `city` is + provided. + type: string + stateOrProvince: + description: "The two-letter ISO 3166-2 state or province code. For example,\ + \ **CA** in the US. \n\nIf you specify the state or province, you must\ + \ also send `city`, `postalCode`, and `street`." + type: string + street: + description: The name of the street, and the house or building number. Required + if `stateOrProvince` and/or `city` is provided. + type: string + street2: + description: The apartment, unit, or suite number. + type: string + required: + - country + Attachment: + properties: + content: + description: The document in Base64-encoded string format. + format: byte + type: string + contentType: + deprecated: true + x-deprecatedInVersion: '1' + description: "The file format.\n\n Possible values: **application/pdf**,\ + \ **image/jpg**, **image/jpeg**, **image/png**. " + type: string + filename: + deprecated: true + x-deprecatedInVersion: '1' + description: The name of the file including the file extension. + type: string + pageType: + description: 'Specifies which side of the ID card is uploaded. + + + * When `type` is **driversLicense**, set this to **front** or **back**. + + + * When omitted, we infer the page number based on the order of attachments.' + type: string + required: + - content + BankAccountInfo: + properties: + accountNumber: + description: "The bank account number (without separators).\n\n When this\ + \ is provided, the `bankCode` and `branchCode` are also required." + type: string + accountType: + description: "The type of bank account. Only applies to bank accounts held\ + \ in the US. \n\nPossible values: **checking**, **savings**." + type: string + bankBicSwift: + description: The bank's BIC or SWIFT code. + type: string + bankCity: + description: The city where the bank is located. + type: string + bankCode: + description: 'The bank code of the banking institution with which the bank + account is registered. + + + Required when you provide an `accountNumber`.' + type: string + bankName: + description: The name of the banking institution where the bank account + is held. + type: string + branchCode: + description: "The branch code of the branch under which the bank account\ + \ is registered.\n\nRequired when you provide an `accountNumber`.\n\n\ + \ In the following countries, this value corresponds to:\n\n\n* United\ + \ States: routing number\n* United Kingdom: sort code\n* Germany: Bankleitzahl" + type: string + checkCode: + description: The check code of the bank account. + type: string + countryCode: + description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + country code where the bank account is registered. For example, **NL**. + type: string + currencyCode: + description: The account's three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + For example, **EUR**. + type: string + iban: + description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) + standard. + type: string + requestedVerificationCode: + type: string + required: + - countryCode + - currencyCode + BirthData: + properties: + dateOfBirth: + description: The individual's date of birth, in YYYY-MM-DD format. + type: string + BusinessLine: + properties: + capability: + description: The capability for which you are creating the business line. + For example, **receivePayments**. + type: string + id: + description: The unique identifier of the business line. + readOnly: true + type: string + industryCode: + description: 'A code that represents the type of goods and services that + your user is offering. For example, **4431A** for computer software stores. ' + type: string + legalEntityId: + description: Unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id) + that owns the business line. + type: string + salesChannels: + description: "A list of channels where goods or services are sold. You cannot\ + \ combine point of sale and ecommerce in one business line.\n\n Possible\ + \ values and combinations:\n\n - For point of sale: **pos** and **posMoto**\n\ + \n- For ecommerce: **eCommerce** and **ecomMoto**\n\n- For Pay by Link:\ + \ **payByLink**" + items: + type: string + type: array + sourceOfFunds: + description: Contains information about the source of your user's funds. + Required for some capabilities, for example, **issueCard**. + $ref: '#/components/schemas/SourceOfFunds' + webData: + description: List of website URLs where your user's goods or services are + sold. When this is required for a capability but your user does not have + an online presence, provide the reason in the `webDataExemption` object. + items: + $ref: '#/components/schemas/WebData' + type: array + webDataExemption: + description: The reason why the web data is not provided. + $ref: '#/components/schemas/WebDataExemption' + required: + - capability + - industryCode + - legalEntityId + - id + BusinessLineInfo: + properties: + capability: + description: The capability for which you are creating the business line. + For example, **receivePayments**. + type: string + industryCode: + description: 'A code that represents the type of goods and services that + your user is offering. For example, **4431A** for computer software stores. ' + type: string + legalEntityId: + description: Unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id) + that owns the business line. + type: string + salesChannels: + description: "A list of channels where goods or services are sold. You cannot\ + \ combine point of sale and ecommerce in one business line.\n\n Possible\ + \ values and combinations:\n\n - For point of sale: **pos** and **posMoto**\n\ + \n- For ecommerce: **eCommerce** and **ecomMoto**\n\n- For Pay by Link:\ + \ **payByLink**" + items: + type: string + type: array + sourceOfFunds: + description: Contains information about the source of your user's funds. + Required for some capabilities, for example, **issueCard**. + $ref: '#/components/schemas/SourceOfFunds' + webData: + description: List of website URLs where your user's goods or services are + sold. When this is required for a capability but your user does not have + an online presence, provide the reason in the `webDataExemption` object. + items: + $ref: '#/components/schemas/WebData' + type: array + webDataExemption: + description: The reason why the web data is not provided. + $ref: '#/components/schemas/WebDataExemption' + required: + - capability + - industryCode + - legalEntityId + BusinessLines: + properties: + businessLines: + description: List of business lines. + items: + $ref: '#/components/schemas/BusinessLine' + type: array + required: + - businessLines + Document: + properties: + attachment: + deprecated: true + x-deprecatedInVersion: '1' + x-deprecatedMessage: Use the `attachments` array instead. + description: Object that contains the document. + $ref: '#/components/schemas/Attachment' + attachments: + description: Array that contains the document. The array supports multiple + attachments for uploading different sides or pages of a document. + items: + $ref: '#/components/schemas/Attachment' + type: array + description: + description: Your description for the document. + type: string + expiryDate: + deprecated: true + x-deprecatedInVersion: '1' + description: The expiry date of the document, in YYYY-MM-DD format. + type: string + fileName: + description: The filename of the document. + type: string + id: + description: The unique identifier of the document. + readOnly: true + type: string + issuerCountry: + deprecated: true + x-deprecatedInVersion: '1' + description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + country code where the document was issued. For example, **US**. + type: string + issuerState: + deprecated: true + x-deprecatedInVersion: '1' + description: The state or province where the document was issued (AU only). + type: string + number: + description: The number in the document. + type: string + owner: + description: Contains information about the resource that owns the document. + $ref: '#/components/schemas/Entity' + type: + description: "Type of document, used when providing an ID number or uploading\ + \ a document. The possible values depend on the legal entity `type`.\n\ + \n* When providing ID numbers for individuals, the values can be **driversLicense**,\ + \ **identityCard**, **nationalIdNumber**, or **passport**.\n\nWhen uploading\ + \ documents:\n* For `type` **organization**, the values can be **proofOfAddress**,\ + \ **registrationDocument**, or **taxDocument**. \n\n* For `type` **individual**,\ + \ the values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**,\ + \ or **proofOfResidency**.\n\n* Use **bankStatement** to upload documents\ + \ for a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id)." + enum: + - bankStatement + - driversLicense + - identityCard + - nationalIdNumber + - passport + - proofOfAddress + - proofOfNationalIdNumber + - proofOfResidency + - registrationDocument + - taxDocument + type: string + required: + - type + - description + - owner + - attachments + - id + Entity: + properties: + id: + description: Unique identifier of the resource that owns the document. Depending + on the entity `type`, this value can be the unique identifier of the [legal + entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) + or the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id). + type: string + type: + description: 'Type of resource that owns the document. + + + Possible values: **legalEntity**, **bankAccount**.' + type: string + required: + - id + - type + EntityReference: + properties: + id: + description: The unique identifier of the resource. + type: string + GenericEntityInfo: + properties: + entityAssociations: + description: 'List of legal entities associated with the current legal entity. + + For example, ultimate business owners associated with an organization + through ownership or control, or as signatories. ' + items: + $ref: '#/components/schemas/LegalEntityAssociation' + type: array + individual: + description: Information about the individual. Required if `type` is **individual**. + $ref: '#/components/schemas/Individual' + organization: + description: Information about the organization. Required if `type` is **organization**. + $ref: '#/components/schemas/Organization' + IdentificationData: + properties: + expiryDate: + deprecated: true + x-deprecatedInVersion: '1' + description: The expiry date of the document, in YYYY-MM-DD format. + type: string + issuerCountry: + deprecated: true + x-deprecatedInVersion: '1' + description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + country code where the document was issued. For example, **US**. + type: string + issuerState: + description: The state or province where the document was issued (AU only). + type: string + nationalIdExempt: + description: Applies only to individuals in the US. Set to **true** if the + individual does not have an SSN. To verify their identity, Adyen will + require them to [upload an ID document](https://docs.adyen.com/issuing/kyc-verification#upload-documents). + type: boolean + number: + description: The number in the document. + type: string + type: + description: "Type of document, used when providing an ID number or uploading\ + \ a document. The possible values depend on the legal entity `type`.\n\ + \n* When providing ID numbers for individuals, the values can be **driversLicense**,\ + \ **identityCard**, **nationalIdNumber**, or **passport**.\n\nWhen uploading\ + \ documents:\n* For `type` **organization**, the values can be **proofOfAddress**,\ + \ **registrationDocument**, or **taxDocument**. \n\n* For `type` **individual**,\ + \ the values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**,\ + \ or **proofOfResidency**.\n\n* Use **bankStatement** to upload documents\ + \ for a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id)." + enum: + - bankStatement + - driversLicense + - identityCard + - nationalIdNumber + - passport + - proofOfAddress + - proofOfNationalIdNumber + - proofOfResidency + - registrationDocument + - taxDocument + type: string + required: + - type + Individual: + properties: + birthData: + description: The individual's birth information. + $ref: '#/components/schemas/BirthData' + email: + description: The email address of the legal entity. + type: string + identificationData: + description: Information about the individual's identification document. + $ref: '#/components/schemas/IdentificationData' + name: + description: The individual's name. + $ref: '#/components/schemas/Name' + nationality: + description: The individual's nationality. + type: string + phone: + description: The phone number of the legal entity. + $ref: '#/components/schemas/PhoneNumber' + residentialAddress: + description: The residential address of the individual. + $ref: '#/components/schemas/Address' + webData: + deprecated: true + x-deprecatedInVersion: '1' + description: The website and app URL of the legal entity. + $ref: '#/components/schemas/WebData' + required: + - name + - residentialAddress + LegalEntity: + properties: + documents: + deprecated: true + x-deprecatedInVersion: '1' + description: List of documents uploaded for the legal entity. + items: + $ref: '#/components/schemas/EntityReference' + type: array + entityAssociations: + description: 'List of legal entities associated with the current legal entity. + + For example, ultimate business owners associated with an organization + through ownership or control, or as signatories. ' + items: + $ref: '#/components/schemas/LegalEntityAssociation' + type: array + id: + description: The unique identifier of the legal entity. + readOnly: true + type: string + individual: + description: Information about the individual. Required if `type` is **individual**. + $ref: '#/components/schemas/Individual' + organization: + description: Information about the organization. Required if `type` is **organization**. + $ref: '#/components/schemas/Organization' + reference: + description: Your reference for the legal entity, maximum 150 characters. + type: string + transferInstruments: + description: List of transfer instruments owned by the legal entity. + items: + $ref: '#/components/schemas/EntityReference' + type: array + type: + description: "The type of legal entity.\n\n Possible values: **individual**\ + \ or **organization**" + enum: + - individual + - organization + type: string + required: + - type + - id + LegalEntityAssociation: + properties: + jobTitle: + description: The individual's job title if the `type` is **uboThroughControl** + or **signatory**. + type: string + legalEntityId: + description: The unique identifier of the associated [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id). + type: string + type: + description: "Defines the relationship of the legal entity to the current\ + \ legal entity. \n\nFor example, **uboThroughOwnership**, **uboThroughControl**,\ + \ or **signatory**. " + enum: + - signatory + - uboThroughControl + - uboThroughOwnership + type: string + required: + - legalEntityId + - type + LegalEntityInfo: + properties: + entityAssociations: + description: 'List of legal entities associated with the current legal entity. + + For example, ultimate business owners associated with an organization + through ownership or control, or as signatories. ' + items: + $ref: '#/components/schemas/LegalEntityAssociation' + type: array + individual: + description: Information about the individual. Required if `type` is **individual**. + $ref: '#/components/schemas/Individual' + organization: + description: Information about the organization. Required if `type` is **organization**. + $ref: '#/components/schemas/Organization' + reference: + description: Your reference for the legal entity, maximum 150 characters. + type: string + type: + description: "The type of legal entity.\n\n Possible values: **individual**\ + \ or **organization**" + enum: + - individual + - organization + type: string + required: + - type + Name: + properties: + firstName: + description: The individual's first name. + type: string + infix: + description: The infix in the individual's name, if any. + type: string + lastName: + description: The individual's last name. + type: string + required: + - firstName + - lastName + Organization: + properties: + description: + description: Your description for the organization. + type: string + doingBusinessAs: + description: The organization's registered name, if different from the legal + name. + type: string + email: + description: The email address of the legal entity. + type: string + legalName: + description: The organization's legal name. + type: string + phone: + description: The phone number of the legal entity. + $ref: '#/components/schemas/PhoneNumber' + principalPlaceOfBusiness: + description: The address where the organization operates from. Provide this + if the principal place of business is different from the `registeredAddress`. + $ref: '#/components/schemas/Address' + registeredAddress: + description: The address of the organization registered at their registrar + (such as the Chamber of Commerce). + $ref: '#/components/schemas/Address' + registrationNumber: + description: The organization's registration number. + type: string + stockData: + description: Information about the organization's publicly traded stock. + Provide this object only if `type` is **listedPublicCompany**. + $ref: '#/components/schemas/StockData' + taxExempt: + description: Indicates whether the legal entity is exempt from tax. Defaults + to **false**. When **true**, the `taxIdAbsenceReason` must be provided. + type: boolean + taxId: + description: The organization's tax identifier. + type: string + taxIdAbsenceReason: + description: 'The reason the organization has not provided a tax identifier. + + + Possible values: **industryExemption**, **belowTaxThreshold**.' + enum: + - industryExemption + - belowTaxThreshold + type: string + type: + description: "Type of organization. \n\nPossible values: **associationIncorporated**,\ + \ **governmentalOrganization**, **listedPublicCompany**,**nonProfit**,\ + \ **partnershipIncorporated**, **privateCompany**." + enum: + - associationIncorporated + - governmentalOrganization + - listedPublicCompany + - nonProfit + - partnershipIncorporated + - privateCompany + type: string + webData: + deprecated: true + x-deprecatedInVersion: '1' + description: The website and app URL of the legal entity. + $ref: '#/components/schemas/WebData' + required: + - legalName + - type + - registeredAddress + PhoneNumber: + properties: + countryCode: + description: The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) + country code. For example, **US** or **NL**. + type: string + number: + description: The phone number. + type: string + type: + description: "The type of phone number.\n Possible values: **mobile**, **landline**,\ + \ **sip**, **fax.** " + type: string + required: + - type + - number + RecurringDetail: + properties: + merchantAccount: + description: The merchant account used when the payment details were stored. + type: string + reference: + description: The `recurringDetailReference` returned in the response when + the payment details were stored. + type: string + shopperReference: + description: The unique identifier used when the payment details were stored. + type: string + ServiceError: + properties: + errorCode: + description: The error code mapped to the error message. + type: string + errorType: + description: The category of the error. + type: string + message: + description: A short explanation of the issue. + type: string + pspReference: + description: The PSP reference of the payment. + type: string + status: + description: The HTTP response status. + format: int32 + type: integer + SourceOfFunds: + properties: + acquiringBusinessLineId: + description: The unique identifier of the business line that will be the + source of funds.This must be a business line for a **receivePayments** + or **receiveFromPlatformPayments** capability. Required when `adyenProcessedFunds` + is **true**. + type: string + adyenProcessedFunds: + description: "Indicates whether the funds are coming from transactions processed\ + \ by Adyen.\n\n - If **true**, the `acquiringBusinessLineId` is required.\n\ + \n - If **false**, a `description` is required." + type: boolean + description: + description: Text describing the source of funds. For example, for `type` + **business**, provide a description of the business. Required when `adyenProcessedFunds` + is **false**. + type: string + type: + description: 'The type of the source of funds. Possible value: **business**.' + enum: + - business + type: string + StockData: + properties: + marketIdentifier: + description: The four-digit [Market Identifier Code](https://en.wikipedia.org/wiki/Market_Identifier_Code) + of the stock market where the organization's stocks are traded. + type: string + stockNumber: + description: The 12-digit International Securities Identification Number + (ISIN) of the company, without dashes (-). + type: string + tickerSymbol: + description: The stock ticker symbol. + type: string + TransferInstrument: + properties: + bankAccount: + description: Contains information about the legal entity's bank account. + Required when `type` is **bankAccount**. + $ref: '#/components/schemas/BankAccountInfo' + documents: + deprecated: true + x-deprecatedInVersion: '1' + description: List of documents uploaded for the transfer instrument. + items: + $ref: '#/components/schemas/EntityReference' + type: array + id: + description: The unique identifier of the transfer instrument. + readOnly: true + type: string + legalEntityId: + description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) + that owns the transfer instrument. + type: string + recurringDetail: + description: Contains information about the legal entity's previously stored + payment details. Required when `type` is **recurringDetail**. + $ref: '#/components/schemas/RecurringDetail' + reference: + description: The reference to the supporting entity that is this transfer + instrument + type: string + type: + description: 'The type of transfer instrument. + + + Possible values: **bankAccount**, **recurringDetail**.' + type: string + required: + - legalEntityId + - type + - id + TransferInstrumentInfo: + properties: + bankAccount: + description: Contains information about the legal entity's bank account. + Required when `type` is **bankAccount**. + $ref: '#/components/schemas/BankAccountInfo' + legalEntityId: + description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/legalEntities__resParam_id) + that owns the transfer instrument. + type: string + recurringDetail: + description: Contains information about the legal entity's previously stored + payment details. Required when `type` is **recurringDetail**. + $ref: '#/components/schemas/RecurringDetail' + reference: + description: The reference to the supporting entity that is this transfer + instrument + type: string + type: + description: 'The type of transfer instrument. + + + Possible values: **bankAccount**, **recurringDetail**.' + type: string + required: + - legalEntityId + - type + VoidResponse: {} + WebData: + properties: + webAddress: + description: The URL of the website. + type: string + WebDataExemption: + properties: + reason: + description: 'The reason why the web data was not provided. Possible value: + **noOnlinePresence**.' + enum: + - noOnlinePresence + type: string + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + examples: + post-businessLines-createBusinessLines: + summary: Create a business line for receiving payments + description: Example request for receiving payments + value: + capability: receivePayments + industryCode: '55' + webData: + - webAddress: https://www.adyen.com + legalEntityId: LE322KT223222D5FJ7THR293F + sourceOfFunds: + type: business + adyenProcessedFunds: 'false' + description: Funds from my flower shop business + post-businessLines-post-businessLines-200: + summary: Example response for creating a business line + value: + capability: receivePayments + industryCode: '55' + legalEntityId: LE322KH223222D5FJHXVQBW3Q + sourceOfFunds: + adyenProcessedFunds: 'false' + description: Funds from my flower shop business + type: business + webData: + - webAddress: https://www.adyen.com + id: SE322JV223222D5FKLGQPC2H5 diff --git a/yaml/ManagementNotificationService-v1.yaml b/yaml/ManagementNotificationService-v1.yaml new file mode 100644 index 0000000..51fb0e0 --- /dev/null +++ b/yaml/ManagementNotificationService-v1.yaml @@ -0,0 +1,140 @@ +openapi: 3.1.0 +info: + version: '1' + x-publicVersion: true + title: Management Notification Webhooks + description: 'Adyen sends notifications through webhooks to inform your system about + events that happen with your Adyen company and merchant accounts, stores, payment + terminals, and payment methods. + + + When an event occurs, Adyen makes an HTTP POST request to a URL on your server + and includes the details of the event in the request body. + + + You can use our webhooks to build your implementation. + + + Refer to [Notification webhooks](https://docs.adyen.com/development-resources/webhooks) + for more information.' + x-timestamp: '2022-05-10T19:08:19Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- Payment method +tags: [] +x-staticResponse: response.json +webhooks: + paymentMethod.created: + post: + tags: + - Payment method + summary: Payment method created + description: Adyen sends this webhook as soon as the request to [add a payment + method](https://docs.adyen.com/api-explorer/#/ManagementService/latest/post/merchants/{id}/paymentMethodSettings) + has been completed. + operationId: post-paymentMethod.created + x-groupName: Payment method + x-sortIndex: 1 + security: + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + paymentMethod.created: + $ref: '#/components/examples/post-paymentMethod.created-paymentMethod.created' + schema: + $ref: '#/components/schemas/NotificationDataMessage' + responses: + '200': + content: + application/json: + examples: + paymentMethod.created: + $ref: '#/components/examples/WebhookAck' + schema: + $ref: '#/components/schemas/PaymentMethodNotificationResponse' + description: OK - the request has succeeded. +components: + schemas: + MidServiceNotificationData: + properties: + id: + description: The identifier of the resource. + type: string + merchantId: + description: The identifier of the merchant account. + type: string + result: + description: The result of the request to create a payment method. + type: string + storeId: + description: The identifier of the [store](https://docs.adyen.com/api-explorer/#/ManagementService/latest/post/merchants/{id}/paymentMethodSettings__reqParam_storeId), + if any. + type: string + type: + description: Payment method [variant](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api). + type: string + required: + - result + - merchantId + - id + - type + NotificationDataMessage: + properties: + createdAt: + description: Timestamp for when the webhook was created. + format: date-time + type: string + data: + description: Contains event details. + $ref: '#/components/schemas/MidServiceNotificationData' + environment: + description: 'The environment from which the webhook originated. + + + Possible values: **test**, **live**.' + type: string + type: + description: Type of notification. + type: string + required: + - type + - environment + - createdAt + - data + PaymentMethodNotificationResponse: + properties: + notificationResponse: + description: Respond with **HTTP 200 OK** and `[accepted]` in the response + body to [accept the webhook](https://docs.adyen.com/development-resources/webhooks#accept-notifications). + type: string + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + examples: + WebhookAck: + summary: Acknowledge Webhook + value: + notificationResponse: '[accepted]' + post-paymentMethod.created-paymentMethod.created: + summary: Payment method Visa created + value: + createdAt: '2022-01-24T14:59:11+01:00' + data: + id: PM3224R223224K5FH4M2K9B86 + merchantId: MERCHANT_ACCOUNT + result: SUCCESS + storeId: ST322LJ223223K5F4SQNR9XL5 + type: visa + environment: test + type: paymentMethod.created diff --git a/yaml/ManagementService-v1.yaml b/yaml/ManagementService-v1.yaml index 406c0b3..4b29712 100644 --- a/yaml/ManagementService-v1.yaml +++ b/yaml/ManagementService-v1.yaml @@ -31,6 +31,7 @@ info: https://management-test.adyen.com/v1/companies/{companyId}/webhooks ```' + x-timestamp: '2022-05-06T09:18:33Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -42,6 +43,7 @@ x-groups: - Account - store level - Users - company level - Users - merchant level +- My API credential - API credentials - company level - API credentials - merchant level - API key - company level @@ -52,17 +54,16 @@ x-groups: - Allowed origins - merchant level - Webhooks - company level - Webhooks - merchant level +- Payment methods - merchant level - Terminals - terminal level +- Terminal actions - company level +- Terminal actions - terminal level - Terminal orders - company level - Terminal orders - merchant level - Terminal settings - company level - Terminal settings - merchant level - Terminal settings - store level - Terminal settings - terminal level -- Terminal actions - company level -- Terminal actions - terminal level -- Payment methods - merchant level -- My API credential tags: - name: API key - merchant level - name: Account - merchant level @@ -126,6 +127,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-companies-success-200' schema: $ref: '#/components/schemas/ListCompanyResponse' description: OK - the request has succeeded. @@ -185,6 +189,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-companies-companyId-success-200' schema: $ref: '#/components/schemas/Company' description: OK - the request has succeeded. @@ -423,6 +430,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-companies-companyId-apiCredentials-success-200' schema: $ref: '#/components/schemas/ListCompanyApiCredentialsResponse' description: OK - the request has succeeded. @@ -1183,6 +1193,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-companies-companyId-merchants-success-200' schema: $ref: '#/components/schemas/ListMerchantResponse' description: OK - the request has succeeded. @@ -3390,6 +3403,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-merchants-success-200' schema: $ref: '#/components/schemas/ListMerchantResponse' description: OK - the request has succeeded. @@ -3426,7 +3442,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}: + /merchants/{id}: get: tags: - Account - merchant level @@ -3435,7 +3451,7 @@ paths: \ must have access to the merchant account.\n\nTo make this request, your\ \ API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014Account read" - operationId: get-merchants-merchantId + operationId: get-merchants-id x-groupName: Account - merchant level x-sortIndex: 0 security: @@ -3443,7 +3459,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3488,7 +3504,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials: + /merchants/{id}/apiCredentials: get: tags: - API credentials - merchant level @@ -3498,7 +3514,7 @@ paths: \ query parameters.\n\nTo make this request, your API credential must have\ \ the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: get-merchants-merchantId-apiCredentials + operationId: get-merchants-id-apiCredentials x-groupName: API credentials - merchant level x-sortIndex: 0 security: @@ -3506,7 +3522,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3578,10 +3594,10 @@ paths: \ public key used for client-side authentication.\n* [Username and password](https://docs.adyen.com/development-resources/api-authentication#using-basic-authentication):\ \ used for basic authentication.\n\n> Make sure you store the API key securely\ \ in your system. You won't be able to retrieve it later.\n\nIf your API key\ - \ is lost or compromised, you need to [generate a new API key](https://docs.adyen.com/api-explorer/#/ManagementService/v1/post/merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateApiKey).\n\ + \ is lost or compromised, you need to [generate a new API key](https://docs.adyen.com/api-explorer/#/ManagementService/v1/post/merchants/{id}/apiCredentials/{apiCredentialId}/generateApiKey).\n\ \nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: post-merchants-merchantId-apiCredentials + operationId: post-merchants-id-apiCredentials x-groupName: API credentials - merchant level x-sortIndex: 0 security: @@ -3594,7 +3610,7 @@ paths: $ref: '#/components/schemas/CreateMerchantApiCredentialRequest' parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3639,7 +3655,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials/{apiCredentialId}: + /merchants/{id}/apiCredentials/{apiCredentialId}: get: tags: - API credentials - merchant level @@ -3648,7 +3664,7 @@ paths: \ identified in the path.\n\nTo make this request, your API credential must\ \ have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: get-merchants-merchantId-apiCredentials-apiCredentialId + operationId: get-merchants-id-apiCredentials-apiCredentialId x-groupName: API credentials - merchant level x-sortIndex: 0 security: @@ -3656,7 +3672,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3716,7 +3732,7 @@ paths: \ the full updated API credential, including the new values from the request.\ \ \n\nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: patch-merchants-merchantId-apiCredentials-apiCredentialId + operationId: patch-merchants-id-apiCredentials-apiCredentialId x-groupName: API credentials - merchant level x-sortIndex: 0 security: @@ -3729,7 +3745,7 @@ paths: $ref: '#/components/schemas/UpdateMerchantApiCredentialRequest' parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3780,7 +3796,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials/{apiCredentialId}/allowedOrigins: + /merchants/{id}/apiCredentials/{apiCredentialId}/allowedOrigins: get: tags: - Allowed origins - merchant level @@ -3789,7 +3805,7 @@ paths: \ for the API credential identified in the path.\n\nTo make this request,\ \ your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: get-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins + operationId: get-merchants-id-apiCredentials-apiCredentialId-allowedOrigins x-groupName: Allowed origins - merchant level x-sortIndex: 0 security: @@ -3797,7 +3813,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3856,7 +3872,7 @@ paths: \ to the API credential's list of allowed origins.\n\nTo make this request,\ \ your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: post-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins + operationId: post-merchants-id-apiCredentials-apiCredentialId-allowedOrigins x-groupName: Allowed origins - merchant level x-sortIndex: 0 security: @@ -3869,7 +3885,7 @@ paths: $ref: '#/components/schemas/AllowedOrigin' parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3920,7 +3936,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials/{apiCredentialId}/allowedOrigins/{originId}: + /merchants/{id}/apiCredentials/{apiCredentialId}/allowedOrigins/{originId}: delete: tags: - Allowed origins - merchant level @@ -3930,7 +3946,7 @@ paths: \ accept client-side requests from that domain.\n\nTo make this request, your\ \ API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: delete-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins-originId + operationId: delete-merchants-id-apiCredentials-apiCredentialId-allowedOrigins-originId x-groupName: Allowed origins - merchant level x-sortIndex: 0 security: @@ -3938,7 +3954,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -3997,7 +4013,7 @@ paths: \ identified in the path.\n\nTo make this request, your API credential must\ \ have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: get-merchants-merchantId-apiCredentials-apiCredentialId-allowedOrigins-originId + operationId: get-merchants-id-apiCredentials-apiCredentialId-allowedOrigins-originId x-groupName: Allowed origins - merchant level x-sortIndex: 0 security: @@ -4005,7 +4021,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -4062,7 +4078,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateApiKey: + /merchants/{id}/apiCredentials/{apiCredentialId}/generateApiKey: post: tags: - API key - merchant level @@ -4072,7 +4088,7 @@ paths: \ 24 hours after generating a new one.\n\nTo make this request, your API credential\ \ must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: post-merchants-merchantId-apiCredentials-apiCredentialId-generateApiKey + operationId: post-merchants-id-apiCredentials-apiCredentialId-generateApiKey x-groupName: API key - merchant level x-sortIndex: 0 security: @@ -4080,7 +4096,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -4131,7 +4147,7 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/apiCredentials/{apiCredentialId}/generateClientKey: + /merchants/{id}/apiCredentials/{apiCredentialId}/generateClientKey: post: tags: - Client key - merchant level @@ -4142,7 +4158,7 @@ paths: \ 24 hours after generating a new one.\n\nTo make this request, your API credential\ \ must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ * Management API\u2014API credentials read and write" - operationId: post-merchants-merchantId-apiCredentials-apiCredentialId-generateClientKey + operationId: post-merchants-id-apiCredentials-apiCredentialId-generateClientKey x-groupName: Client key - merchant level x-sortIndex: 0 security: @@ -4150,7 +4166,7 @@ paths: - ApiKeyAuth: [] parameters: - description: The unique identifier of the merchant account. - name: merchantId + name: id in: path required: true schema: @@ -4201,6 +4217,1081 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. + /merchants/{id}/paymentMethodSettings: + get: + tags: + - Payment methods - merchant level + summary: Get all payment methods + description: "Returns details for all payment methods of the merchant account\ + \ identified in the path.\n\nTo make this request, your API credential must\ + \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Payment methods read\n" + operationId: get-merchants-id-paymentMethodSettings + x-groupName: Payment methods - merchant level + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: The unique identifier of the store for which to return the payment + methods. + name: storeId + in: query + required: false + schema: + type: string + - description: The unique identifier of the Business Line for which to return + the payment methods. + name: businessLineId + in: query + required: false + schema: + type: string + - description: The number of items to have on a page, maximum 100. The default + is 10 items on a page. + name: pageSize + in: query + required: false + schema: + format: int32 + type: integer + - description: The number of the page to fetch. + name: pageNumber + in: query + required: false + schema: + format: int32 + type: integer + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentMethodResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + post: + tags: + - Payment methods - merchant level + summary: Request a payment method + description: "Sends a request to add a new payment method to the merchant account\ + \ identified in the path.\n\nTo make this request, your API credential must\ + \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Payment methods read and write\n" + operationId: post-merchants-id-paymentMethodSettings + x-groupName: Payment methods - merchant level + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentMethodSetupInfo' + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentMethod' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/paymentMethodSettings/{paymentMethodId}: + get: + tags: + - Payment methods - merchant level + summary: Get payment method details + description: "Returns details for the merchant account and the payment method\ + \ identified in the path.\n\nTo make this request, your API credential must\ + \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Payment methods read\n" + operationId: get-merchants-id-paymentMethodSettings-paymentMethodId + x-groupName: Payment methods - merchant level + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: The unique identifier of the payment method. + name: paymentMethodId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentMethod' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Payment methods - merchant level + summary: Update a payment method + description: "Updates payment method details for the merchant account and the\ + \ payment method identified in the path.\n\nTo make this request, your API\ + \ credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Payment methods read and write\n" + operationId: patch-merchants-id-paymentMethodSettings-paymentMethodId + x-groupName: Payment methods - merchant level + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdatePaymentMethodInfo' + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: The unique identifier of the payment method. + name: paymentMethodId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentMethod' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/users: + get: + tags: + - Users - merchant level + summary: Get a list of users + description: "Returns a list of users associated with the `id` specified in\ + \ the path.\n\nTo make this request, your API credential must have the following\ + \ [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Users read and write\n" + operationId: get-merchants-id-users + x-groupName: Users - merchant level + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the merchant. + name: id + in: path + required: true + schema: + type: string + - description: The number of the page to fetch. + name: pageNumber + in: query + required: false + schema: + format: int32 + type: integer + - description: The number of items to have on a page. Maximum value is **100**. + The default is **10** items on a page. + name: pageSize + in: query + required: false + schema: + format: int32 + type: integer + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListMerchantUsersResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + post: + tags: + - Users - merchant level + summary: Create a new user + description: "Creates a user for the `id` specified in the path.\n\nTo make\ + \ this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Users read and write\n" + operationId: post-merchants-id-users + x-groupName: Users - merchant level + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateMerchantUserRequest' + parameters: + - description: Unique identifier of the merchant. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/CreateUserResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/users/{userId}: + get: + tags: + - Users - merchant level + summary: Get user details + description: "Returns user details for the `userId` and the `id` specified in\ + \ the path.\n\nTo make this request, your API credential must have the following\ + \ [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Users read and write\n" + operationId: get-merchants-id-users-userId + x-groupName: Users - merchant level + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the merchant. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the user. + name: userId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/User' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Users - merchant level + summary: Update a user + description: "Updates user details for the `userId` and the `id` specified in\ + \ the path.\n\nTo make this request, your API credential must have the following\ + \ [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Users read and write\n" + operationId: patch-merchants-id-users-userId + x-groupName: Users - merchant level + x-sortIndex: 0 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateMerchantUserRequest' + parameters: + - description: Unique identifier of the merchant. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the user. + name: userId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/User' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/webhooks: + get: + tags: + - Webhooks - merchant level + summary: List all webhooks + description: "Lists all webhook configurations for the merchant account.\n\n\ + To make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read\n* Management API\u2014Webhooks read and\ + \ write" + operationId: get-merchants-id-webhooks + x-groupName: Webhooks - merchant level + x-sortIndex: 2 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: The number of the page to fetch. + name: pageNumber + in: query + required: false + schema: + format: int32 + type: integer + - description: The number of items to have on a page, maximum 100. The default + is 10 items on a page. + name: pageSize + in: query + required: false + schema: + format: int32 + type: integer + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListWebhooksResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + post: + tags: + - Webhooks - merchant level + summary: Set up a webhook + description: "Subscribe to receive webhook notifications about events related\ + \ to your merchant account. You can add basic authentication to make sure\ + \ the data is secure.\n\nTo make this request, your API credential must have\ + \ the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read and write" + operationId: post-merchants-id-webhooks + x-groupName: Webhooks - merchant level + x-sortIndex: 1 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateMerchantWebhookRequest' + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/webhooks/{webhookId}: + delete: + tags: + - Webhooks - merchant level + summary: Remove a webhook + description: "Remove the configuration for the webhook identified in the path.\n\ + \nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read and write" + operationId: delete-merchants-id-webhooks-webhookId + x-groupName: Webhooks - merchant level + x-sortIndex: 5 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the webhook configuration. + name: webhookId + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + get: + tags: + - Webhooks - merchant level + summary: Get a webhook + description: "Returns the configuration for the webhook identified in the path.\n\ + \nTo make this request, your API credential must have one of the following\ + \ [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read\n* Management API\u2014Webhooks read and\ + \ write" + operationId: get-merchants-id-webhooks-webhookId + x-groupName: Webhooks - merchant level + x-sortIndex: 3 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the webhook configuration. + name: webhookId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + patch: + tags: + - Webhooks - merchant level + summary: Update a webhook + description: "Make changes to the configuration of the webhook identified in\ + \ the path. The request contains the new values you want to have in the webhook\ + \ configuration. The response contains the full configuration for the webhook,\ + \ which includes the new values from the request.\n\nTo make this request,\ + \ your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read and write" + operationId: patch-merchants-id-webhooks-webhookId + x-groupName: Webhooks - merchant level + x-sortIndex: 4 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateMerchantWebhookRequest' + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the webhook configuration. + name: webhookId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/Webhook' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/webhooks/{webhookId}/generateHmac: + post: + tags: + - Webhooks - merchant level + summary: Generate an HMAC key + description: "Returns an [HMAC key](https://en.wikipedia.org/wiki/HMAC) for\ + \ the webhook identified in the path. This key allows you to check the integrity\ + \ and the origin of the notifications you receive.By creating an HMAC key,\ + \ you start receiving [HMAC-signed notifications](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures#enable-hmac-signatures)\ + \ from Adyen. Find out more about how to [verify HMAC signatures](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures).\n\ + \nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read and write" + operationId: post-merchants-id-webhooks-webhookId-generateHmac + x-groupName: Webhooks - merchant level + x-sortIndex: 6 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - name: webhookId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GenerateHmacKeyResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /merchants/{id}/webhooks/{webhookId}/test: + post: + tags: + - Webhooks - merchant level + summary: Test a webhook + description: "Sends sample notifications to test if the webhook is set up correctly.\n\ + \nWe send four test notifications for each event code you choose. They cover\ + \ success and failure scenarios for the hard-coded currencies EUR and GBP,\ + \ regardless of the currencies configured in the merchant accounts. For custom\ + \ notifications, we only send the specified custom notification.\n\nThe response\ + \ describes the result of the test. The `status` field tells you if the test\ + \ was successful or not. You can use the other fields to troubleshoot unsuccessful\ + \ tests.\n\nTo make this request, your API credential must have the following\ + \ [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ + * Management API\u2014Webhooks read and write" + operationId: post-merchants-id-webhooks-webhookId-test + x-groupName: Webhooks - merchant level + x-sortIndex: 7 + security: + - BasicAuth: [] + - ApiKeyAuth: [] + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TestWebhookRequest' + parameters: + - description: The unique identifier of the merchant account. + name: id + in: path + required: true + schema: + type: string + - description: Unique identifier of the webhook configuration. + name: webhookId + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/TestWebhookResponse' + description: OK - the request has succeeded. + '204': + description: No Content - the request has been successfully processed, but + there is no additional content. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Bad Request - a problem reading or understanding the request. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. /merchants/{merchantId}/billingEntities: get: tags: @@ -4275,298 +5366,6 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/paymentMethodSettings: - get: - tags: - - Payment methods - merchant level - summary: Get all payment methods - description: "Returns details for all payment methods of the merchant account\ - \ identified in the path.\n\nTo make this request, your API credential must\ - \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Payment methods read\n" - operationId: get-merchants-merchantId-paymentMethodSettings - x-groupName: Payment methods - merchant level - x-sortIndex: 2 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: The unique identifier of the store for which to return the payment - methods. - name: storeId - in: query - required: false - schema: - type: string - - description: The unique identifier of the Business Line for which to return - the payment methods. - name: businessLineId - in: query - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaymentMethodResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - post: - tags: - - Payment methods - merchant level - summary: Request a payment method - description: "Sends a request to add a new payment method to the merchant account\ - \ identified in the path.\n\nTo make this request, your API credential must\ - \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Payment methods read and write\n" - operationId: post-merchants-merchantId-paymentMethodSettings - x-groupName: Payment methods - merchant level - x-sortIndex: 1 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - examples: - add-payment-method: - $ref: '#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method' - add-payment-method-partner-model: - $ref: '#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model' - schema: - $ref: '#/components/schemas/PaymentMethodInfo' - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - examples: - add-payment-method: - $ref: '#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-200' - add-payment-method-partner-model: - $ref: '#/components/examples/post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model-200' - schema: - $ref: '#/components/schemas/PaymentMethod' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/paymentMethodSettings/{paymentMethodId}: - get: - tags: - - Payment methods - merchant level - summary: Get payment method details - description: "Returns details for the merchant account and the payment method\ - \ identified in the path.\n\nTo make this request, your API credential must\ - \ have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Payment methods read\n" - operationId: get-merchants-merchantId-paymentMethodSettings-paymentMethodId - x-groupName: Payment methods - merchant level - x-sortIndex: 3 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: The unique identifier of the payment method. - name: paymentMethodId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaymentMethod' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - patch: - tags: - - Payment methods - merchant level - summary: Update a payment method - description: "Updates payment method details for the merchant account and the\ - \ payment method identified in the path.\n\nTo make this request, your API\ - \ credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Payment methods read and write\n" - operationId: patch-merchants-merchantId-paymentMethodSettings-paymentMethodId - x-groupName: Payment methods - merchant level - x-sortIndex: 4 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdatePaymentMethodInfo' - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: The unique identifier of the payment method. - name: paymentMethodId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaymentMethod' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. /merchants/{merchantId}/shippingLocations: get: tags: @@ -6254,790 +7053,6 @@ paths: schema: $ref: '#/components/schemas/RestServiceError' description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/users: - get: - tags: - - Users - merchant level - summary: Get a list of users - description: "Returns a list of users associated with the `merchantId` specified\ - \ in the path.\n\nTo make this request, your API credential must have the\ - \ following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Users read and write\n" - operationId: get-merchants-merchantId-users - x-groupName: Users - merchant level - x-sortIndex: 0 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: Unique identifier of the merchant. - name: merchantId - in: path - required: true - schema: - type: string - - description: The number of the page to fetch. - name: pageNumber - in: query - required: false - schema: - format: int32 - type: integer - - description: The number of items to have on a page. Maximum value is **100**. - The default is **10** items on a page. - name: pageSize - in: query - required: false - schema: - format: int32 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListMerchantUsersResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - post: - tags: - - Users - merchant level - summary: Create a new user - description: "Creates a user for the `merchantId` specified in the path.\n\n\ - To make this request, your API credential must have the following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Users read and write\n" - operationId: post-merchants-merchantId-users - x-groupName: Users - merchant level - x-sortIndex: 0 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - examples: - create-user: - $ref: '#/components/examples/post-merchants-merchantId-users-create-user' - schema: - $ref: '#/components/schemas/CreateMerchantUserRequest' - parameters: - - description: Unique identifier of the merchant. - name: merchantId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - examples: - create-user: - $ref: '#/components/examples/post-merchants-merchantId-users-create-user-200' - schema: - $ref: '#/components/schemas/CreateUserResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/users/{userId}: - get: - tags: - - Users - merchant level - summary: Get user details - description: "Returns user details for the `userId` and the `merchantId` specified\ - \ in the path.\n\nTo make this request, your API credential must have the\ - \ following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Users read and write\n" - operationId: get-merchants-merchantId-users-userId - x-groupName: Users - merchant level - x-sortIndex: 0 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: Unique identifier of the merchant. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the user. - name: userId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/User' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - patch: - tags: - - Users - merchant level - summary: Update a user - description: "Updates user details for the `userId` and the `merchantId` specified\ - \ in the path.\n\nTo make this request, your API credential must have the\ - \ following [role](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Users read and write\n" - operationId: patch-merchants-merchantId-users-userId - x-groupName: Users - merchant level - x-sortIndex: 0 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateMerchantUserRequest' - parameters: - - description: Unique identifier of the merchant. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the user. - name: userId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/User' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/webhooks: - get: - tags: - - Webhooks - merchant level - summary: List all webhooks - description: "Lists all webhook configurations for the merchant account.\n\n\ - To make this request, your API credential must have one of the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read\n* Management API\u2014Webhooks read and\ - \ write" - operationId: get-merchants-merchantId-webhooks - x-groupName: Webhooks - merchant level - x-sortIndex: 2 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: The number of the page to fetch. - name: pageNumber - in: query - required: false - schema: - format: int32 - type: integer - - description: The number of items to have on a page, maximum 100. The default - is 10 items on a page. - name: pageSize - in: query - required: false - schema: - format: int32 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListWebhooksResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - post: - tags: - - Webhooks - merchant level - summary: Set up a webhook - description: "Subscribe to receive webhook notifications about events related\ - \ to your merchant account. You can add basic authentication to make sure\ - \ the data is secure.\n\nTo make this request, your API credential must have\ - \ the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read and write" - operationId: post-merchants-merchantId-webhooks - x-groupName: Webhooks - merchant level - x-sortIndex: 1 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateMerchantWebhookRequest' - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Webhook' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/webhooks/{webhookId}: - delete: - tags: - - Webhooks - merchant level - summary: Remove a webhook - description: "Remove the configuration for the webhook identified in the path.\n\ - \nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read and write" - operationId: delete-merchants-merchantId-webhooks-webhookId - x-groupName: Webhooks - merchant level - x-sortIndex: 5 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the webhook configuration. - name: webhookId - in: path - required: true - schema: - type: string - responses: - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - get: - tags: - - Webhooks - merchant level - summary: Get a webhook - description: "Returns the configuration for the webhook identified in the path.\n\ - \nTo make this request, your API credential must have one of the following\ - \ [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read\n* Management API\u2014Webhooks read and\ - \ write" - operationId: get-merchants-merchantId-webhooks-webhookId - x-groupName: Webhooks - merchant level - x-sortIndex: 3 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the webhook configuration. - name: webhookId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Webhook' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - patch: - tags: - - Webhooks - merchant level - summary: Update a webhook - description: "Make changes to the configuration of the webhook identified in\ - \ the path. The request contains the new values you want to have in the webhook\ - \ configuration. The response contains the full configuration for the webhook,\ - \ which includes the new values from the request.\n\nTo make this request,\ - \ your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read and write" - operationId: patch-merchants-merchantId-webhooks-webhookId - x-groupName: Webhooks - merchant level - x-sortIndex: 4 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateMerchantWebhookRequest' - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the webhook configuration. - name: webhookId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Webhook' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/webhooks/{webhookId}/generateHmac: - post: - tags: - - Webhooks - merchant level - summary: Generate an HMAC key - description: "Returns an [HMAC key](https://en.wikipedia.org/wiki/HMAC) for\ - \ the webhook identified in the path. This key allows you to check the integrity\ - \ and the origin of the notifications you receive.By creating an HMAC key,\ - \ you start receiving [HMAC-signed notifications](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures#enable-hmac-signatures)\ - \ from Adyen. Find out more about how to [verify HMAC signatures](https://docs.adyen.com/development-resources/webhooks/verify-hmac-signatures).\n\ - \nTo make this request, your API credential must have the following [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read and write" - operationId: post-merchants-merchantId-webhooks-webhookId-generateHmac - x-groupName: Webhooks - merchant level - x-sortIndex: 6 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - name: webhookId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GenerateHmacKeyResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. - /merchants/{merchantId}/webhooks/{webhookId}/test: - post: - tags: - - Webhooks - merchant level - summary: Test a webhook - description: "Sends sample notifications to test if the webhook is set up correctly.\n\ - \nWe send four test notifications for each event code you choose. They cover\ - \ success and failure scenarios for the hard-coded currencies EUR and GBP,\ - \ regardless of the currencies configured in the merchant accounts. For custom\ - \ notifications, we only send the specified custom notification.\n\nThe response\ - \ describes the result of the test. The `status` field tells you if the test\ - \ was successful or not. You can use the other fields to troubleshoot unsuccessful\ - \ tests.\n\nTo make this request, your API credential must have the following\ - \ [roles](https://docs.adyen.com/development-resources/api-credentials#api-permissions):\n\ - * Management API\u2014Webhooks read and write" - operationId: post-merchants-merchantId-webhooks-webhookId-test - x-groupName: Webhooks - merchant level - x-sortIndex: 7 - security: - - BasicAuth: [] - - ApiKeyAuth: [] - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TestWebhookRequest' - parameters: - - description: The unique identifier of the merchant account. - name: merchantId - in: path - required: true - schema: - type: string - - description: Unique identifier of the webhook configuration. - name: webhookId - in: path - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TestWebhookResponse' - description: OK - the request has succeeded. - '204': - description: No Content - the request has been successfully processed, but - there is no additional content. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Bad Request - a problem reading or understanding the request. - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unauthorized - authentication required. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Forbidden - insufficient permissions to process the request. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Unprocessable Entity - a request validation error. - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/RestServiceError' - description: Internal Server Error - the server could not process the request. /stores: get: tags: @@ -8129,7 +8144,7 @@ components: you get will contain the number of hours remaining until the payment will be captured.' type: object - Address2: + Address: properties: city: description: The name of the city. @@ -8156,7 +8171,7 @@ components: streetAddress2: description: Additional address details, if any. type: string - Address3: + Address2: properties: city: description: The name of the city. @@ -8334,6 +8349,10 @@ components: description: Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations. type: string + description: + description: Description of the API credential. + maxLength: 50 + type: string id: description: Unique identifier of the API credential. type: string @@ -8410,7 +8429,7 @@ components: properties: address: description: The address details of the billing entity. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' email: description: The email address of the billing entity. type: string @@ -8503,6 +8522,10 @@ components: description: Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations. type: string + description: + description: Description of the API credential. + maxLength: 50 + type: string id: description: Unique identifier of the API credential. type: string @@ -8564,7 +8587,7 @@ components: type: string name: description: The user's full name. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -8586,6 +8609,51 @@ components: - timeZoneCode - username - roles + Configuration: + properties: + brand: + description: 'Payment method, like **eftpos_australia** or **mc**. See the + [possible values](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api). ' + type: string + currencies: + description: Currency, and surcharge percentage or amount. + items: + $ref: '#/components/schemas/Currency' + type: array + sources: + description: 'Funding source. Possible values: + + * **Credit** + + * **Debit**' + enum: + - Debit + - Credit + items: + type: string + type: string + required: + - brand + - currencies + Connectivity: + properties: + simcardStatus: + description: 'Indicates the status of the SIM card in the payment terminal. + Can be updated and received only at terminal level, and only for models + that support cellular connectivity. + + + Possible values: + + * **ACTIVATED**: the SIM card is activated. Cellular connectivity may + still need to be enabled on the terminal itself, in the **Network** settings. + + * **INVENTORY**: the SIM card is not activated. The terminal can''t use + cellular connectivity.' + enum: + - ACTIVATED + - INVENTORY + type: string Contact: properties: email: @@ -8651,6 +8719,10 @@ components: description: Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations. type: string + description: + description: Description of the API credential. + maxLength: 50 + type: string id: description: Unique identifier of the API credential. type: string @@ -8690,6 +8762,9 @@ components: items: type: string type: array + description: + description: Description of the API credential. + type: string roles: description: List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) of the API credential. @@ -8735,6 +8810,10 @@ components: description: Public key used for [client-side authentication](https://docs.adyen.com/development-resources/client-side-authentication). The client key is required for Drop-in and Components integrations. type: string + description: + description: Description of the API credential. + maxLength: 50 + type: string id: description: Unique identifier of the API credential. type: string @@ -8782,7 +8861,7 @@ components: description: "The user's full name.\n\nAllowed length: 1\u201480 characters." maxLength: 80 minLength: 1 - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -8831,7 +8910,7 @@ components: type: string name: description: The user's full name. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -9033,6 +9112,9 @@ components: items: type: string type: array + description: + description: Description of the API credential. + type: string roles: description: List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) for the API credential. @@ -9054,7 +9136,7 @@ components: description: "The user's full name.\n\nAllowed length: 1\u201480 characters." maxLength: 80 minLength: 1 - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -9233,7 +9315,7 @@ components: type: string name: description: The user's full name. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -9255,6 +9337,23 @@ components: - timeZoneCode - username - roles + Currency: + properties: + amount: + description: Surcharge amount per transaction, in minor units. + format: int32 + type: integer + currencyCode: + description: Three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + For example, **AUD**. + type: string + percentage: + description: Surcharge percentage per transaction. The maximum number of + decimal places is two. For example, **1%** or **2.27%**. + format: double + type: number + required: + - currencyCode CustomNotification: properties: amount: @@ -9775,6 +9874,10 @@ components: companyName: description: Name of the company linked to the API credential. type: string + description: + description: Description of the API credential. + maxLength: 50 + type: string id: description: Unique identifier of the API credential. type: string @@ -9878,7 +9981,7 @@ components: $ref: '#/components/schemas/LinksElement' required: - self - Name2: + Name: properties: firstName: description: The first name. @@ -9889,7 +9992,7 @@ components: required: - firstName - lastName - Name3: + Name2: properties: firstName: description: The first name. @@ -10030,49 +10133,31 @@ components: $ref: '#/components/schemas/SwishInfo' type: description: Payment method [variant](https://docs.adyen.com/development-resources/paymentmethodvariant#management-api). - enum: - - alipay - - amex - - amex_applepay - - applepay - - bcmc - - cartebancaire - - cartebancaire_applepay - - cup - - diners - - directEbanking - - discover - - discover_applepay - - eftpos_australia - - electron_applepay - - elo_applepay - - elodebit_applepay - - girocard - - girocard_applepay - - giropay - - interac_applepay - - interac_card - - jcb - - jcb_applepay - - klarna - - klarna_account - - klarna_paynow - - mada_applepay - - maestro - - maestro_applepay - - mc - - mc_applepay - - paypal - - sodexo_applepay - - swish - - visa - - visa_applepay - - wechatpay_pos type: string required: - - type - id - PaymentMethodInfo: + PaymentMethodResponse: + properties: + _links: + description: Pagination references. + $ref: '#/components/schemas/PaginationLinks' + data: + description: Payment methods details. + items: + $ref: '#/components/schemas/PaymentMethod' + type: array + itemsTotal: + description: Total number of items. + format: int32 + type: integer + pagesTotal: + description: Total number of pages. + format: int32 + type: integer + required: + - itemsTotal + - pagesTotal + PaymentMethodSetupInfo: properties: applePay: description: Apple Pay details. @@ -10119,51 +10204,33 @@ components: enum: - alipay - amex - - amex_applepay - applepay - bcmc + - blik - cartebancaire - - cartebancaire_applepay - cup - diners - directEbanking - discover - - discover_applepay - eftpos_australia - - electron_applepay - - elo_applepay - - elodebit_applepay - girocard - - girocard_applepay - giropay - - interac_applepay + - ideal - interac_card - jcb - - jcb_applepay - klarna - klarna_account - klarna_paynow - - mada_applepay - maestro - - maestro_applepay - mc - - mc_applepay + - mobilepay - paypal - - sodexo_applepay - swish - visa - - visa_applepay - wechatpay_pos type: string required: - type - PaymentMethodResponse: - properties: - data: - description: Payment methods details. - items: - $ref: '#/components/schemas/PaymentMethod' - type: array Profile: properties: authType: @@ -10221,6 +10288,10 @@ components: description: For `eap` **peap**. The EAP-PEAP password from your MS-CHAP account. Must match the configuration of your RADIUS server. type: string + hiddenSsid: + description: Indicates if a network does not broadcast its SSID, so an SSID-specific + probe request must be used for scans. + type: boolean name: description: Your name for the Wi-Fi profile. type: string @@ -10433,7 +10504,7 @@ components: properties: address: description: The address details of the shipping location. - $ref: '#/components/schemas/Address2' + $ref: '#/components/schemas/Address' contact: description: The contact details for the shipping location. $ref: '#/components/schemas/Contact' @@ -10484,7 +10555,7 @@ components: $ref: '#/components/schemas/Links' address: description: The address of the store. - $ref: '#/components/schemas/Address3' + $ref: '#/components/schemas/Address2' businessLineIds: description: "The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id)\ \ that the store is associated with.\n If not specified, the business\ @@ -10540,7 +10611,7 @@ components: properties: address: description: The address of the store. - $ref: '#/components/schemas/Address3' + $ref: '#/components/schemas/Address2' businessLineIds: description: 'The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with. @@ -10582,7 +10653,7 @@ components: properties: address: description: The address of the store. - $ref: '#/components/schemas/Address3' + $ref: '#/components/schemas/Address2' businessLineIds: description: 'The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with. @@ -10635,15 +10706,35 @@ components: description: The UUID of the [split configuration](https://docs.adyen.com/platforms/split-configuration-for-stores) from the Customer Area. type: string + Surcharge: + properties: + askConfirmation: + description: Show the surcharge details on the terminal, so the shopper + can confirm. + type: boolean + configurations: + description: Surcharge fees or percentages for specific payment methods, + funding sources (credit or debit), and currencies. + items: + $ref: '#/components/schemas/Configuration' + type: array SwishInfo: properties: swishNumber: - description: Swish number. For example, **123 111 11 11**. + description: 'Swish number. Format: 10 digits without spaces. For example, + **1231111111**.' + maxLength: 10 + minLength: 10 type: string required: - swishNumber Terminal: properties: + assigned: + description: The [assignment status](https://docs.adyen.com/point-of-sale/automating-terminal-management/assign-terminals-api) + of the terminal. If true, the terminal is assigned. If false, the terminal + is in inventory and can't be boarded. + type: boolean id: description: The unique identifier of the terminal. type: string @@ -10748,6 +10839,9 @@ components: cardholderReceipt: description: Settings to define the header of the shopper receipt. $ref: '#/components/schemas/CardholderReceipt' + connectivity: + description: Settings for terminal connectivity features. + $ref: '#/components/schemas/Connectivity' gratuities: description: Settings for tipping with or without predefined options to choose from. The maximum number of predefined options is four, or three @@ -10774,6 +10868,10 @@ components: signature: description: Settings to skip signature, sign on display, or sign on receipt. $ref: '#/components/schemas/Signature' + surcharge: + description: Settings for payment [surcharge](https://docs.adyen.com/point-of-sale/surcharge) + features. + $ref: '#/components/schemas/Surcharge' timeouts: description: Settings for device [time-outs](https://docs.adyen.com/point-of-sale/pos-timeouts#device-time-out). $ref: '#/components/schemas/Timeouts' @@ -10965,6 +11063,9 @@ components: items: type: string type: array + description: + description: Description of the API credential. + type: string roles: description: List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) of the API credential. @@ -10995,7 +11096,7 @@ components: description: The user's full name. maxLength: 80 minLength: 1 - $ref: '#/components/schemas/Name3' + $ref: '#/components/schemas/Name2' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -11155,6 +11256,9 @@ components: items: type: string type: array + description: + description: Description of the API credential. + type: string roles: description: List of [roles](https://docs.adyen.com/development-resources/api-credentials#roles-1) for the API credential. @@ -11180,7 +11284,7 @@ components: description: The user's full name. maxLength: 80 minLength: 1 - $ref: '#/components/schemas/Name3' + $ref: '#/components/schemas/Name2' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -11321,10 +11425,12 @@ components: description: The address of the store. It is not possible to update the country of the store. $ref: '#/components/schemas/UpdatableAddress' - businessLineId: + businessLineIds: description: The unique identifiers of the [business lines](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/businesslines__resParam_id) that the store is associated with. - type: string + items: + type: string + type: array description: description: The description of the store. type: string @@ -11383,7 +11489,7 @@ components: type: string name: description: The user's full name. - $ref: '#/components/schemas/Name2' + $ref: '#/components/schemas/Name' roles: description: The list of [roles](https://docs.adyen.com/account/user-roles) for this user. @@ -11664,6 +11770,239 @@ components: status: ready notBefore: 20018-04-20T00:00:00+02:00 notAfter: '2048-04-12T00:00:00+02:00' + get-companies-companyId-apiCredentials-success-200: + summary: List of API credentials + description: Example response when your API credential has access to 25 API + credentials at the company level + value: + _links: + first: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=1&pageSize=10 + last: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=3&pageSize=10 + next: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=2&pageSize=10 + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials?pageNumber=1&pageSize=10 + itemsTotal: 25 + pagesTotal: 3 + data: + - id: YOUR_API_CREDENTIAL_1 + username: YOUR_USERNAME_1 + clientKey: YOUR_CLIENT_KEY_1 + allowedIpAddresses: [] + roles: + - Checkout encrypted cardholder data + - Merchant Recurring role + - Checkout webservice role + active: true + allowedOrigins: + - id: YOUR_ALLOWED_ORIGIN_1 + domain: http://localhost + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins/YOUR_ALLOWED_ORIGIN_1 + - id: YOUR_ALLOWED_ORIGIN_2 + domain: http://localhost:3000 + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins/YOUR_ALLOWED_ORIGIN_2 + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_1/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_2 + username: YOUR_USERNAME_2 + clientKey: YOUR_CLIENT_KEY_2 + allowedIpAddresses: [] + roles: + - Checkout encrypted cardholder data + - Merchant Recurring role + - Checkout webservice role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_2/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_3 + username: YOUR_USERNAME_3 + clientKey: YOUR_CLIENT_KEY_3 + allowedIpAddresses: [] + roles: + - API Supply MPI data with Payments + - Checkout encrypted cardholder data + - Merchant Recurring role + - API PCI Payments role + - Checkout webservice role + - API 3DS 2.0 to retrieve the ThreeDS2Result for authentication only + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_3/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_4 + username: YOUR_USERNAME_4 + clientKey: YOUR_CLIENT_KEY_4 + allowedIpAddresses: [] + roles: + - Checkout encrypted cardholder data + - Checkout webservice role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_4/generateClientKey + associatedMerchantAccounts: + - YOUR_MERCHANT_ACCOUNT_1 + - id: YOUR_API_CREDENTIAL_5 + username: YOUR_USERNAME_5 + clientKey: YOUR_CLIENT_KEY_5 + allowedIpAddresses: [] + roles: + - Checkout encrypted cardholder data + - Merchant Recurring role + - API Authorise Referred Payments + - API PCI Payments role + - Checkout webservice role + - Merchant PAL Webservice role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_5/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_6 + username: YOUR_USERNAME_6 + allowedIpAddresses: [] + roles: + - Merchant Report Download role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_6/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_7 + username: YOUR_USERNAME_7 + allowedIpAddresses: [] + roles: + - Merchant Report Download role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_7/generateClientKey + associatedMerchantAccounts: + - YOUR_MERCHANT_ACCOUNT_2 + - YOUR_MERCHANT_ACCOUNT_3 + - id: YOUR_API_CREDENTIAL_8 + username: YOUR_USERNAME_8 + allowedIpAddresses: [] + roles: + - Merchant Report Download role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_8/generateClientKey + associatedMerchantAccounts: [] + - id: YOUR_API_CREDENTIAL_9 + username: YOUR_USERNAME_9 + allowedIpAddresses: [] + roles: + - Merchant Report Download role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_9/generateClientKey + associatedMerchantAccounts: + - YOUR_MERCHANT_ACCOUNT_4 + - YOUR_MERCHANT_ACCOUNT_5 + - id: YOUR_API_CREDENTIAL_10 + username: YOUR_USERNAME_10 + allowedIpAddresses: [] + roles: + - Merchant Report Download role + active: true + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10 + allowedOrigins: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/allowedOrigins + company: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + generateApiKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/generateApiKey + generateClientKey: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials/YOUR_API_CREDENTIAL_10/generateClientKey + associatedMerchantAccounts: [] get-companies-companyId-billingEntities-success-200: summary: Response code - 200 OK description: Example response with billing entities for a company @@ -11687,6 +12026,188 @@ components: postalCode: '28046' city: Madrid country: ES + get-companies-companyId-merchants-success-200: + summary: List of merchant accounts + description: Example response when your API credential has access to 22 merchant + accounts + value: + _links: + first: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=1&pageSize=10 + last: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=3&pageSize=10 + next: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=2&pageSize=10 + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/merchants?pageNumber=1&pageSize=10 + itemsTotal: 22 + pagesTotal: 3 + data: + - id: YOUR_MERCHANT_ACCOUNT_1 + name: YOUR_MERCHANT_NAME_1 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_1 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/webhooks + - id: YOUR_MERCHANT_ACCOUNT_2 + name: YOUR_MERCHANT_NAME_2 + captureDelay: immediate + defaultShopperInteraction: POS + status: Active + shopWebAddress: YOUR_SHOP_URL_2 + merchantCity: '' + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/webhooks + - id: YOUR_MERCHANT_ACCOUNT_3 + status: Active + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/webhooks + - id: YOUR_MERCHANT_ACCOUNT_4 + name: YOUR_MERCHANT_NAME_4 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_4 + merchantCity: Sao Paulo + primarySettlementCurrency: BRL + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/webhooks + - id: YOUR_MERCHANT_ACCOUNT_5 + name: YOUR_MERCHANT_NAME_5 + captureDelay: '3' + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_5 + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/webhooks + - id: YOUR_MERCHANT_ACCOUNT_6 + name: YOUR_MERCHANT_NAME_6 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_6 + merchantCity: Zagreb + primarySettlementCurrency: BRL + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_6/webhooks + - id: YOUR_MERCHANT_ACCOUNT_7 + name: YOUR_MERCHANT_NAME_7 + captureDelay: manual + defaultShopperInteraction: Moto + status: Active + shopWebAddress: YOUR_SHOP_URL_7 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/webhooks + - id: YOUR_MERCHANT_ACCOUNT_8 + name: YOUR_MERCHANT_NAME_8 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_8 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/webhooks + - id: YOUR_MERCHANT_ACCOUNT_9 + name: YOUR_MERCHANT_NAME_9 + captureDelay: '3' + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_9 + merchantCity: '' + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/webhooks + - id: YOUR_MERCHANT_ACCOUNT_10 + name: YOUR_MERCHANT_NAME_10 + captureDelay: manual + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_10 + merchantCity: Paris + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/webhooks get-companies-companyId-shippingLocations-success-200: summary: Response code - 200 OK description: Example response with shipping locations for a company @@ -11717,6 +12238,25 @@ components: postalCode: '28046' city: Madrid country: ES + get-companies-companyId-success-200: + summary: Details of the company account + description: Example response with the details of the company account. + value: + id: YOUR_COMPANY_ACCOUNT + name: YOUR_SHOP_NAME + status: Active + dataCenters: + - name: default + livePrefix: '' + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + apiCredentials: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials + users: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/users + webhooks: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/webhooks get-companies-companyId-terminalActions-success-200: summary: Response code - 200 OK description: Example response when getting a list of scheduled terminal actions @@ -12011,6 +12551,36 @@ components: fromActiveToSleep: 30 hardware: displayMaximumBackLight: 75 + get-companies-success-200: + summary: List of company accounts + description: Example response when your API credential has access to one company + account. + value: + _links: + first: + href: https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10 + last: + href: https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10 + self: + href: https://management-test.adyen.com/v1/companies?pageNumber=1&pageSize=10 + itemsTotal: 1 + pagesTotal: 1 + data: + - id: YOUR_COMPANY_ACCOUNT + name: YOUR_COMPANY_NAME + status: Active + dataCenters: + - name: default + livePrefix: '' + _links: + self: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT + apiCredentials: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/apiCredentials + users: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/users + webhooks: + href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/webhooks get-merchants-merchantId-billingEntities-success-200: summary: Response code - 200 OK description: Example response with billing entities for a merchant account @@ -12457,6 +13027,188 @@ components: fromActiveToSleep: 30 hardware: displayMaximumBackLight: 75 + get-merchants-success-200: + summary: List of merchant accounts + description: Example response when your API credential has access to 23 merchant + accounts + value: + _links: + first: + href: https://management-test.adyen.com/v1/merchants?pageNumber=1&pageSize=10 + last: + href: https://management-test.adyen.com/v1/merchants?pageNumber=3&pageSize=10 + next: + href: https://management-test.adyen.com/v1/merchants?pageNumber=2&pageSize=10 + self: + href: https://management-test.adyen.com/v1/merchants?pageNumber=1&pageSize=10 + itemsTotal: 23 + pagesTotal: 3 + data: + - id: YOUR_MERCHANT_ACCOUNT_1 + name: YOUR_MERCHANT_NAME_1 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_1 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_1/webhooks + - id: YOUR_MERCHANT_ACCOUNT_2 + name: YOUR_MERCHANT_NAME_2 + captureDelay: immediate + defaultShopperInteraction: POS + status: Active + shopWebAddress: YOUR_SHOP_URL_2 + merchantCity: '' + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_2/webhooks + - id: YOUR_MERCHANT_ACCOUNT_3 + status: YOUR_MERCHANT_NAME_3 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_3/webhooks + - id: YOUR_MERCHANT_ACCOUNT_4 + name: YOUR_MERCHANT_NAME_4 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_4 + merchantCity: Sao Paulo + primarySettlementCurrency: BRL + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_4/webhooks + - id: YOUR_MERCHANT_ACCOUNT_5 + name: YOUR_MERCHANT_NAME_5 + captureDelay: '3' + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_5 + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_5/webhooks + - id: YOUR_MERCHANT_ACCOUNT_6 + name: YOUR_MERCHANT_NAME_6 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_6 + merchantCity: Zagreb + primarySettlementCurrency: BRL + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_NAME_6/webhooks + - id: YOUR_MERCHANT_ACCOUNT_7 + name: YOUR_MERCHANT_NAME_7 + captureDelay: manual + defaultShopperInteraction: Moto + status: Active + shopWebAddress: YOUR_SHOP_URL_7 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_7/webhooks + - id: YOUR_MERCHANT_ACCOUNT_8 + name: YOUR_MERCHANT_NAME_8 + captureDelay: immediate + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_8 + merchantCity: Amsterdam + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_8/webhooks + - id: YOUR_MERCHANT_ACCOUNT_9 + name: YOUR_MERCHANT_NAME_9 + captureDelay: '3' + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_9 + merchantCity: '' + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_9/webhooks + - id: YOUR_MERCHANT_ACCOUNT_10 + name: YOUR_MERCHANT_NAME_10 + captureDelay: manual + defaultShopperInteraction: Ecommerce + status: Active + shopWebAddress: YOUR_SHOP_URL_10 + merchantCity: Paris + primarySettlementCurrency: EUR + _links: + self: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10 + apiCredentials: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/apiCredentials + users: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/users + webhooks: + href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT_10/webhooks get-stores-storeId-success-200: summary: Response code - 200 OK description: Example response when getting the details of a store @@ -12639,6 +13391,8 @@ components: fromActiveToSleep: 30 hardware: displayMaximumBackLight: 75 + connectivity: + simcardStatus: INVENTORY patch-companies-companyId-terminalLogos-remove-logo: summary: Remove logo to restore the logo from a higher level description: Example request to remove the payment terminal logo configured @@ -13834,6 +14588,8 @@ components: fromActiveToSleep: 30 hardware: displayMaximumBackLight: 75 + connectivity: + simcardStatus: INVENTORY patch-terminals-terminalId-terminalSettings-add-eap-tls-wifi-profile: summary: Add EAP-TLS Wi-Fi profile description: Example request to add an EAP-TLS Wi-Fi profile for a terminal @@ -13927,6 +14683,8 @@ components: fromActiveToSleep: 30 hardware: displayMaximumBackLight: 75 + connectivity: + simcardStatus: INVENTORY post-companies-companyId-shippingLocations-create-shipping-location: summary: Create a shipping location description: Example request to create a shipping location @@ -14087,53 +14845,6 @@ components: href: https://management-test.adyen.com/v1/companies/YOUR_COMPANY_ACCOUNT/users/S2-5C334C6770 associatedMerchantAccounts: - YOUR_MERCHANT_ACCOUNT - post-merchants-merchantId-paymentMethodSettings-add-payment-method: - summary: Request a payment method - description: Example request to add a payment method - value: - type: visa - currencies: - - USD - countries: - - US - post-merchants-merchantId-paymentMethodSettings-add-payment-method-200: - summary: Response code - 200 OK - description: Example response after sending a request to add a payment method - value: - id: PM3227C223224K5FH84M8CBNH - type: visa - countries: - - US - currencies: - - USD - post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model: - summary: Request to add Swish - description: Example request to add Swish with a partner model setup - value: - businessLineId: BL322KV223222D5F8H2J4BQ6C - storeId: ST322LJ223223K5F4SQNR9XL5 - type: swish - swish: - swishNumber: '1231111111' - currencies: - - SEK - countries: - - SE - post-merchants-merchantId-paymentMethodSettings-add-payment-method-partner-model-200: - summary: Response code - 200 OK - description: Example response after sending a request to add Swish in a partner - model setup - value: - id: PM3227C223224K5FH84M8CBNH - businessLineId: BL322KV223222D5F8H2J4BQ6C - storeId: ST322LJ223223K5F4SQNR9XL5 - type: swish - countries: - - SE - currencies: - - SEK - swish: - swishNumber: '1231111111' post-merchants-merchantId-shippingLocations-create-shipping-location: summary: Create a shipping location description: Example request to create a shipping location @@ -14298,40 +15009,6 @@ components: - id: PART-620222-EU name: Receipt Roll quantity: 20 - post-merchants-merchantId-users-create-user: - summary: Create a user - description: Example request to create a user on the merchant level - value: - name: - firstName: John - lastName: Smith - username: johnsmith - email: john.smith@example.com - timeZoneCode: Europe/Amsterdam - roles: - - Merchant standard role - associatedMerchantAccounts: - - YOUR_MERCHANT_ACCOUNT - post-merchants-merchantId-users-create-user-200: - summary: Response code - 200 OK - description: Example response after creating a user on the merchant level - value: - id: S2-3B3C3C3B22 - name: - firstName: John - gender: UNKNOWN - lastName: Smith - email: john.smith@example.com - timeZoneCode: Europe/Amsterdam - username: johnsmith - roles: - - Merchant standard role - active: 'true' - _links: - self: - href: https://management-test.adyen.com/v1/merchants/YOUR_MERCHANT_ACCOUNT/users/S2-3B3C3C3B22 - associatedMerchantAccounts: - - YOUR_MERCHANT_ACCOUNT post-stores-post-stores: summary: Create a store description: Example request to create a store diff --git a/yaml/MarketPayNotificationService-v3.yaml b/yaml/MarketPayNotificationService-v3.yaml index 64f8f72..fe5be22 100644 --- a/yaml/MarketPayNotificationService-v3.yaml +++ b/yaml/MarketPayNotificationService-v3.yaml @@ -9,6 +9,7 @@ info: For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).' + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -26,8 +27,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the closure of an account. - description: This notification is sent when an account has been closed. + summary: Account closed + description: Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount). operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 @@ -56,8 +57,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the creation of an account. - description: This notification is sent when an account has been created. + summary: Account created + description: Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount). operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 @@ -67,12 +68,18 @@ webhooks: requestBody: content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/post-ACCOUNT_CREATED-accountCreated' schema: $ref: '#/components/schemas/AccountCreateNotification' responses: '200': content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -80,10 +87,9 @@ webhooks: post: tags: - Fund management - summary: Triggered when a liable account current funds are below configured - threshold. - description: This notification is sent when a liable account's current funds - are below configured threshold from the Adyen platform. + summary: Liable account's funds are below configured threshold + description: Adyen sends this notification when the current funds of your liable + account are below the configured threshold. operationId: post-ACCOUNT_FUNDS_BELOW_THRESHOLD x-groupName: Fund management x-sortIndex: 7 @@ -106,8 +112,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the creation of an account holder. - description: This notification is sent when an account holder has been created. + summary: Account holder created + description: Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder). operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 @@ -117,12 +123,26 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses' + accountHolderCreated-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed' + accountHolderCreated-individuals: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals' schema: $ref: '#/components/schemas/AccountHolderCreateNotification' responses: '200': content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-individuals: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -130,9 +150,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon a payout to an account holder. - description: This notification is sent when a payout request to an account holder - has been processed and the payout has been scheduled. + summary: Paid out to account holder + description: Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) + to an account holder is processed and the payout is scheduled. operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 @@ -142,12 +162,22 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed' + accountHolderPayout-initiated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated' schema: $ref: '#/components/schemas/AccountHolderPayoutNotification' responses: '200': content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderPayout-initiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -155,9 +185,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of an account holder. - description: This notification is sent when the status of an account holder - has been changed. + summary: Account holder status changed + description: Adyen sends this webhook when [the status of an account holder + is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState). operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -167,12 +197,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange' schema: $ref: '#/components/schemas/AccountHolderStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -180,9 +216,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of a store tied to an account holder. - description: This notification is sent when the status of a store tied to an - account holder has been changed. + summary: Store status changed + description: Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) + associated with an account holder is changed. operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -192,12 +228,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange' schema: $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -205,9 +247,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon an upcoming deadline. - description: This notification is sent when an Account Holder has a deadline, - to fulfill the requirements of a specific event, coming up. + summary: Upcoming deadline + description: Adyen sends this notification when an account holder's deadline + to fulfill the requirements of a specific event is coming up. operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 @@ -230,8 +272,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the update of an account holder. - description: This notification is sent when an account holder has been updated. + summary: Account holder updated + description: Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder). operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 @@ -241,12 +283,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated' schema: $ref: '#/components/schemas/AccountHolderUpdateNotification' responses: '200': content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -254,9 +302,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the receipt of KYC Verification results. - description: This notification is sent when KYC Verification results are made - available. + summary: Verification results received + description: Adyen sends this webhook when verification results are available. operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 @@ -266,12 +313,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification' schema: $ref: '#/components/schemas/AccountHolderVerificationNotification' responses: '200': content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -279,8 +332,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the update of an account. - description: This notification is sent when an account has been updated. + summary: Account updated + description: Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount). operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 @@ -290,12 +343,18 @@ webhooks: requestBody: content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/post-ACCOUNT_UPDATED-accountUpdated' schema: $ref: '#/components/schemas/AccountUpdateNotification' responses: '200': content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -303,9 +362,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the setup of a beneficiary. - description: This notification is sent when a benefactor/beneficiary relationship - between accounts has been set up. + summary: Beneficiary defined + description: Adyen sends this notification when a [benefactor/beneficiary relationship + is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 @@ -315,12 +374,18 @@ webhooks: requestBody: content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup' schema: $ref: '#/components/schemas/BeneficiarySetupNotification' responses: '200': content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -328,10 +393,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the compensation of negative account balances. - description: This notification is sent when funds have been transferred from - your platform's liable account to an overdrawn account in order to compensate - for the overdraft. + summary: Negative account balances compensated + description: Adyen sends this notification when funds are transferred from your + platform's liable account to an overdrawn account to compensate for the overdraft. operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 @@ -341,12 +405,18 @@ webhooks: requestBody: content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance' schema: $ref: '#/components/schemas/CompensateNegativeBalanceNotification' responses: '200': content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -354,9 +424,8 @@ webhooks: post: tags: - Fund management - summary: Triggered when an automated direct debit is initiated. - description: This notification is sent when an automated direct debit is initiated - from the Adyen platform. + summary: Automated direct debit initiated + description: Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder). operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 @@ -366,12 +435,22 @@ webhooks: requestBody: content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated' + directDebitInitiated-failed: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed' schema: $ref: '#/components/schemas/DirectDebitInitiatedNotification' responses: '200': content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/WebhookAck' + directDebitInitiated-failed: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -379,12 +458,12 @@ webhooks: post: tags: - Other - summary: Triggered when a booking for a capture or refund fails. - description: This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + summary: Booking for a capture or refund failed + description: Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited - to your platform's liable account instead of the account specified in the - split data. + to or fromyour platform's liable account instead of the account specified + in the split data. operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 @@ -394,12 +473,18 @@ webhooks: requestBody: content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/post-PAYMENT_FAILURE-paymentFailure' schema: $ref: '#/components/schemas/PaymentFailureNotification' responses: '200': content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -407,9 +492,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer refund of funds between accounts. - description: This notification is sent when the refund of funds from an account - have been transferred to another account. + summary: Funds transfer between accounts refunded + description: Adyen sends this notification when [funds transferred between accounts + are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer). operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 @@ -432,8 +517,9 @@ webhooks: post: tags: - Other - summary: Triggered when a report is made available. - description: This notification is sent when a report has been made available. + summary: Report available + description: Adyen sends this notification when a report has been generated + and it is available for download. operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 @@ -443,12 +529,18 @@ webhooks: requestBody: content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/post-REPORT_AVAILABLE-reportAvailable' schema: $ref: '#/components/schemas/ReportAvailableNotification' responses: '200': content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -456,10 +548,10 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers - Not Paid Out' call. - description: This notification is sent when a 'Refund Transfers Not Paid Out' - call has been processed and the associated refunds have been scheduled. + summary: '''Refund Transfers Not Paid Out'' call processed and refunds scheduled' + description: Adyen sends this notification when a request to [refund transfers + that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) + is processed and the associated refunds are scheduled. operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 @@ -469,12 +561,18 @@ webhooks: requestBody: content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds' schema: $ref: '#/components/schemas/ScheduledRefundsNotification' responses: '200': content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -482,9 +580,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer of funds between accounts. - description: This notification is sent when the funds from an account have been - transferred to another account. + summary: Funds transferred between accounts + description: Adyen sends this notification when [funds are transferred between + accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 @@ -494,12 +592,18 @@ webhooks: requestBody: content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/post-TRANSFER_FUNDS-transferFunds' schema: $ref: '#/components/schemas/TransferFundsNotification' responses: '200': content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -924,6 +1028,7 @@ components: - CloseAccount - CloseStores - DeleteBankAccounts + - DeleteLiableBankAccount - DeletePayoutMethods - DeleteShareholders - DeleteSignatories @@ -1284,9 +1389,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1568,7 +1674,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -1664,7 +1770,7 @@ components: description: The code of the merchant account. type: string splits: - description: The split data for the debit request + description: The split data for the debit request. items: $ref: '#/components/schemas/Split' type: array @@ -1703,6 +1809,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -1878,7 +1988,7 @@ components: itemDescription: description: A description of the item reviewed. type: string - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -1964,11 +2074,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -2456,13 +2566,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -2720,7 +2831,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification @@ -2887,17 +2998,167 @@ components: value: notificationResponse: '[accepted]' post-ACCOUNT_CLOSED-accountClosed: - summary: ACCOUNT CLOSED example + summary: ACCOUNT_CLOSED example value: - error: - errorCode: '000' - message: test error message - eventDate: '2019-01-01T01:00:00+01:00' eventType: ACCOUNT_CLOSED executingUserKey: executing-user-key live: false pspReference: TSTPSPR0001 content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + status: Closed + post-ACCOUNT_CREATED-accountCreated: + summary: ACCOUNT_CREATED example + value: + eventType: ACCOUNT_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + payoutSchedule: + nextScheduledPayout: '2023-01-01T01:00:00+01:00' + schedule: DAILY + status: Active + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses: + summary: ACCOUNT_HOLDER_CREATED for businesses example + value: + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event invalidFields: - errorCode: 1 errorDescription: Field is missing @@ -2905,6 +3166,804 @@ components: field: AccountHolderDetails.BusinessDetails.Shareholders.unknown fieldName: unknown shareholderCode: SH00001 + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed: + summary: ACCOUNT_HOLDER_CREATED failed example + value: + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + mimeType: genericNotification + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + accountState: + allowPayout: false + allowProcessing: false + disableReason: Reason for disabled status + disabled: true + stateDeadline: '1970-01-01T01:00:00+01:00' + stateLimit: + amount: 100 + currency: EUR + stateType: Processing + tierNumber: 2 + amount: + currency: EUR + value: 10 + totalAmountBeforeLimit: + currency: EUR + value: 100 + transactionDate: '1970-01-01T01:00:00+01:00' + transactionFailed: false + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals: + summary: ACCOUNT_HOLDER_CREATED for individuals example + value: + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: pspReference: TSTPSPR0001 resultCode: Success - status: Closed + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed: + summary: ACCOUNT_HOLDER_PAYOUT failed example + value: + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + merchantReference: MRef#00000001 + status: + message: + code: '10_069' + text: 'Payout has been failed for account seller1. Details: Payout has + been rejected by the beneficiary bank.' + statusCode: Failed + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated: + summary: ACCOUNT_HOLDER_PAYOUT initiated example + value: + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + merchantReference: MRef#00000001 + status: + statusCode: Initiated + post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange: + summary: ACCOUNT_HOLDER_STATUS_CHANGE example + value: + eventType: ACCOUNT_HOLDER_STATUS_CHANGE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + oldStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + newStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + reason: status change reason + post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange: + summary: ACCOUNT_HOLDER_STORE_STATUS_CHANGE example + value: + eventType: ACCOUNT_HOLDER_STORE_STATUS_CHANGE + eventDate: '2018-04-23T13:13:44+02:00' + executingUserKey: ws + live: true + pspReference: '1313642467023511' + content: + accountHolderCode: YOUR_UNIQUE_ACCOUNT_HOLDER_CODE + store: UNIQUE_SUBMERCHANT_STORE_ID + storeReference: YOUR_SUBMERCHANT_STORE_ID + newStatus: Active + oldStatus: Pending + reason: YOUR_REASON + post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated: + summary: ACCOUNT_HOLDER_UPDATED example + value: + eventType: ACCOUNT_HOLDER_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + updatedFields: + - field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification: + summary: ACCOUNT_HOLDER_VERIFICATION example + value: + eventType: ACCOUNT_HOLDER_VERIFICATION + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH0000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + shareholderCode: SH00000001 + statusSummaryItems: + - itemCode: 100 + itemDescription: test item description + verificationStatus: PENDING + verificationType: IDENTITY_VERIFICATION + post-ACCOUNT_UPDATED-accountUpdated: + summary: ACCOUNT_UPDATED example + value: + eventType: ACCOUNT_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + payoutSchedule: + nextScheduledPayout: '2023-01-01T01:00:00+01:00' + schedule: DAILY + post-BENEFICIARY_SETUP-beneficiarySetup: + summary: BENEFICIARY_SETUP example + value: + eventType: BENEFICIARY_SETUP + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + destinationAccountCode: AC00000001D + destinationAccountHolderCode: AH00000001D + merchantReference: MRef#000000001 + sourceAccountCode: AC0000001S + sourceAccountHolderCode: AH000000001S + transferDate: '1970-01-01T01:00:00+01:00' + transferredTransactionCount: 3 + post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance: + summary: COMPENSATE_NEGATIVE_BALANCE example + value: + eventType: COMPENSATE_NEGATIVE_BALANCE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + records: + - accountCode: AC000001 + amount: + currency: EUR + value: 10 + transferDate: '1970-01-01T01:00:00+01:00' + post-DIRECT_DEBIT_INITIATED-directDebitInitiated: + summary: DIRECT_DEBIT_INITIATED example + value: + eventDate: '2021-02-01T14:19:14-08:00' + eventType: DIRECT_DEBIT_INITIATED + live: 'false' + executingUserKey: executing-user-key + pspReference: '8515681150749298' + content: + accountCode: '8825579787887769' + amount: + currency: USD + value: 6200 + debitInitiationDate: '2021-02-01' + splits: + - account: '8535516988037431' + amount: + currency: EUR + value: 6000 + reference: YOUR_SPLIT_REFERENCE_1 + type: MarketPlace + - amount: + currency: EUR + value: 200 + reference: YOUR_SPLIT_REFERENCE_2 + type: Commission + status: + statusCode: Initiated + post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed: + summary: DIRECT_DEBIT_INITIATED failed example + value: + eventDate: '2021-02-01T14:19:14-08:00' + eventType: DIRECT_DEBIT_INITIATED + live: 'false' + executingUserKey: executing-user-key + pspReference: '8315659584588245' + content: + accountCode: '8825579787887769' + amount: + currency: EUR + value: 500000 + debitInitiationDate: '2021-07-07' + merchantAccountCode: YOUR_MERCHANT_ACCOUNT + splits: + - account: '8535516988037431' + amount: + currency: EUR + value: 490000 + reference: YOUR_SPLIT_REFERENCE_1 + type: MarketPlace + - amount: + currency: EUR + value: 10000 + reference: YOUR_SPLIT_REFERENCE_2 + type: Commission + status: + message: + code: '10_145' + text: Failed to initiate the direct debit for account holder. + statusCode: Failed + post-PAYMENT_FAILURE-paymentFailure: + summary: PAYMENT_FAILURE example + value: + eventType: PAYMENT_FAILURE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + errorFields: + - errorCode: 52 + errorDescription: 'Amount is negative or zero. value: ' + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + errorMessage: + code: '100' + text: test error message + post-REPORT_AVAILABLE-reportAvailable: + summary: REPORT_AVAILABLE example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: REPORT_AVAILABLE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountType: account-type + eventDate: '2019-01-01T01:00:00+01:00' + remoteAccessUrl: http://adyen.com/ + success: false + post-SCHEDULED_REFUNDS-scheduledRefunds: + summary: SCHEDULED_REFUNDS example + value: + eventType: SCHEDULED_REFUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountHolderCode: AH000001 + lastPayout: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + refundResults: + - originalTransaction: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + pspReference: TSTPSPR00000001 + response: response + post-TRANSFER_FUNDS-transferFunds: + summary: TRANSFER_FUNDS example + value: + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 diff --git a/yaml/MarketPayNotificationService-v4.yaml b/yaml/MarketPayNotificationService-v4.yaml index 21fb1cd..a70b2c9 100644 --- a/yaml/MarketPayNotificationService-v4.yaml +++ b/yaml/MarketPayNotificationService-v4.yaml @@ -9,6 +9,7 @@ info: For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).' + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -26,8 +27,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the closure of an account. - description: This notification is sent when an account has been closed. + summary: Account closed + description: Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount). operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 @@ -56,8 +57,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the creation of an account. - description: This notification is sent when an account has been created. + summary: Account created + description: Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount). operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 @@ -67,12 +68,18 @@ webhooks: requestBody: content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/post-ACCOUNT_CREATED-accountCreated' schema: $ref: '#/components/schemas/AccountCreateNotification' responses: '200': content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -80,10 +87,9 @@ webhooks: post: tags: - Fund management - summary: Triggered when a liable account current funds are below configured - threshold. - description: This notification is sent when a liable account's current funds - are below configured threshold from the Adyen platform. + summary: Liable account's funds are below configured threshold + description: Adyen sends this notification when the current funds of your liable + account are below the configured threshold. operationId: post-ACCOUNT_FUNDS_BELOW_THRESHOLD x-groupName: Fund management x-sortIndex: 7 @@ -106,8 +112,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the creation of an account holder. - description: This notification is sent when an account holder has been created. + summary: Account holder created + description: Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder). operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 @@ -117,12 +123,26 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses' + accountHolderCreated-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed' + accountHolderCreated-individuals: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals' schema: $ref: '#/components/schemas/AccountHolderCreateNotification' responses: '200': content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-individuals: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -130,9 +150,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon a payout to an account holder. - description: This notification is sent when a payout request to an account holder - has been processed and the payout has been scheduled. + summary: Paid out to account holder + description: Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) + to an account holder is processed and the payout is scheduled. operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 @@ -142,12 +162,22 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed' + accountHolderPayout-initiated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated' schema: $ref: '#/components/schemas/AccountHolderPayoutNotification' responses: '200': content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderPayout-initiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -155,9 +185,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of an account holder. - description: This notification is sent when the status of an account holder - has been changed. + summary: Account holder status changed + description: Adyen sends this webhook when [the status of an account holder + is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState). operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -167,12 +197,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange' schema: $ref: '#/components/schemas/AccountHolderStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -180,9 +216,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of a store tied to an account holder. - description: This notification is sent when the status of a store tied to an - account holder has been changed. + summary: Store status changed + description: Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) + associated with an account holder is changed. operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -192,12 +228,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange' schema: $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -205,9 +247,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon an upcoming deadline. - description: This notification is sent when an Account Holder has a deadline, - to fulfill the requirements of a specific event, coming up. + summary: Upcoming deadline + description: Adyen sends this notification when an account holder's deadline + to fulfill the requirements of a specific event is coming up. operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 @@ -230,8 +272,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the update of an account holder. - description: This notification is sent when an account holder has been updated. + summary: Account holder updated + description: Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder). operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 @@ -241,12 +283,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated' schema: $ref: '#/components/schemas/AccountHolderUpdateNotification' responses: '200': content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -254,9 +302,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the receipt of KYC Verification results. - description: This notification is sent when KYC Verification results are made - available. + summary: Verification results received + description: Adyen sends this webhook when verification results are available. operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 @@ -266,12 +313,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification' schema: $ref: '#/components/schemas/AccountHolderVerificationNotification' responses: '200': content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -279,8 +332,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the update of an account. - description: This notification is sent when an account has been updated. + summary: Account updated + description: Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount). operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 @@ -290,12 +343,18 @@ webhooks: requestBody: content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/post-ACCOUNT_UPDATED-accountUpdated' schema: $ref: '#/components/schemas/AccountUpdateNotification' responses: '200': content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -303,9 +362,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the setup of a beneficiary. - description: This notification is sent when a benefactor/beneficiary relationship - between accounts has been set up. + summary: Beneficiary defined + description: Adyen sends this notification when a [benefactor/beneficiary relationship + is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 @@ -315,12 +374,18 @@ webhooks: requestBody: content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup' schema: $ref: '#/components/schemas/BeneficiarySetupNotification' responses: '200': content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -328,10 +393,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the compensation of negative account balances. - description: This notification is sent when funds have been transferred from - your platform's liable account to an overdrawn account in order to compensate - for the overdraft. + summary: Negative account balances compensated + description: Adyen sends this notification when funds are transferred from your + platform's liable account to an overdrawn account to compensate for the overdraft. operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 @@ -341,12 +405,18 @@ webhooks: requestBody: content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance' schema: $ref: '#/components/schemas/CompensateNegativeBalanceNotification' responses: '200': content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -354,9 +424,8 @@ webhooks: post: tags: - Fund management - summary: Triggered when an automated direct debit is initiated. - description: This notification is sent when an automated direct debit is initiated - from the Adyen platform. + summary: Automated direct debit initiated + description: Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder). operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 @@ -366,12 +435,22 @@ webhooks: requestBody: content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated' + directDebitInitiated-failed: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed' schema: $ref: '#/components/schemas/DirectDebitInitiatedNotification' responses: '200': content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/WebhookAck' + directDebitInitiated-failed: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -379,12 +458,12 @@ webhooks: post: tags: - Other - summary: Triggered when a booking for a capture or refund fails. - description: This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + summary: Booking for a capture or refund failed + description: Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited - to your platform's liable account instead of the account specified in the - split data. + to or fromyour platform's liable account instead of the account specified + in the split data. operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 @@ -394,12 +473,18 @@ webhooks: requestBody: content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/post-PAYMENT_FAILURE-paymentFailure' schema: $ref: '#/components/schemas/PaymentFailureNotification' responses: '200': content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -407,9 +492,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer refund of funds between accounts. - description: This notification is sent when the refund of funds from an account - have been transferred to another account. + summary: Funds transfer between accounts refunded + description: Adyen sends this notification when [funds transferred between accounts + are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer). operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 @@ -432,8 +517,9 @@ webhooks: post: tags: - Other - summary: Triggered when a report is made available. - description: This notification is sent when a report has been made available. + summary: Report available + description: Adyen sends this notification when a report has been generated + and it is available for download. operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 @@ -443,12 +529,18 @@ webhooks: requestBody: content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/post-REPORT_AVAILABLE-reportAvailable' schema: $ref: '#/components/schemas/ReportAvailableNotification' responses: '200': content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -456,10 +548,10 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers - Not Paid Out' call. - description: This notification is sent when a 'Refund Transfers Not Paid Out' - call has been processed and the associated refunds have been scheduled. + summary: '''Refund Transfers Not Paid Out'' call processed and refunds scheduled' + description: Adyen sends this notification when a request to [refund transfers + that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) + is processed and the associated refunds are scheduled. operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 @@ -469,12 +561,18 @@ webhooks: requestBody: content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds' schema: $ref: '#/components/schemas/ScheduledRefundsNotification' responses: '200': content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -482,9 +580,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer of funds between accounts. - description: This notification is sent when the funds from an account have been - transferred to another account. + summary: Funds transferred between accounts + description: Adyen sends this notification when [funds are transferred between + accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 @@ -494,12 +592,18 @@ webhooks: requestBody: content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/post-TRANSFER_FUNDS-transferFunds' schema: $ref: '#/components/schemas/TransferFundsNotification' responses: '200': content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -972,6 +1076,7 @@ components: - CloseAccount - CloseStores - DeleteBankAccounts + - DeleteLiableBankAccount - DeletePayoutMethods - DeleteShareholders - DeleteSignatories @@ -1348,9 +1453,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1660,7 +1766,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -1767,7 +1873,7 @@ components: description: The code of the merchant account. type: string splits: - description: The split data for the debit request + description: The split data for the debit request. items: $ref: '#/components/schemas/Split' type: array @@ -1806,6 +1912,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -1976,7 +2086,7 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2062,11 +2172,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -2578,13 +2688,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -2860,7 +2971,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification @@ -3032,17 +3143,157 @@ components: value: notificationResponse: '[accepted]' post-ACCOUNT_CLOSED-accountClosed: - summary: ACCOUNT CLOSED example + summary: ACCOUNT_CLOSED example value: - error: - errorCode: '000' - message: test error message eventDate: '2019-01-01T01:00:00+01:00' eventType: ACCOUNT_CLOSED executingUserKey: executing-user-key live: false pspReference: TSTPSPR0001 content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + status: Closed + post-ACCOUNT_CREATED-accountCreated: + summary: ACCOUNT_CREATED example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + description: account description + payoutSchedule: + nextScheduledPayout: '2019-01-02T01:00:00+01:00' + schedule: DAILY + status: Active + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses: + summary: ACCOUNT_HOLDER_CREATED for businesses example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + registrationNumber: Reg#1234 + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + description: description for account holder invalidFields: - errorCode: 1 errorDescription: Field is missing @@ -3050,6 +3301,824 @@ components: field: AccountHolderDetails.BusinessDetails.Shareholders.unknown fieldName: unknown shareholderCode: SH00001 + legalEntity: Business + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed: + summary: ACCOUNT_HOLDER_CREATED failed example + value: + eventDate: '1970-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + mimeType: genericNotification + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + accountState: + allowPayout: false + allowProcessing: false + disableReason: Reason for disabled status + disabled: true + stateDeadline: '1970-01-01T01:00:00+01:00' + stateLimit: + amount: 100 + currency: EUR + stateType: Processing + tierNumber: 2 + amount: + currency: EUR + value: 10 + totalAmountBeforeLimit: + currency: EUR + value: 100 + transactionDate: '1970-01-01T01:00:00+01:00' + transactionFailed: false + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals: + summary: ACCOUNT_HOLDER_CREATED for individuals example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: pspReference: TSTPSPR0001 resultCode: Success - status: Closed + submittedAsync: false + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + description: description for account holder + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + legalEntity: Individual + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed: + summary: ACCOUNT_HOLDER_PAYOUT failed example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + merchantReference: MRef#00000001 + status: + message: + code: '10_069' + text: 'Payout has been failed for account seller1. Details: Payout has + been rejected by the beneficiary bank.' + statusCode: Failed + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated: + summary: ACCOUNT_HOLDER_PAYOUT initiated example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + merchantReference: MRef#00000001 + status: + statusCode: Initiated + post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange: + summary: ACCOUNT_HOLDER_STATUS_CHANGE example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_STATUS_CHANGE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + oldStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason of why the payout was disabled + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + newStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + reason: status change reason + post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange: + summary: ACCOUNT_HOLDER_STORE_STATUS_CHANGE example + value: + eventType: ACCOUNT_HOLDER_STORE_STATUS_CHANGE + eventDate: '2018-04-23T13:13:44+02:00' + executingUserKey: ws + live: true + pspReference: '1313642467023511' + content: + accountHolderCode: YOUR_UNIQUE_ACCOUNT_HOLDER_CODE + store: UNIQUE_SUBMERCHANT_STORE_ID + storeReference: YOUR_SUBMERCHANT_STORE_ID + newStatus: Active + oldStatus: Pending + reason: YOUR_REASON + post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated: + summary: ACCOUNT CLOSED example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + registrationNumber: Reg#1234 + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + idNumber: ID#123456 + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + description: description for account holder + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + legalEntity: Business + updatedFields: + - field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + code: 100 + description: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification: + summary: ACCOUNT_HOLDER_VERIFICATION example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_VERIFICATION + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH0000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + statusSummary: + code: 1302 + description: This user was not found in the database. Please update your + personal details or upload a document + verificationStatus: INVALID_DATA + verificationType: IDENTITY_VERIFICATION + post-ACCOUNT_UPDATED-accountUpdated: + summary: ACCOUNT_UPDATED example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + pspReference: TSTPSPR0001 + resultCode: Success + submittedAsync: false + accountCode: AC0000000001 + description: account description + payoutSchedule: + nextScheduledPayout: '2019-01-02T01:00:00+01:00' + schedule: DAILY + post-BENEFICIARY_SETUP-beneficiarySetup: + summary: BENEFICIARY_SETUP example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: BENEFICIARY_SETUP + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + destinationAccountCode: AC00000001D + destinationAccountHolderCode: AH00000001D + merchantReference: MRef#000000001 + sourceAccountCode: AC0000001S + sourceAccountHolderCode: AH000000001S + transferDate: '2019-01-01T01:00:00+01:00' + transferredTransactionCount: 3 + post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance: + summary: COMPENSATE_NEGATIVE_BALANCE example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: COMPENSATE_NEGATIVE_BALANCE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + records: + - accountCode: AC000001 + amount: + currency: EUR + value: 10 + transferDate: '2019-01-01T01:00:00+01:00' + post-DIRECT_DEBIT_INITIATED-directDebitInitiated: + summary: DIRECT_DEBIT_INITIATED example + value: + eventDate: '2021-02-01T14:19:14-08:00' + eventType: DIRECT_DEBIT_INITIATED + live: 'false' + executingUserKey: executing-user-key + pspReference: '8515681150749298' + content: + accountCode: '8825579787887769' + amount: + currency: USD + value: 6200 + debitInitiationDate: '2021-02-01' + splits: + - account: '8535516988037431' + amount: + currency: EUR + value: 6000 + reference: YOUR_SPLIT_REFERENCE_1 + type: MarketPlace + - amount: + currency: EUR + value: 200 + reference: YOUR_SPLIT_REFERENCE_2 + type: Commission + status: + statusCode: Initiated + post-DIRECT_DEBIT_INITIATED-directDebitInitiated-failed: + summary: DIRECT_DEBIT_INITIATED failed example + value: + eventDate: '2021-02-01T14:19:14-08:00' + eventType: DIRECT_DEBIT_INITIATED + live: 'false' + executingUserKey: executing-user-key + pspReference: '8315659584588245' + content: + accountCode: '8825579787887769' + amount: + currency: EUR + value: 500000 + debitInitiationDate: '2021-07-07' + merchantAccountCode: YOUR_MERCHANT_ACCOUNT + splits: + - account: '8535516988037431' + amount: + currency: EUR + value: 490000 + reference: YOUR_SPLIT_REFERENCE_1 + type: MarketPlace + - amount: + currency: EUR + value: 10000 + reference: YOUR_SPLIT_REFERENCE_2 + type: Commission + status: + message: + code: '10_145' + text: Failed to initiate the direct debit for account holder. + statusCode: Failed + post-PAYMENT_FAILURE-paymentFailure: + summary: PAYMENT_FAILURE example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: PAYMENT_FAILURE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + errorFields: + - errorCode: 52 + errorDescription: 'Amount is negative or zero. value: ' + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + errorMessage: + code: '100' + text: test error message + post-REPORT_AVAILABLE-reportAvailable: + summary: REPORT_AVAILABLE example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: REPORT_AVAILABLE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountType: account-type + eventDate: '2019-01-01T01:00:00+01:00' + remoteAccessUrl: http://adyen.com/ + success: false + post-SCHEDULED_REFUNDS-scheduledRefunds: + summary: SCHEDULED_REFUNDS example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: SCHEDULED_REFUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountHolderCode: AH000001 + lastPayout: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '2019-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + refundResults: + - originalTransaction: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '2019-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + pspReference: TSTPSPR00000001 + response: response + post-TRANSFER_FUNDS-transferFunds: + summary: TRANSFER_FUNDS example + value: + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 diff --git a/yaml/MarketPayNotificationService-v5.yaml b/yaml/MarketPayNotificationService-v5.yaml index dba692a..7cf7af8 100644 --- a/yaml/MarketPayNotificationService-v5.yaml +++ b/yaml/MarketPayNotificationService-v5.yaml @@ -9,6 +9,7 @@ info: For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).' + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -26,8 +27,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the closure of an account. - description: This notification is sent when an account has been closed. + summary: Account closed + description: Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount). operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 @@ -56,8 +57,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the creation of an account. - description: This notification is sent when an account has been created. + summary: Account created + description: Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount). operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 @@ -67,12 +68,18 @@ webhooks: requestBody: content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/post-ACCOUNT_CREATED-accountCreated' schema: $ref: '#/components/schemas/AccountCreateNotification' responses: '200': content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -80,10 +87,9 @@ webhooks: post: tags: - Fund management - summary: Triggered when a liable account current funds are below configured - threshold. - description: This notification is sent when a liable account's current funds - are below configured threshold from the Adyen platform. + summary: Liable account's funds are below configured threshold + description: Adyen sends this notification when the current funds of your liable + account are below the configured threshold. operationId: post-ACCOUNT_FUNDS_BELOW_THRESHOLD x-groupName: Fund management x-sortIndex: 7 @@ -93,12 +99,18 @@ webhooks: requestBody: content: application/json: + examples: + accountFundsBelowThreshold: + $ref: '#/components/examples/post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold' schema: $ref: '#/components/schemas/AccountFundsBelowThresholdNotification' responses: '200': content: application/json: + examples: + accountFundsBelowThreshold: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -106,8 +118,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the creation of an account holder. - description: This notification is sent when an account holder has been created. + summary: Account holder created + description: Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder). operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 @@ -117,12 +129,26 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses' + accountHolderCreated-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed' + accountHolderCreated-individuals: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals' schema: $ref: '#/components/schemas/AccountHolderCreateNotification' responses: '200': content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-individuals: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -130,9 +156,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon a payout to an account holder. - description: This notification is sent when a payout request to an account holder - has been processed and the payout has been scheduled. + summary: Paid out to account holder + description: Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) + to an account holder is processed and the payout is scheduled. operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 @@ -142,12 +168,22 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed' + accountHolderPayout-initiated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated' schema: $ref: '#/components/schemas/AccountHolderPayoutNotification' responses: '200': content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderPayout-initiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -155,9 +191,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of an account holder. - description: This notification is sent when the status of an account holder - has been changed. + summary: Account holder status changed + description: Adyen sends this webhook when [the status of an account holder + is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState). operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -167,12 +203,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange' schema: $ref: '#/components/schemas/AccountHolderStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -180,9 +222,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of a store tied to an account holder. - description: This notification is sent when the status of a store tied to an - account holder has been changed. + summary: Store status changed + description: Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) + associated with an account holder is changed. operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -192,12 +234,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange' schema: $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -205,9 +253,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon an upcoming deadline. - description: This notification is sent when an Account Holder has a deadline, - to fulfill the requirements of a specific event, coming up. + summary: Upcoming deadline + description: Adyen sends this notification when an account holder's deadline + to fulfill the requirements of a specific event is coming up. operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 @@ -217,12 +265,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpcomingDeadline: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline' schema: $ref: '#/components/schemas/AccountHolderUpcomingDeadlineNotification' responses: '200': content: application/json: + examples: + accountHolderUpcomingDeadline: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -230,8 +284,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the update of an account holder. - description: This notification is sent when an account holder has been updated. + summary: Account holder updated + description: Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder). operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 @@ -241,12 +295,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated' schema: $ref: '#/components/schemas/AccountHolderUpdateNotification' responses: '200': content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -254,9 +314,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the receipt of KYC Verification results. - description: This notification is sent when KYC Verification results are made - available. + summary: Verification results received + description: Adyen sends this webhook when verification results are available. operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 @@ -266,12 +325,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification' schema: $ref: '#/components/schemas/AccountHolderVerificationNotification' responses: '200': content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -279,8 +344,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the update of an account. - description: This notification is sent when an account has been updated. + summary: Account updated + description: Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount). operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 @@ -290,12 +355,18 @@ webhooks: requestBody: content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/post-ACCOUNT_UPDATED-accountUpdated' schema: $ref: '#/components/schemas/AccountUpdateNotification' responses: '200': content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -303,9 +374,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the setup of a beneficiary. - description: This notification is sent when a benefactor/beneficiary relationship - between accounts has been set up. + summary: Beneficiary defined + description: Adyen sends this notification when a [benefactor/beneficiary relationship + is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 @@ -315,12 +386,18 @@ webhooks: requestBody: content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup' schema: $ref: '#/components/schemas/BeneficiarySetupNotification' responses: '200': content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -328,10 +405,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the compensation of negative account balances. - description: This notification is sent when funds have been transferred from - your platform's liable account to an overdrawn account in order to compensate - for the overdraft. + summary: Negative account balances compensated + description: Adyen sends this notification when funds are transferred from your + platform's liable account to an overdrawn account to compensate for the overdraft. operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 @@ -341,12 +417,18 @@ webhooks: requestBody: content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance' schema: $ref: '#/components/schemas/CompensateNegativeBalanceNotification' responses: '200': content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -354,9 +436,8 @@ webhooks: post: tags: - Fund management - summary: Triggered when an automated direct debit is initiated. - description: This notification is sent when an automated direct debit is initiated - from the Adyen platform. + summary: Automated direct debit initiated + description: Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder). operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 @@ -366,12 +447,18 @@ webhooks: requestBody: content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated' schema: $ref: '#/components/schemas/DirectDebitInitiatedNotification' responses: '200': content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -379,12 +466,12 @@ webhooks: post: tags: - Other - summary: Triggered when a booking for a capture or refund fails. - description: This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + summary: Booking for a capture or refund failed + description: Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited - to your platform's liable account instead of the account specified in the - split data. + to or fromyour platform's liable account instead of the account specified + in the split data. operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 @@ -394,12 +481,18 @@ webhooks: requestBody: content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/post-PAYMENT_FAILURE-paymentFailure' schema: $ref: '#/components/schemas/PaymentFailureNotification' responses: '200': content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -407,9 +500,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer refund of funds between accounts. - description: This notification is sent when the refund of funds from an account - have been transferred to another account. + summary: Funds transfer between accounts refunded + description: Adyen sends this notification when [funds transferred between accounts + are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer). operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 @@ -419,12 +512,18 @@ webhooks: requestBody: content: application/json: + examples: + refundFundsTransfer: + $ref: '#/components/examples/post-REFUND_FUNDS_TRANSFER-refundFundsTransfer' schema: $ref: '#/components/schemas/RefundFundsTransferNotification' responses: '200': content: application/json: + examples: + refundFundsTransfer: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -432,8 +531,9 @@ webhooks: post: tags: - Other - summary: Triggered when a report is made available. - description: This notification is sent when a report has been made available. + summary: Report available + description: Adyen sends this notification when a report has been generated + and it is available for download. operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 @@ -443,12 +543,18 @@ webhooks: requestBody: content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/post-REPORT_AVAILABLE-reportAvailable' schema: $ref: '#/components/schemas/ReportAvailableNotification' responses: '200': content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -456,10 +562,10 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers - Not Paid Out' call. - description: This notification is sent when a 'Refund Transfers Not Paid Out' - call has been processed and the associated refunds have been scheduled. + summary: '''Refund Transfers Not Paid Out'' call processed and refunds scheduled' + description: Adyen sends this notification when a request to [refund transfers + that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) + is processed and the associated refunds are scheduled. operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 @@ -469,12 +575,18 @@ webhooks: requestBody: content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds' schema: $ref: '#/components/schemas/ScheduledRefundsNotification' responses: '200': content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -482,9 +594,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer of funds between accounts. - description: This notification is sent when the funds from an account have been - transferred to another account. + summary: Funds transferred between accounts + description: Adyen sends this notification when [funds are transferred between + accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 @@ -494,12 +606,18 @@ webhooks: requestBody: content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/post-TRANSFER_FUNDS-transferFunds' schema: $ref: '#/components/schemas/TransferFundsNotification' responses: '200': content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -1112,6 +1230,7 @@ components: - CloseAccount - CloseStores - DeleteBankAccounts + - DeleteLiableBankAccount - DeletePayoutMethods - DeleteShareholders - DeleteSignatories @@ -1488,9 +1607,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1806,7 +1926,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderCode - accountHolderStatus @@ -1943,7 +2063,7 @@ components: description: The code of the merchant account. type: string splits: - description: The split data for the debit request + description: The split data for the debit request. items: $ref: '#/components/schemas/Split' type: array @@ -1982,6 +2102,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2162,7 +2286,7 @@ components: payoutMethodCode: description: The unique ID of the card to which the check applies. type: string - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2249,11 +2373,11 @@ components: signatoryCode: description: The code of the signatory to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' bankAccounts: description: The results of the checks on the bank accounts. items: @@ -2845,13 +2969,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -3205,7 +3330,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' required: - accountHolderStatus - verification @@ -3395,6 +3520,667 @@ components: value: notificationResponse: '[accepted]' post-ACCOUNT_CLOSED-accountClosed: + summary: ACCOUNT_CLOSED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_CLOSED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + status: Closed + post-ACCOUNT_CREATED-accountCreated: + summary: ACCOUNT_CREATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + description: account description + metadata: + MetaKey: MetaValue + payoutSchedule: + nextScheduledPayout: '1970-01-02T01:00:00+01:00' + schedule: DAILY + status: Active + post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses: + summary: ACCOUNT_HOLDER_CREATED for businesses example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-02T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + registrationNumber: Reg#1234 + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@merchant.com + fullPhoneNumber: '+3112345678' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + shareholderReference: SHREF#0000001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + payoutInstrumentTokens: + - merchantAccount: MA000001 + payoutInstrumentTokenCode: PIT000001 + payoutInstrumentTokenType: CardToken + recurringDetailReference: RDR0000001 + shopperReference: SR000001 + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + description: Description for account holder + legalEntity: Business + primaryCurrency: EUR + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed: + summary: ACCOUNT_HOLDER_CREATED failed example + value: + error: + errorCode: '000' + message: test error message + eventDate: '1970-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + mimeType: genericNotification + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + accountState: + allowPayout: false + allowProcessing: false + disableReason: Reason for disabled status + disabled: true + stateDeadline: '1970-01-01T01:00:00+01:00' + stateLimit: + amount: 100 + currency: EUR + stateType: Processing + tierNumber: 2 + amount: + currency: EUR + value: 10 + totalAmountBeforeLimit: + currency: EUR + value: 100 + transactionDate: '1970-01-01T01:00:00+01:00' + transactionFailed: false + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals: + summary: ACCOUNT_HOLDER_CREATED for individuals example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + payoutInstrumentTokens: + - merchantAccount: MA000001 + payoutInstrumentTokenCode: PIT000001 + payoutInstrumentTokenType: CardToken + recurringDetailReference: RDR0000001 + shopperReference: SR000001 + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + description: Description for account holder + legalEntity: Individual + primaryCurrency: EUR + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed: + summary: ACCOUNT_HOLDER_PAYOUT failed example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#00000001 + status: + message: + code: '10_069' + text: 'Payout has been failed for account seller1. Details: Payout has + been rejected by the beneficiary bank.' + statusCode: Failed + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated: + summary: ACCOUNT_HOLDER_PAYOUT initiated example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amount: + currency: EUR + value: 100 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#00000001 + status: + message: + code: '100' + text: test message + statusCode: Initiated + post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange: + summary: ACCOUNT_HOLDER_STATUS_CHANGE example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-02T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_STATUS_CHANGE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + oldStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '1970-01-01T01:00:00+01:00' + reason: Reason of event + newStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + reason: status change reason + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange: + summary: ACCOUNT_HOLDER_STORE_STATUS_CHANGE example + value: + eventDate: '2019-12-16T10:38:15+01:00' + eventType: ACCOUNT_HOLDER_STORE_STATUS_CHANGE + executingUserKey: Store Status Update + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + store: x00x00x00-xx00-0xx0-x000-00xx00xx000000 + storeReference: Ref#000001 + oldStatus: Pending + newStatus: Active + reason: Store was successfully set up + post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline: + summary: ACCOUNT_HOLDER_UPCOMING_DEADLINE example + value: + eventDate: '2019-09-25T09:52:28+02:00' + eventType: ACCOUNT_HOLDER_UPCOMING_DEADLINE + live: false + pspReference: '9315693979482563' + content: + accountHolderCode: testD47 + event: InactivateAccount + executionDate: '2019-10-11' + reason: Processed more than GBP 5000.00 or equivalent, deadline triggered + post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated: summary: ACCOUNT CLOSED example value: error: @@ -3416,3 +4202,349 @@ components: pspReference: TSTPSPR0001 resultCode: Success status: Closed + post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification: + summary: ACCOUNT_HOLDER_VERIFICATION example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_VERIFICATION + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH0000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + kycCheckStatusData: + type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH00000001 + post-ACCOUNT_UPDATED-accountUpdated: + summary: ACCOUNT_UPDATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + description: account description + metadata: + MetaKey: MetaValue + payoutSchedule: + nextScheduledPayout: '1970-01-02T01:00:00+01:00' + schedule: DAILY + post-BENEFICIARY_SETUP-beneficiarySetup: + summary: BENEFICIARY_SETUP example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: BENEFICIARY_SETUP + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + destinationAccountCode: AC00000001D + destinationAccountHolderCode: AH00000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000000001 + sourceAccountCode: AC0000001S + sourceAccountHolderCode: AH000000001S + transferDate: '1970-01-01T01:00:00+01:00' + post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance: + summary: COMPENSATE_NEGATIVE_BALANCE example + value: + eventType: COMPENSATE_NEGATIVE_BALANCE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + records: + - accountCode: AC000001 + amount: + currency: EUR + value: 10 + transferDate: '1970-01-01T01:00:00+01:00' + post-DIRECT_DEBIT_INITIATED-directDebitInitiated: + summary: DIRECT_DEBIT_INITIATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-PAYMENT_FAILURE-paymentFailure: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-REFUND_FUNDS_TRANSFER-refundFundsTransfer: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-REPORT_AVAILABLE-reportAvailable: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-SCHEDULED_REFUNDS-scheduledRefunds: + summary: SCHEDULED_REFUNDS example + value: + eventType: SCHEDULED_REFUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountHolderCode: AH000001 + lastPayout: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + refundResults: + - originalTransaction: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + pspReference: TSTPSPR00000001 + response: response + post-TRANSFER_FUNDS-transferFunds: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 diff --git a/yaml/MarketPayNotificationService-v6.yaml b/yaml/MarketPayNotificationService-v6.yaml index 9fe5fcb..bf00218 100644 --- a/yaml/MarketPayNotificationService-v6.yaml +++ b/yaml/MarketPayNotificationService-v6.yaml @@ -9,6 +9,7 @@ info: For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).' + x-timestamp: '2022-05-06T09:18:38Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -26,8 +27,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the closure of an account. - description: This notification is sent when an account has been closed. + summary: Account closed + description: Adyen sends this webhook when [an account is closed](https://docs.adyen.com/api-explorer/#/Account/latest/post/closeAccount). operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 @@ -56,8 +57,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the creation of an account. - description: This notification is sent when an account has been created. + summary: Account created + description: Adyen sends this webhook when [an account is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccount). operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 @@ -67,12 +68,18 @@ webhooks: requestBody: content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/post-ACCOUNT_CREATED-accountCreated' schema: $ref: '#/components/schemas/AccountCreateNotification' responses: '200': content: application/json: + examples: + accountCreated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -80,10 +87,9 @@ webhooks: post: tags: - Fund management - summary: Triggered when a liable account current funds are below configured - threshold. - description: This notification is sent when a liable account's current funds - are below configured threshold from the Adyen platform. + summary: Liable account's funds are below configured threshold + description: Adyen sends this notification when the current funds of your liable + account are below the configured threshold. operationId: post-ACCOUNT_FUNDS_BELOW_THRESHOLD x-groupName: Fund management x-sortIndex: 7 @@ -93,12 +99,18 @@ webhooks: requestBody: content: application/json: + examples: + accountFundsBelowThreshold: + $ref: '#/components/examples/post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold' schema: $ref: '#/components/schemas/AccountFundsBelowThresholdNotification' responses: '200': content: application/json: + examples: + accountFundsBelowThreshold: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -106,8 +118,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the creation of an account holder. - description: This notification is sent when an account holder has been created. + summary: Account holder created + description: Adyen sends this webhook when [an account holder is created](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder). operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 @@ -117,12 +129,26 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses' + accountHolderCreated-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed' + accountHolderCreated-individuals: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals' schema: $ref: '#/components/schemas/AccountHolderCreateNotification' responses: '200': content: application/json: + examples: + accountHolderCreated-businesses: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderCreated-individuals: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -130,9 +156,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon a payout to an account holder. - description: This notification is sent when a payout request to an account holder - has been processed and the payout has been scheduled. + summary: Paid out to account holder + description: Adyen sends this notification when a [payout request](https://docs.adyen.com/api-explorer/#/Fund/latest/post/payoutAccountHolder) + to an account holder is processed and the payout is scheduled. operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 @@ -142,12 +168,22 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed' + accountHolderPayout-initiated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated' schema: $ref: '#/components/schemas/AccountHolderPayoutNotification' responses: '200': content: application/json: + examples: + accountHolderPayout-failed: + $ref: '#/components/examples/WebhookAck' + accountHolderPayout-initiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -155,9 +191,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of an account holder. - description: This notification is sent when the status of an account holder - has been changed. + summary: Account holder status changed + description: Adyen sends this webhook when [the status of an account holder + is changed](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolderState). operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -167,12 +203,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange' schema: $ref: '#/components/schemas/AccountHolderStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -180,9 +222,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the status change of a store tied to an account holder. - description: This notification is sent when the status of a store tied to an - account holder has been changed. + summary: Store status changed + description: Adyen sends this webhook when [the status of a store](https://docs.adyen.com/api-explorer/#/Account/latest/post/createAccountHolder__reqParam_accountHolderDetails-storeDetails-status) + associated with an account holder is changed. operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 @@ -192,12 +234,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange' schema: $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotification' responses: '200': content: application/json: + examples: + accountHolderStoreStatusChange: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -205,9 +253,9 @@ webhooks: post: tags: - Account holders - summary: Triggered upon an upcoming deadline. - description: This notification is sent when an Account Holder has a deadline, - to fulfill the requirements of a specific event, coming up. + summary: Upcoming deadline + description: Adyen sends this notification when an account holder's deadline + to fulfill the requirements of a specific event is coming up. operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 @@ -217,12 +265,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpcomingDeadline: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline' schema: $ref: '#/components/schemas/AccountHolderUpcomingDeadlineNotification' responses: '200': content: application/json: + examples: + accountHolderUpcomingDeadline: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -230,8 +284,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the update of an account holder. - description: This notification is sent when an account holder has been updated. + summary: Account holder updated + description: Adyen sends this webhook when [an account holder is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccountHolder). operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 @@ -241,12 +295,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated' schema: $ref: '#/components/schemas/AccountHolderUpdateNotification' responses: '200': content: application/json: + examples: + accountHolderUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -254,9 +314,8 @@ webhooks: post: tags: - Account holders - summary: Triggered upon the receipt of KYC Verification results. - description: This notification is sent when KYC Verification results are made - available. + summary: Verification results received + description: Adyen sends this webhook when verification results are available. operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 @@ -266,12 +325,18 @@ webhooks: requestBody: content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification' schema: $ref: '#/components/schemas/AccountHolderVerificationNotification' responses: '200': content: application/json: + examples: + accountHolderVerification: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -279,8 +344,8 @@ webhooks: post: tags: - Accounts - summary: Triggered upon the update of an account. - description: This notification is sent when an account has been updated. + summary: Account updated + description: Adyen sends this webhook when [an account is updated](https://docs.adyen.com/api-explorer/#/Account/latest/post/updateAccount). operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 @@ -290,12 +355,18 @@ webhooks: requestBody: content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/post-ACCOUNT_UPDATED-accountUpdated' schema: $ref: '#/components/schemas/AccountUpdateNotification' responses: '200': content: application/json: + examples: + accountUpdated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -303,9 +374,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the setup of a beneficiary. - description: This notification is sent when a benefactor/beneficiary relationship - between accounts has been set up. + summary: Beneficiary defined + description: Adyen sends this notification when a [benefactor/beneficiary relationship + is created](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 @@ -315,12 +386,18 @@ webhooks: requestBody: content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/post-BENEFICIARY_SETUP-beneficiarySetup' schema: $ref: '#/components/schemas/BeneficiarySetupNotification' responses: '200': content: application/json: + examples: + beneficiarySetup: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -328,10 +405,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the compensation of negative account balances. - description: This notification is sent when funds have been transferred from - your platform's liable account to an overdrawn account in order to compensate - for the overdraft. + summary: Negative account balances compensated + description: Adyen sends this notification when funds are transferred from your + platform's liable account to an overdrawn account to compensate for the overdraft. operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 @@ -341,12 +417,18 @@ webhooks: requestBody: content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance' schema: $ref: '#/components/schemas/CompensateNegativeBalanceNotification' responses: '200': content: application/json: + examples: + compensateNegativeBalance: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -354,9 +436,8 @@ webhooks: post: tags: - Fund management - summary: Triggered when an automated direct debit is initiated. - description: This notification is sent when an automated direct debit is initiated - from the Adyen platform. + summary: Automated direct debit initiated + description: Adyen sends this notification when a [direct debit is initiated](https://docs.adyen.com/api-explorer/#/Fund/latest/post/debitAccountHolder). operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 @@ -366,12 +447,18 @@ webhooks: requestBody: content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/post-DIRECT_DEBIT_INITIATED-directDebitInitiated' schema: $ref: '#/components/schemas/DirectDebitInitiatedNotification' responses: '200': content: application/json: + examples: + directDebitInitiated: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -379,12 +466,12 @@ webhooks: post: tags: - Other - summary: Triggered when a booking for a capture or refund fails. - description: This notification is sent when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) + summary: Booking for a capture or refund failed + description: Adyen sends this notification when a [split payment](https://docs.adyen.com/platforms/processing-payments#providing-split-information) booking for a capture or refund fails. When a booking fails due to an invalid account status or an unknown `accountCode`, the funds are credited or debited - to your platform's liable account instead of the account specified in the - split data. + to or fromyour platform's liable account instead of the account specified + in the split data. operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 @@ -394,12 +481,18 @@ webhooks: requestBody: content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/post-PAYMENT_FAILURE-paymentFailure' schema: $ref: '#/components/schemas/PaymentFailureNotification' responses: '200': content: application/json: + examples: + paymentFailure: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -407,9 +500,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer refund of funds between accounts. - description: This notification is sent when the refund of funds from an account - have been transferred to another account. + summary: Funds transfer between accounts refunded + description: Adyen sends this notification when [funds transferred between accounts + are refunded](https://docs.adyen.com/api-explorer/#/Fund/v6/latest/refundFundsTransfer). operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 @@ -419,12 +512,18 @@ webhooks: requestBody: content: application/json: + examples: + refundFundsTransfer: + $ref: '#/components/examples/post-REFUND_FUNDS_TRANSFER-refundFundsTransfer' schema: $ref: '#/components/schemas/RefundFundsTransferNotification' responses: '200': content: application/json: + examples: + refundFundsTransfer: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -432,8 +531,9 @@ webhooks: post: tags: - Other - summary: Triggered when a report is made available. - description: This notification is sent when a report has been made available. + summary: Report available + description: Adyen sends this notification when a report has been generated + and it is available for download. operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 @@ -443,12 +543,18 @@ webhooks: requestBody: content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/post-REPORT_AVAILABLE-reportAvailable' schema: $ref: '#/components/schemas/ReportAvailableNotification' responses: '200': content: application/json: + examples: + reportAvailable: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -456,10 +562,10 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers - Not Paid Out' call. - description: This notification is sent when a 'Refund Transfers Not Paid Out' - call has been processed and the associated refunds have been scheduled. + summary: '''Refund Transfers Not Paid Out'' call processed and refunds scheduled' + description: Adyen sends this notification when a request to [refund transfers + that are not yet paid out](https://docs.adyen.com/api-explorer/#/Fund/latest/refundNotPaidOutTransfers) + is processed and the associated refunds are scheduled. operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 @@ -469,12 +575,18 @@ webhooks: requestBody: content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/post-SCHEDULED_REFUNDS-scheduledRefunds' schema: $ref: '#/components/schemas/ScheduledRefundsNotification' responses: '200': content: application/json: + examples: + scheduledRefunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -482,9 +594,9 @@ webhooks: post: tags: - Fund management - summary: Triggered upon the transfer of funds between accounts. - description: This notification is sent when the funds from an account have been - transferred to another account. + summary: Funds transferred between accounts + description: Adyen sends this notification when [funds are transferred between + accounts](https://docs.adyen.com/api-explorer/#/Fund/latest/post/transferFunds). operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 @@ -494,12 +606,18 @@ webhooks: requestBody: content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/post-TRANSFER_FUNDS-transferFunds' schema: $ref: '#/components/schemas/TransferFundsNotification' responses: '200': content: application/json: + examples: + transferFunds: + $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. @@ -879,6 +997,10 @@ components: x-addedInVersion: '6' description: The account number of the bank from which the payout was initiated. type: string + payoutBalanceAccountId: + x-addedInVersion: '6' + description: The balance account id to which payment was made + type: string payoutBankName: x-addedInVersion: '6' description: The name of the bank the payout from which the payout was initiated. @@ -1137,6 +1259,7 @@ components: - CloseAccount - CloseStores - DeleteBankAccounts + - DeleteLiableBankAccount - DeletePayoutMethods - DeleteShareholders - DeleteSignatories @@ -1523,9 +1646,10 @@ components: section for details on field requirements.' type: string ownerDateOfBirth: + deprecated: true description: 'The date of birth of the bank account owner. - ' + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).' type: string ownerHouseNumberOrName: description: 'The house name or number of the residence of the bank account @@ -1855,7 +1979,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' verificationProfile: x-addedInVersion: '6' description: The identifier of the profile that applies to this entity. @@ -1996,7 +2120,7 @@ components: description: The code of the merchant account. type: string splits: - description: The split data for the debit request + description: The split data for the debit request. items: $ref: '#/components/schemas/Split' type: array @@ -2035,6 +2159,10 @@ components: - accountStatus - accountType - address + - balanceAccount + - balanceAccountActive + - balanceAccountCode + - balanceAccountId - bankAccount - bankAccountCode - bankAccountName @@ -2195,7 +2323,7 @@ components: personalData: description: Personal information of the individual. $ref: '#/components/schemas/ViasPersonalData' - KYCCheckResult2: + KYCCheckResult: properties: checks: description: A list of the checks and their statuses. @@ -2339,11 +2467,11 @@ components: description: The code of the Ultimate Parent Company to which the check applies. type: string - KYCVerificationResult2: + KYCVerificationResult: properties: accountHolder: description: The results of the checks on the account holder. - $ref: '#/components/schemas/KYCCheckResult2' + $ref: '#/components/schemas/KYCCheckResult' legalArrangements: x-addedInVersion: '6' description: The results of the checks on the legal arrangements. @@ -3110,13 +3238,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -3472,7 +3601,7 @@ components: verification: x-addedInVersion: '2' description: The details of KYC Verification of the account holder. - $ref: '#/components/schemas/KYCVerificationResult2' + $ref: '#/components/schemas/KYCVerificationResult' verificationProfile: x-addedInVersion: '6' description: The identifier of the profile that applies to this entity. @@ -3666,6 +3795,659 @@ components: value: notificationResponse: '[accepted]' post-ACCOUNT_CLOSED-accountClosed: + summary: ACCOUNT_CLOSED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_CLOSED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + status: Closed + post-ACCOUNT_CREATED-accountCreated: + summary: ACCOUNT_CREATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + description: account description + metadata: + MetaKey: MetaValue + payoutSchedule: + nextScheduledPayout: '1970-01-02T01:00:00+01:00' + schedule: DAILY + status: Active + post-ACCOUNT_FUNDS_BELOW_THRESHOLD-accountFundsBelowThreshold: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-businesses: + summary: ACCOUNT_HOLDER_CREATED for businesses example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-02T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + businessDetails: + doingBusinessAs: Business name + legalBusinessName: Legal Business Co + registrationNumber: Reg#1234 + shareholders: + - address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + email: contact@merchant.com + fullPhoneNumber: '+3112345678' + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + shareholderCode: SH00001 + shareholderReference: SHREF#0000001 + webAddress: https://www.adyen.com/ + taxId: TaxID#1234 + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + payoutInstrumentTokens: + - merchantAccount: MA000001 + payoutInstrumentTokenCode: PIT000001 + payoutInstrumentTokenType: CardToken + recurringDetailReference: RDR0000001 + shopperReference: SR000001 + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + description: Description for account holder + legalEntity: Business + primaryCurrency: EUR + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholders: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH000001 + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-failed: + summary: ACCOUNT_HOLDER_CREATED failed example + value: + error: + errorCode: '000' + message: test error message + eventDate: '1970-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + mimeType: genericNotification + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + accountState: + allowPayout: false + allowProcessing: false + disableReason: Reason for disabled status + disabled: true + stateDeadline: '1970-01-01T01:00:00+01:00' + stateLimit: + amount: 100 + currency: EUR + stateType: Processing + tierNumber: 2 + amount: + currency: EUR + value: 10 + totalAmountBeforeLimit: + currency: EUR + value: 100 + transactionDate: '1970-01-01T01:00:00+01:00' + transactionFailed: false + post-ACCOUNT_HOLDER_CREATED-accountHolderCreated-individuals: + summary: ACCOUNT_HOLDER_CREATED for individuals example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_CREATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + accountHolderCode: AHC00000001 + accountHolderDetails: + address: + city: Amsterdam + country: NL + houseNumberOrName: 96/A + postalCode: 1000AA + stateOrProvince: NH + street: Street + bankAccountDetails: + - accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + email: contact@adyen.com + fullPhoneNumber: '+31858888138' + individualDetails: + name: + firstName: Firstname + gender: UNKNOWN + infix: infix + lastName: Lastname + personalData: + dateOfBirth: '1981-02-27' + documentData: + - expirationDate: '2030-12-31' + issuerCountry: NL + issuerState: NH + number: ID#123456 + type: ID + nationality: NL + merchantCategoryCode: '1212' + metadata: + MetaKey: MetaValue + payoutInstrumentTokens: + - merchantAccount: MA000001 + payoutInstrumentTokenCode: PIT000001 + payoutInstrumentTokenType: CardToken + recurringDetailReference: RDR0000001 + shopperReference: SR000001 + phoneNumber: + phoneCountryCode: NL + phoneNumber: '858888138' + phoneType: Landline + webAddress: https://adyen.com + accountHolderStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + description: Description for account holder + legalEntity: Individual + primaryCurrency: EUR + verification: + accountHolder: + checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccounts: + - checks: + - type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-failed: + summary: ACCOUNT_HOLDER_PAYOUT failed example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#00000001 + status: + message: + code: '10_069' + text: 'Payout has been failed for account seller1. Details: Payout has + been rejected by the beneficiary bank.' + statusCode: Failed + post-ACCOUNT_HOLDER_PAYOUT-accountHolderPayout-initiated: + summary: ACCOUNT_HOLDER_PAYOUT initiated example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_PAYOUT + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC00000001 + accountHolderCode: AH00000001 + amounts: + - currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountReference: Ref#000001 + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + description: description of payout + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#00000001 + status: + message: + code: '100' + text: test message + statusCode: Initiated + post-ACCOUNT_HOLDER_STATUS_CHANGE-accountHolderStatusChange: + summary: ACCOUNT_HOLDER_STATUS_CHANGE example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-02T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_STATUS_CHANGE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + oldStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: [] + newStatus: + status: Active + statusReason: Reason of status + processingState: + disabled: true + disableReason: Reason for disabled status + processedFrom: + currency: EUR + value: 10 + processedTo: + currency: EUR + value: 100 + tierNumber: 2 + payoutState: + allowPayout: false + payoutLimit: + currency: EUR + value: 1000 + disabled: true + disableReason: Reason for disabled status + tierNumber: 2 + notAllowedReason: Reason of not allowed + events: + - AccountEvent: + event: InactivateAccount + executionDate: '2019-01-01T01:00:00+01:00' + reason: Reason of event + reason: status change reason + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE-accountHolderStoreStatusChange: + summary: ACCOUNT_HOLDER_STORE_STATUS_CHANGE example + value: + eventDate: '2019-12-16T10:38:15+01:00' + eventType: ACCOUNT_HOLDER_STORE_STATUS_CHANGE + executingUserKey: Store Status Update + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH000001 + store: x00x00x00-xx00-0xx0-x000-00xx00xx000000 + storeReference: Ref#000001 + oldStatus: Pending + newStatus: Active + reason: Store was successfully set up + post-ACCOUNT_HOLDER_UPCOMING_DEADLINE-accountHolderUpcomingDeadline: + summary: ACCOUNT_HOLDER_UPCOMING_DEADLINE example + value: + eventDate: '2019-09-25T09:52:28+02:00' + eventType: ACCOUNT_HOLDER_UPCOMING_DEADLINE + live: false + pspReference: '9315693979482563' + content: + accountHolderCode: testD47 + event: InactivateAccount + executionDate: '2019-10-11' + reason: Processed more than GBP 5000.00 or equivalent, deadline triggered + post-ACCOUNT_HOLDER_UPDATED-accountHolderUpdated: summary: ACCOUNT CLOSED example value: error: @@ -3687,3 +4469,349 @@ components: pspReference: TSTPSPR0001 resultCode: Success status: Closed + post-ACCOUNT_HOLDER_VERIFICATION-accountHolderVerification: + summary: ACCOUNT_HOLDER_VERIFICATION example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_HOLDER_VERIFICATION + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountHolderCode: AH0000001 + payoutMethodCode: 00000000-0000-0000-0000-000000000000 + kycCheckStatusData: + type: IDENTITY_VERIFICATION + status: PENDING + summary: + kycCheckCode: 100 + kycCheckDescription: KYC check summary description + requiredFields: + - field.missing + shareholderCode: SH00000001 + post-ACCOUNT_UPDATED-accountUpdated: + summary: ACCOUNT_UPDATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: ACCOUNT_UPDATED + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + pspReference: TSTPSPR0001 + resultCode: Success + accountCode: AC0000000001 + description: account description + metadata: + MetaKey: MetaValue + payoutSchedule: + nextScheduledPayout: '1970-01-02T01:00:00+01:00' + schedule: DAILY + post-BENEFICIARY_SETUP-beneficiarySetup: + summary: BENEFICIARY_SETUP example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: BENEFICIARY_SETUP + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + destinationAccountCode: AC00000001D + destinationAccountHolderCode: AH00000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000000001 + sourceAccountCode: AC0000001S + sourceAccountHolderCode: AH000000001S + transferDate: '1970-01-01T01:00:00+01:00' + post-COMPENSATE_NEGATIVE_BALANCE-compensateNegativeBalance: + summary: COMPENSATE_NEGATIVE_BALANCE example + value: + eventType: COMPENSATE_NEGATIVE_BALANCE + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + records: + - accountCode: AC000001 + amount: + currency: EUR + value: 10 + transferDate: '1970-01-01T01:00:00+01:00' + post-DIRECT_DEBIT_INITIATED-directDebitInitiated: + summary: DIRECT_DEBIT_INITIATED example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-PAYMENT_FAILURE-paymentFailure: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-REFUND_FUNDS_TRANSFER-refundFundsTransfer: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-REPORT_AVAILABLE-reportAvailable: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 + post-SCHEDULED_REFUNDS-scheduledRefunds: + summary: SCHEDULED_REFUNDS example + value: + eventType: SCHEDULED_REFUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + accountCode: AC000001 + accountHolderCode: AH000001 + lastPayout: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + refundResults: + - originalTransaction: + amount: + currency: EUR + value: 10 + bankAccountDetail: + accountNumber: '00000000' + accountType: checking + bankAccountName: Account name + bankAccountUUID: 00000000-0000-0000-0000-000000000000 + bankBicSwift: BSWFT + bankCity: Amsterdam + bankCode: '00000000' + bankName: Bank Name Co + branchCode: '00000000' + checkCode: '1234' + countryCode: NL + currencyCode: EUR + iban: NL00NONE1234123412 + ownerCity: Amsterdam + ownerCountryCode: NL + ownerDateOfBirth: '1981-02-27' + ownerHouseNumberOrName: 32/B + ownerName: Owner Name + ownerNationality: NL + ownerPostalCode: 1000AA + ownerState: NH + ownerStreet: Owner Street + primaryAccount: false + taxId: OT#12345 + urlForVerification: http://adyen.com + captureMerchantReference: MRef0000001C + capturePspReference: TSTPSPR00000001C + creationDate: '1970-01-01T01:00:00+01:00' + description: transaction description + destinationAccountCode: AC0000001D + disputePspReference: TSTPSPR00000000D + disputeReasonCode: DRC001 + merchantReference: MRef#00000001 + paymentPspReference: TSTPSPR0000000PO + payoutPspReference: TSTPSPR000000PI + pspReference: TSTPSPR000000001 + sourceAccountCode: AC00000001S + transactionStatus: Debited + transferCode: TC0001 + pspReference: TSTPSPR00000001 + response: response + post-TRANSFER_FUNDS-transferFunds: + summary: TRANSFER_FUNDS example + value: + error: + errorCode: '000' + message: test error message + eventDate: '2019-01-01T01:00:00+01:00' + eventType: TRANSFER_FUNDS + executingUserKey: executing-user-key + live: false + pspReference: TSTPSPR0001 + content: + amount: + currency: EUR + value: 10 + destinationAccountCode: AC0000001D + invalidFields: + - errorCode: 1 + errorDescription: Field is missing + fieldType: + field: AccountHolderDetails.BusinessDetails.Shareholders.unknown + fieldName: unknown + shareholderCode: SH00001 + merchantReference: MRef#000001 + sourceAccountCode: AC0000001S + status: + message: + code: '100' + text: test message + statusCode: Success + transferCode: TC0001 diff --git a/yaml/NotificationConfigurationService-v1.yaml b/yaml/NotificationConfigurationService-v1.yaml index 58ebffd..3d01861 100644 --- a/yaml/NotificationConfigurationService-v1.yaml +++ b/yaml/NotificationConfigurationService-v1.yaml @@ -5,51 +5,23 @@ info: version: '1' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -618,9 +612,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -688,9 +684,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -735,9 +733,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -829,6 +829,105 @@ components: notifyURL: https://www.adyen.com/notification-handler sendActionHeader: 'true' sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + submittedAsync: 'false' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8516480418110057' + submittedAsync: 'false' + configurationDetails: + active: 'true' + apiVersion: 4 + description: test123 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: SOAP + notificationId: 50061 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'true' + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480434183690' + submittedAsync: 'false' + configurations: + - NotificationConfigurationDetails: + active: 'true' + description: Unique description 12223 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + - NotificationConfigurationDetails: + active: 'true' + description: just testing things + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/NotificationConfigurationService-v2.yaml b/yaml/NotificationConfigurationService-v2.yaml index a7f3b06..b0be210 100644 --- a/yaml/NotificationConfigurationService-v2.yaml +++ b/yaml/NotificationConfigurationService-v2.yaml @@ -5,51 +5,23 @@ info: version: '2' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -618,9 +612,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -688,9 +684,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -735,9 +733,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -829,6 +829,105 @@ components: notifyURL: https://www.adyen.com/notification-handler sendActionHeader: 'true' sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + submittedAsync: 'false' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8516480418110057' + submittedAsync: 'false' + configurationDetails: + active: 'true' + apiVersion: 4 + description: test123 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: SOAP + notificationId: 50061 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'true' + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480434183690' + submittedAsync: 'false' + configurations: + - NotificationConfigurationDetails: + active: 'true' + description: Unique description 12223 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + - NotificationConfigurationDetails: + active: 'true' + description: just testing things + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/NotificationConfigurationService-v3.yaml b/yaml/NotificationConfigurationService-v3.yaml index a7887bd..0bff673 100644 --- a/yaml/NotificationConfigurationService-v3.yaml +++ b/yaml/NotificationConfigurationService-v3.yaml @@ -5,51 +5,23 @@ info: version: '3' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -618,9 +612,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -688,9 +684,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -735,9 +733,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -829,6 +829,105 @@ components: notifyURL: https://www.adyen.com/notification-handler sendActionHeader: 'true' sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + submittedAsync: 'false' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8516480418110057' + submittedAsync: 'false' + configurationDetails: + active: 'true' + apiVersion: 4 + description: test123 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: SOAP + notificationId: 50061 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'true' + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480434183690' + submittedAsync: 'false' + configurations: + - NotificationConfigurationDetails: + active: 'true' + description: Unique description 12223 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + - NotificationConfigurationDetails: + active: 'true' + description: just testing things + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/NotificationConfigurationService-v4.yaml b/yaml/NotificationConfigurationService-v4.yaml index 249f9a0..669fa20 100644 --- a/yaml/NotificationConfigurationService-v4.yaml +++ b/yaml/NotificationConfigurationService-v4.yaml @@ -5,51 +5,23 @@ info: version: '4' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -618,9 +612,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -688,9 +684,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -735,9 +733,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -829,6 +829,105 @@ components: notifyURL: https://www.adyen.com/notification-handler sendActionHeader: 'true' sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + submittedAsync: 'false' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8516480418110057' + submittedAsync: 'false' + configurationDetails: + active: 'true' + apiVersion: 4 + description: test123 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: SOAP + notificationId: 50061 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'true' + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480434183690' + submittedAsync: 'false' + configurations: + - NotificationConfigurationDetails: + active: 'true' + description: Unique description 12223 + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + - NotificationConfigurationDetails: + active: 'true' + description: just testing things + eventConfigs: + - NotificationEventConfiguration: + eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + messageFormat: JSON + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sendActionHeader: 'false' + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/NotificationConfigurationService-v5.yaml b/yaml/NotificationConfigurationService-v5.yaml index 106137d..c8688f8 100644 --- a/yaml/NotificationConfigurationService-v5.yaml +++ b/yaml/NotificationConfigurationService-v5.yaml @@ -5,51 +5,23 @@ info: version: '5' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -790,9 +784,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -860,9 +856,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -907,9 +905,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -990,6 +990,91 @@ components: notificationId: 28468 notifyURL: https://www.adyen.com/notification-handler sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8616480378704419' + configurationDetails: + active: true + apiVersion: 5 + description: test + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 50054 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480437185726' + configurations: + - active: true + description: Unique description 12223 + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + - active: true + description: just testing things + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/NotificationConfigurationService-v6.yaml b/yaml/NotificationConfigurationService-v6.yaml index b33f205..ace7d6f 100644 --- a/yaml/NotificationConfigurationService-v6.yaml +++ b/yaml/NotificationConfigurationService-v6.yaml @@ -5,51 +5,23 @@ info: version: '6' x-publicVersion: true title: 'Adyen for Platforms: Notification Configuration API' - description: 'The Notification Configuration API provides endpoints for setting - up and testing notifications that inform you of events on your platform, for example - when a KYC check or a payout has been completed. - - - For more information, refer to our [documentation](https://docs.adyen.com/platforms/notifications). - - ## Authentication - - To connect to the Notification Configuration API, you must use basic authentication - credentials of your web service user. If you don''t have one, contact our [Adyen - Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials - to authenticate your request, for example: - - - ``` - - curl - - -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ - - -H "Content-Type: application/json" \ - - ... - - ``` - - Note that when going live, you need to generate new web service user credentials - to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). - - - ## Versioning - - The Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning) - using a version suffix in the endpoint URL. This suffix has the following format: - "vXX", where XX is the version number. - - - For example: - - ``` - - https://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration - - ```' + description: "The Notification Configuration API provides endpoints for setting\ + \ up and testing notifications that inform you of events on your platform, for\ + \ example when a verification check or a payout has been completed.\n\nFor more\ + \ information, refer to our [documentation](https://docs.adyen.com/platforms/notifications).\n\ + ## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\ + \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\ + \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\ + \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration\n\ + ```" + x-timestamp: '2022-05-03T09:24:14Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -64,7 +36,7 @@ paths: post: tags: - General - summary: Subscribe to notifications. + summary: Subscribe to notifications description: Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. @@ -131,10 +103,10 @@ paths: post: tags: - General - summary: Delete an existing notification subscription configuration. - description: This endpoint is used to delete an existing notification subscription - configuration. After the subscription is deleted, no further event notifications - will be sent to the URL that was in the subscription. + summary: Delete a notification subscription configuration + description: Deletes an existing notification subscription configuration. After + the subscription is deleted, no further event notifications will be sent to + the URL defined in the subscription. operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 @@ -144,12 +116,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic' schema: $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200' schema: $ref: '#/components/schemas/GenericResponse' description: OK - the request has succeeded. @@ -187,9 +165,8 @@ paths: post: tags: - General - summary: Retrieve an existing notification subscription configuration. - description: This endpoint is used to retrieve the details of the configuration - of a notification subscription. + summary: Get a notification subscription configuration + description: Returns the details of the configuration of a notification subscription. operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 @@ -199,12 +176,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic' schema: $ref: '#/components/schemas/GetNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -242,10 +225,9 @@ paths: post: tags: - General - summary: Retrieve a list of existing notification subscription configurations. - description: This endpoint is used to retrieve the details of the configurations - of all of the notification subscriptions in the marketplace of the executing - user. + summary: Get a list of notification subscription configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 @@ -255,12 +237,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic' schema: $ref: '#/components/schemas/EmptyRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200' schema: $ref: '#/components/schemas/GetNotificationConfigurationListResponse' description: OK - the request has succeeded. @@ -298,10 +286,10 @@ paths: post: tags: - General - summary: Test an existing notification configuration. - description: This endpoint is used to test an existing notification subscription - configuration. For each event type specified, a test notification will be - generated and sent to the URL configured in the subscription specified. + summary: Test a notification configuration + description: Tests an existing notification subscription configuration. For + each event type specified, a test notification will be generated and sent + to the URL configured in the subscription specified. operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 @@ -311,12 +299,18 @@ paths: requestBody: content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic' schema: $ref: '#/components/schemas/TestNotificationConfigurationRequest' responses: '200': content: application/json: + examples: + basic: + $ref: '#/components/examples/post-testNotificationConfiguration-basic-200' schema: $ref: '#/components/schemas/TestNotificationConfigurationResponse' description: OK - the request has succeeded. @@ -354,10 +348,10 @@ paths: post: tags: - General - summary: Update an existing notification subscription configuration. - description: This endpoint is used to update an existing notification subscription - configuration. If updating the event types, all event types desired must be - provided, otherwise the previous event type configuration will be overwritten. + summary: Update a notification subscription configuration + description: Updates an existing notification subscription configuration. If + you are updating the event types, you must provide all event types, otherwise + the previous event type configuration will be overwritten. operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 @@ -790,9 +784,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -860,9 +856,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -907,9 +905,11 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - PENDING_CREDIT - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS + - SCORE_SIGNAL_TRIGGERED - TRANSFER_FUNDS - TRANSFER_NOT_PAIDOUT_TRANSFERS type: string @@ -990,6 +990,91 @@ components: notificationId: 28468 notifyURL: https://www.adyen.com/notification-handler sslProtocol: SSLInsecureCiphers + post-deleteNotificationConfigurations-basic: + summary: Delete a notification configuration + description: Deletes an existing notification subscription configuration + value: + notificationIds: + - 27891 + post-deleteNotificationConfigurations-basic-200: + summary: Delete a notification configuration + description: Example response of deleting a notification configuration + value: + pspReference: '8516480472498802' + post-getNotificationConfiguration-basic: + summary: Get a notification configuration + description: Returns the details of the configuration of a notification subscription + value: + notificationId: 21259 + post-getNotificationConfiguration-basic-200: + summary: Get a notification configuration + description: Example response with a notification configuration + value: + pspReference: '8616480378704419' + configurationDetails: + active: true + apiVersion: 5 + description: test + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 50054 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + post-getNotificationConfigurationList-basic: + summary: Get a list of configurations + description: Returns the details of the configurations of all of the notification + subscriptions in the platform of the executing user. + value: {} + post-getNotificationConfigurationList-basic-200: + summary: Get a list of configuration + description: Example response with a list of notification configurations for + the executing user + value: + pspReference: '8516480437185726' + configurations: + - active: true + description: Unique description 12223 + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 27893 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + - active: true + description: just testing things + eventConfigs: + - eventType: ACCOUNT_HOLDER_VERIFICATION + includeMode: INCLUDE + notificationId: 25032 + notifyURL: https://www.adyen.com/notification-handler + sslProtocol: SSLInsecureCiphers + post-testNotificationConfiguration-basic: + summary: Test a notification configuration + description: Returns the test result for a notification subscription + value: + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + notificationId: 25032 + post-testNotificationConfiguration-basic-200: + summary: Test a notification configuration + description: Example response of a test notification configuration request + value: + pspReference: '8616480452462678' + errorMessages: + - The required string "[accepted]" is not in all the results + eventTypes: + - ACCOUNT_HOLDER_VERIFICATION + exchangeMessages: + - messageCode: Number + messageDescription: '1' + - messageCode: Title + messageDescription: 'Test 1: 8616480452462678' + notificationId: 25032 + okMessages: + - '...' + - 'ResponseTime_ms: 262' + - 'ResponseCode: 404' post-updateNotificationConfiguration-basic: summary: Update notification configurations value: diff --git a/yaml/PaymentService-v25.yaml b/yaml/PaymentService-v25.yaml index db93c69..f65e9ae 100644 --- a/yaml/PaymentService-v25.yaml +++ b/yaml/PaymentService-v25.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v25/authorise ```' + x-timestamp: '2022-05-06T17:19:27Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -153,7 +154,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -227,7 +228,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -304,7 +305,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -385,7 +386,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -475,7 +476,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -564,9 +565,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -575,7 +576,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -2880,10 +2881,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -3169,10 +3170,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -3211,7 +3212,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3471,8 +3471,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3508,6 +3511,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3960,37 +3974,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: diff --git a/yaml/PaymentService-v30.yaml b/yaml/PaymentService-v30.yaml index 41a5ff7..c929e0c 100644 --- a/yaml/PaymentService-v30.yaml +++ b/yaml/PaymentService-v30.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v30/authorise ```' + x-timestamp: '2022-05-06T17:19:27Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -238,7 +239,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -312,7 +313,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -470,7 +471,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -560,7 +561,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -649,7 +650,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -726,9 +727,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -737,7 +738,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3144,10 +3145,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -3450,10 +3451,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -3492,7 +3493,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3756,8 +3756,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3793,6 +3796,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -4245,37 +4259,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: diff --git a/yaml/PaymentService-v40.yaml b/yaml/PaymentService-v40.yaml index 1c51d1e..941dacc 100644 --- a/yaml/PaymentService-v40.yaml +++ b/yaml/PaymentService-v40.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v40/authorise ```' + x-timestamp: '2022-05-06T17:19:27Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,7 +713,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -801,8 +802,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -870,7 +870,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -947,9 +947,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -958,7 +958,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3819,10 +3819,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4162,10 +4162,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4498,10 +4498,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4564,7 +4564,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4847,8 +4846,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -4884,6 +4886,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5352,37 +5365,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5559,13 +5541,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v46.yaml b/yaml/PaymentService-v46.yaml index 66c3e90..9e9f66b 100644 --- a/yaml/PaymentService-v46.yaml +++ b/yaml/PaymentService-v46.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v46/authorise ```' + x-timestamp: '2022-05-06T17:19:27Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,7 +713,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -801,8 +802,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -870,7 +870,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -947,9 +947,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -958,7 +958,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3839,10 +3839,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4182,10 +4182,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4518,10 +4518,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4584,7 +4584,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4872,8 +4871,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -4909,6 +4911,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5377,37 +5390,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5592,13 +5574,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v49.yaml b/yaml/PaymentService-v49.yaml index 76bcca4..6c0da39 100644 --- a/yaml/PaymentService-v49.yaml +++ b/yaml/PaymentService-v49.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v49/authorise ```' + x-timestamp: '2022-05-06T17:19:28Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,7 +713,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -801,8 +802,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -870,7 +870,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -947,9 +947,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -958,7 +958,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3839,10 +3839,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4182,10 +4182,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4518,10 +4518,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4584,7 +4584,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4872,8 +4871,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -4909,6 +4911,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5377,37 +5390,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5592,13 +5574,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v50.yaml b/yaml/PaymentService-v50.yaml index 7661b59..f6dac6f 100644 --- a/yaml/PaymentService-v50.yaml +++ b/yaml/PaymentService-v50.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v50/authorise ```' + x-timestamp: '2022-05-06T17:19:28Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,7 +713,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -801,8 +802,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -870,7 +870,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -947,9 +947,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -958,7 +958,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3856,10 +3856,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4205,10 +4205,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4547,10 +4547,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4619,7 +4619,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -4907,8 +4906,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -4944,6 +4946,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5412,37 +5425,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5627,13 +5609,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v51.yaml b/yaml/PaymentService-v51.yaml index 18f4d71..4253643 100644 --- a/yaml/PaymentService-v51.yaml +++ b/yaml/PaymentService-v51.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v51/authorise ```' + x-timestamp: '2022-05-06T17:19:28Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,8 +713,7 @@ paths: post: tags: - General - summary: Return the authentication result after doing a 3D Secure authentication - only. + summary: Get the 3DS authentication result description: Return the authentication result after doing a 3D Secure authentication only. x-addedInVersion: '51' @@ -781,7 +781,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -870,8 +870,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -939,7 +938,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -1016,9 +1015,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -1027,7 +1026,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3951,10 +3950,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4306,10 +4305,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4654,10 +4653,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4726,7 +4725,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5014,8 +5012,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -5051,6 +5052,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5519,37 +5531,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5734,13 +5715,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v52.yaml b/yaml/PaymentService-v52.yaml index ffe2b0c..22a65e7 100644 --- a/yaml/PaymentService-v52.yaml +++ b/yaml/PaymentService-v52.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v52/authorise ```' + x-timestamp: '2022-05-06T17:19:28Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,8 +713,7 @@ paths: post: tags: - General - summary: Return the authentication result after doing a 3D Secure authentication - only. + summary: Get the 3DS authentication result description: Return the authentication result after doing a 3D Secure authentication only. x-addedInVersion: '51' @@ -781,7 +781,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -870,8 +870,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -939,7 +938,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -1016,9 +1015,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -1027,7 +1026,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3959,10 +3958,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4314,10 +4313,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4662,10 +4661,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4734,7 +4733,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5022,8 +5020,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -5059,6 +5060,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5527,37 +5539,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5742,13 +5723,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v64.yaml b/yaml/PaymentService-v64.yaml index 0a91936..b60a249 100644 --- a/yaml/PaymentService-v64.yaml +++ b/yaml/PaymentService-v64.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v64/authorise ```' + x-timestamp: '2022-05-06T17:19:28Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,8 +713,7 @@ paths: post: tags: - General - summary: Return the authentication result after doing a 3D Secure authentication - only. + summary: Get the 3DS authentication result description: Return the authentication result after doing a 3D Secure authentication only. x-addedInVersion: '51' @@ -781,7 +781,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -870,8 +870,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -939,7 +938,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -1016,9 +1015,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -1027,7 +1026,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3973,10 +3972,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4328,10 +4327,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4676,10 +4675,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4748,7 +4747,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5036,8 +5034,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -5073,6 +5074,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5541,37 +5553,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5756,13 +5737,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v67.yaml b/yaml/PaymentService-v67.yaml index 0c8620b..9420e2a 100644 --- a/yaml/PaymentService-v67.yaml +++ b/yaml/PaymentService-v67.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v67/authorise ```' + x-timestamp: '2022-05-06T17:19:29Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,8 +713,7 @@ paths: post: tags: - General - summary: Return the authentication result after doing a 3D Secure authentication - only. + summary: Get the 3DS authentication result description: Return the authentication result after doing a 3D Secure authentication only. x-addedInVersion: '51' @@ -781,7 +781,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -870,8 +870,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -939,7 +938,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -1016,9 +1015,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -1027,7 +1026,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -3967,10 +3966,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4316,10 +4315,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4658,10 +4657,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4730,7 +4729,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5018,8 +5016,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -5055,6 +5056,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5516,37 +5528,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5731,13 +5712,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PaymentService-v68.yaml b/yaml/PaymentService-v68.yaml index c810c63..1d5b386 100644 --- a/yaml/PaymentService-v68.yaml +++ b/yaml/PaymentService-v68.yaml @@ -52,6 +52,7 @@ info: https://pal-test.adyen.com/pal/servlet/Payment/v68/authorise ```' + x-timestamp: '2022-05-06T17:19:29Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -68,7 +69,7 @@ paths: post: tags: - Modifications - summary: Increases or decreases the authorised amount. + summary: Change the authorised amount description: 'Allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables for example tipping, improving the chances your authorisation will be valid, or @@ -154,7 +155,7 @@ paths: post: tags: - General - summary: Creates a payment authorisation. + summary: Create an authorisation description: 'Creates a payment with a unique reference (`pspReference`) and attempts to obtain an authorisation hold. For cards, this amount can be captured or cancelled later. Non-card payment methods typically don''t support this @@ -240,7 +241,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure payment authorisation. + summary: Complete a 3DS authorisation description: 'For an authenticated 3D Secure session, completes the payment authorisation. This endpoint must receive the `md` and `paResponse` parameters that you get from the card issuer after a shopper pays via 3D Secure. @@ -314,7 +315,7 @@ paths: post: tags: - General - summary: Completes a 3D Secure 2 payment authorisation. + summary: Complete a 3DS2 authorisation description: 'For an authenticated 3D Secure 2 session, completes the payment authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result` parameters. @@ -389,7 +390,7 @@ paths: post: tags: - Modifications - summary: Cancels an authorised payment. + summary: Cancel an authorisation description: 'Cancels the authorisation hold on a payment, returning a unique reference for this request. You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. @@ -466,7 +467,7 @@ paths: post: tags: - Modifications - summary: Cancels or refunds a payment. + summary: Cancel or refund a payment description: "Cancels a payment if it has not been captured yet, or refunds\ \ it if it has already been captured. This is useful when it is not certain\ \ if the payment has been captured or not (for example, when using auto-capture).\n\ @@ -547,7 +548,7 @@ paths: post: tags: - Modifications - summary: Captures an authorised payment. + summary: Capture an authorisation description: 'Captures the authorisation hold on a payment, returning a unique reference for this request. Usually the full authorisation amount is captured, however it''s also possible to capture a smaller amount, which results in @@ -637,7 +638,7 @@ paths: post: tags: - Modifications - summary: Creates a payment for the specified donation. + summary: Create a donation description: 'Schedules a new payment to be created (including a new authorisation request) for the specified donation using the payment details of the original payment. @@ -712,8 +713,7 @@ paths: post: tags: - General - summary: Return the authentication result after doing a 3D Secure authentication - only. + summary: Get the 3DS authentication result description: Return the authentication result after doing a 3D Secure authentication only. x-addedInVersion: '51' @@ -781,7 +781,7 @@ paths: post: tags: - Modifications - summary: Refunds a captured payment. + summary: Refund a captured payment description: 'Refunds a payment that has previously been captured, returning a unique reference for this request. Refunding can be done on the full captured amount or a partial amount. Multiple (partial) refunds will be accepted as @@ -870,8 +870,7 @@ paths: post: tags: - General - summary: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication - only. + summary: Get the 3DS2 authentication result description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication only. x-addedInVersion: '40' @@ -939,7 +938,7 @@ paths: post: tags: - Modifications - summary: Cancels a payment using your custom reference. + summary: Cancel an authorisation using your reference description: "This endpoint allows you to cancel a payment if you do not have\ \ the PSP reference of the original payment request available.\n\nIn your\ \ call, refer to the original payment by using the `reference` that you specified\ @@ -1016,9 +1015,9 @@ paths: post: tags: - Modifications - summary: Cancels a POS refund request before it has been completed. - description: 'This endpoint allows you to cancel the refund request before it - has been completed. + summary: Cancel an in-person refund + description: 'This endpoint allows you to cancel an unreferenced refund request + before it has been completed. In your call, you can refer to the original refund request either by using @@ -1027,7 +1026,7 @@ paths: transactions. - For more information, refer to [Cancel a refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-a-pos-refund-request).' + For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).' x-addedInVersion: '25' operationId: post-voidPendingRefund x-groupName: Modifications @@ -4143,10 +4142,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4492,10 +4491,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4834,10 +4833,10 @@ components: \ information (PII), for example name or email address." type: string shopperStatement: - description: "The text to be shown on the shopper's bank statement. To enable\ - \ this field, contact our [Support Team](https://support.adyen.com/hc/en-us/requests/new).\n\ - \ We recommend sending a maximum of 22 characters, otherwise banks might\ - \ truncate the string." + description: "The text to be shown on the shopper's bank statement.\n We\ + \ recommend sending a maximum of 22 characters, otherwise banks might\ + \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ + \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' @@ -4906,7 +4905,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -5205,8 +5203,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -5242,6 +5243,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -5703,37 +5715,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -5918,13 +5899,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -6263,11 +6245,11 @@ components: value: '04' - description: No challenge (transactional risk analysis is already performed) value: '05' - description: "Indicates whether a challenge is requested for this transaction.Possible\ - \ values:\n* **01** \u2014 No preference\n* **02** \u2014 No challenge\ - \ requested\n* **03** \u2014 Challenge requested (3DS Requestor preference)\n\ - * **04** \u2014 Challenge requested (Mandate)\n* **05** \u2014 No challenge\ - \ (transactional risk analysis is already performed)" + description: "Indicates whether a challenge is requested for this transaction.\ + \ Possible values:\n* **01** \u2014 No preference\n* **02** \u2014 No\ + \ challenge requested\n* **03** \u2014 Challenge requested (3DS Requestor\ + \ preference)\n* **04** \u2014 Challenge requested (Mandate)\n* **05**\ + \ \u2014 No challenge (transactional risk analysis is already performed)" enum: - '01' - '02' diff --git a/yaml/PayoutService-v30.yaml b/yaml/PayoutService-v30.yaml index eead0c0..f3ebe78 100644 --- a/yaml/PayoutService-v30.yaml +++ b/yaml/PayoutService-v30.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:05Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2409,7 +2410,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -2600,8 +2600,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -2637,6 +2640,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3089,37 +3103,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: diff --git a/yaml/PayoutService-v40.yaml b/yaml/PayoutService-v40.yaml index d578036..d17ca4b 100644 --- a/yaml/PayoutService-v40.yaml +++ b/yaml/PayoutService-v40.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2785,7 +2786,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -2987,8 +2987,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3024,6 +3027,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3492,37 +3506,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3699,13 +3682,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v50.yaml b/yaml/PayoutService-v50.yaml index c42d00f..a4bd3b8 100644 --- a/yaml/PayoutService-v50.yaml +++ b/yaml/PayoutService-v50.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2802,7 +2803,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3004,8 +3004,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3041,6 +3044,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3509,37 +3523,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3724,13 +3707,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v51.yaml b/yaml/PayoutService-v51.yaml index eea4820..0bbc6d7 100644 --- a/yaml/PayoutService-v51.yaml +++ b/yaml/PayoutService-v51.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2802,7 +2803,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3004,8 +3004,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3041,6 +3044,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3509,37 +3523,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3724,13 +3707,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v52.yaml b/yaml/PayoutService-v52.yaml index fcb5daa..81c1516 100644 --- a/yaml/PayoutService-v52.yaml +++ b/yaml/PayoutService-v52.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2802,7 +2803,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3004,8 +3004,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3041,6 +3044,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3509,37 +3523,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3724,13 +3707,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v64.yaml b/yaml/PayoutService-v64.yaml index 43234b0..ca66994 100644 --- a/yaml/PayoutService-v64.yaml +++ b/yaml/PayoutService-v64.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2816,7 +2817,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3018,8 +3018,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3055,6 +3058,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3523,37 +3537,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3738,13 +3721,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v67.yaml b/yaml/PayoutService-v67.yaml index bfcb60b..d7a80a9 100644 --- a/yaml/PayoutService-v67.yaml +++ b/yaml/PayoutService-v67.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2816,7 +2817,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3018,8 +3018,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3055,6 +3058,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3516,37 +3530,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3731,13 +3714,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string diff --git a/yaml/PayoutService-v68.yaml b/yaml/PayoutService-v68.yaml index 0a05fed..69570e0 100644 --- a/yaml/PayoutService-v68.yaml +++ b/yaml/PayoutService-v68.yaml @@ -40,6 +40,7 @@ info: ' + x-timestamp: '2022-05-03T09:24:06Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -2992,7 +2993,6 @@ components: - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - - $ref: '#/components/schemas/ResponseAdditionalDataDeliveryAddress' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' @@ -3205,8 +3205,11 @@ components: ResponseAdditionalDataCard: properties: cardBin: - description: 'The Bank Identification Number of a credit card, which is - the first six digits of a card number. + description: 'The first six digits of the card number. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with a six-digit BIN. Example: 521234' @@ -3242,6 +3245,17 @@ components: > Returned only in case of a card payment.' type: string + issuerBin: + description: 'The first eight digits of the card number. Only returned if + the card number is 16 digits or more. + + + This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) + for card numbers with an eight-digit BIN. + + + Example: 52123423' + type: string ResponseAdditionalDataCommon: properties: acquirerAccountCode: @@ -3703,37 +3717,6 @@ components: Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string - ResponseAdditionalDataDeliveryAddress: - properties: - deliveryAddress.city: - description: The delivery address city passed in the payment request. - type: string - deliveryAddress.country: - description: 'The delivery address country passed in the payment request. - - - Example: NL' - type: string - deliveryAddress.houseNumberOrName: - description: The delivery address house number or name passed in the payment - request. - type: string - deliveryAddress.postalCode: - description: 'The delivery address postal code passed in the payment request. - - - Example: 1011 DJ' - type: string - deliveryAddress.stateOrProvince: - description: 'The delivery address state or province passed in the payment - request. - - - Example: NH' - type: string - deliveryAddress.street: - description: The delivery address street passed in the payment request. - type: string ResponseAdditionalDataInstallments: properties: installmentPaymentData.installmentType: @@ -3918,13 +3901,14 @@ components: description: 'The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, - **MarketPlace**, **BalanceAccount**.' + **MarketPlace**, **BalanceAccount**, **Remainder**.' enum: - BalanceAccount - Commission - Default - MarketPlace - PaymentFee + - Remainder - VAT - Verification type: string @@ -4579,11 +4563,11 @@ components: value: '04' - description: No challenge (transactional risk analysis is already performed) value: '05' - description: "Indicates whether a challenge is requested for this transaction.Possible\ - \ values:\n* **01** \u2014 No preference\n* **02** \u2014 No challenge\ - \ requested\n* **03** \u2014 Challenge requested (3DS Requestor preference)\n\ - * **04** \u2014 Challenge requested (Mandate)\n* **05** \u2014 No challenge\ - \ (transactional risk analysis is already performed)" + description: "Indicates whether a challenge is requested for this transaction.\ + \ Possible values:\n* **01** \u2014 No preference\n* **02** \u2014 No\ + \ challenge requested\n* **03** \u2014 Challenge requested (3DS Requestor\ + \ preference)\n* **04** \u2014 Challenge requested (Mandate)\n* **05**\ + \ \u2014 No challenge (transactional risk analysis is already performed)" enum: - '01' - '02' diff --git a/yaml/RecurringService-v25.yaml b/yaml/RecurringService-v25.yaml index 72a416b..5371622 100644 --- a/yaml/RecurringService-v25.yaml +++ b/yaml/RecurringService-v25.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v25/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/RecurringService-v30.yaml b/yaml/RecurringService-v30.yaml index c21c591..e499b5e 100644 --- a/yaml/RecurringService-v30.yaml +++ b/yaml/RecurringService-v30.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v30/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/RecurringService-v40.yaml b/yaml/RecurringService-v40.yaml index 57b9d84..5629818 100644 --- a/yaml/RecurringService-v40.yaml +++ b/yaml/RecurringService-v40.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v40/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/RecurringService-v49.yaml b/yaml/RecurringService-v49.yaml index 075cbab..8d0a030 100644 --- a/yaml/RecurringService-v49.yaml +++ b/yaml/RecurringService-v49.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v49/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/RecurringService-v67.yaml b/yaml/RecurringService-v67.yaml index 102e108..149c2e0 100644 --- a/yaml/RecurringService-v67.yaml +++ b/yaml/RecurringService-v67.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v67/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/RecurringService-v68.yaml b/yaml/RecurringService-v68.yaml index 091c606..90f13f7 100644 --- a/yaml/RecurringService-v68.yaml +++ b/yaml/RecurringService-v68.yaml @@ -49,6 +49,7 @@ info: https://pal-test.adyen.com/pal/servlet/Recurring/v68/disable ```' + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/StoredValueService-v46.yaml b/yaml/StoredValueService-v46.yaml index 22380c3..e817201 100644 --- a/yaml/StoredValueService-v46.yaml +++ b/yaml/StoredValueService-v46.yaml @@ -6,6 +6,7 @@ info: x-publicVersion: true title: Adyen Stored Value API description: A set of API endpoints to manage stored value products. + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/TestCardService-v1.yaml b/yaml/TestCardService-v1.yaml index b6f4899..3924f88 100644 --- a/yaml/TestCardService-v1.yaml +++ b/yaml/TestCardService-v1.yaml @@ -6,8 +6,9 @@ info: x-publicVersion: true title: Adyen Test Cards API description: The Test Cards API provides endpoints for generating custom test card - numbers. For more information, refer to [Custom test cards](https://docs.adyen.com/development-resources/test-cards/create-test-cards) + numbers. For more information, refer to [Custom test cards](https://docs.adyen.com/development-resources/testing/create-test-cards) documentation. + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/TfmAPIService-v1.yaml b/yaml/TfmAPIService-v1.yaml index bea54ab..2e46f38 100644 --- a/yaml/TfmAPIService-v1.yaml +++ b/yaml/TfmAPIService-v1.yaml @@ -52,6 +52,7 @@ info: https://postfmapi-test.adyen.com/postfmapi/terminal/v1/getTerminalsUnderAccount ```' + x-timestamp: '2022-05-03T09:24:09Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team diff --git a/yaml/TransferService-v1.yaml b/yaml/TransferService-v1.yaml index 088f625..2e325fd 100644 --- a/yaml/TransferService-v1.yaml +++ b/yaml/TransferService-v1.yaml @@ -26,23 +26,24 @@ info: \ credential for the live environment. You can then use the username and password\ \ to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\n\ For more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-03-21T17:38:03Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team url: https://www.adyen.help/hc/en-us/community/topics email: developer-experience@adyen.com x-groups: -- General +- Transfers tags: -- name: General +- name: Transfers paths: /transfers: post: tags: - - General + - Transfers summary: Transfer funds description: 'Starts a transfer request to move funds within your balance platform, - or send funds to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments). + or send funds to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/transferInstruments). Adyen sends the outcome of the transfer request through webhooks. @@ -51,19 +52,29 @@ paths: will set these up for you.' x-addedInVersion: '1' operationId: post-transfers - x-groupName: General - x-sortIndex: 0 + x-groupName: Transfers + x-sortIndex: 1 security: - ApiKeyAuth: [] requestBody: content: application/json: + examples: + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument' schema: $ref: '#/components/schemas/TransferInfoOld' responses: '200': content: application/json: + examples: + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account-200' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument-200' schema: $ref: '#/components/schemas/TransferOld' description: OK - the request has succeeded. @@ -99,8 +110,8 @@ components: description: 'The name of the city. Maximum length: 3000 characters.' type: string country: - description: 'The two-character country code as defined in ISO-3166-1 alpha-2. - For example, **US**. + description: 'The two-character ISO-3166-1 alpha-2 country code. For example, + **US**. > If you don''t know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.' @@ -113,7 +124,7 @@ components: of ten characters for an address in all other countries. type: string stateOrProvince: - description: 'State or province codes as defined in ISO 3166-2. For example, + description: 'The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada. > Required for the US and Canada.' @@ -359,6 +370,7 @@ components: - platformPayment type: string counterparty: + x-addedInVersion: '1' description: Contains information about the other party in the transaction. $ref: '#/components/schemas/Counterparty' createdAt: @@ -436,6 +448,7 @@ components: - paymentCost - refund - refundReversal + - reserveAdjustment - secondChargeback type: string valueDate: @@ -559,4 +572,42 @@ components: BasicAuth: scheme: basic type: http - examples: {} + examples: + post-transfers-payout-to-balance-account: + summary: Transfer funds to another balance account + description: Example request to transfer funds to another balance account + value: + source: + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + destination: + balanceAccountId: BAB1234567890ABC123456789 + amount: + value: 10000 + currency: EUR + reference: Your internal reference for the transfer + description: Your description + post-transfers-payout-to-balance-account-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + resultCode: Authorised + post-transfers-payout-to-transfer-instrument: + summary: Pay out to a transfer instrument + description: Example request to pay out to a transfer instrument + value: + source: + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + destination: + transferInstrumentId: SE1234567890ABC1234567890 + amount: + value: 10000 + currency: EUR + reference: Your internal reference for the transfer + description: Your description + post-transfers-payout-to-transfer-instrument-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + resultCode: Authorised diff --git a/yaml/TransferService-v2.yaml b/yaml/TransferService-v2.yaml index 9fd61bb..06f68e0 100644 --- a/yaml/TransferService-v2.yaml +++ b/yaml/TransferService-v2.yaml @@ -26,24 +26,25 @@ info: \ credential for the live environment. You can then use the username and password\ \ to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\n\ For more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-03-22T20:02:57Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team url: https://www.adyen.help/hc/en-us/community/topics email: developer-experience@adyen.com x-groups: -- General +- Transfers - Transactions tags: - name: Transactions -- name: General +- name: Transfers paths: /transactions: get: tags: - Transactions summary: Get all transactions - description: Returns transactions that match the query parameters.This endpoint + description: Returns transactions that match the query parameters. This endpoint supports cursor-based pagination. The response returns the first page of results, and returns links to the next page when applicable. You can use the links to page through the results. The response also returns links to the previous @@ -107,6 +108,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-transactions-success-200' schema: $ref: '#/components/schemas/TransactionSearchResponse' description: OK - the request has succeeded. @@ -157,6 +161,9 @@ paths: '200': content: application/json: + examples: + success: + $ref: '#/components/examples/get-transactions-id-success-200' schema: $ref: '#/components/schemas/Transaction' description: OK - the request has succeeded. @@ -187,12 +194,12 @@ paths: /transfers: post: tags: - - General + - Transfers summary: Transfer funds description: 'Starts a request to transfer funds to [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts), - [transfer instruments](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments), - or bank accounts. Adyen sends the outcome of the transfer request through - webhooks. + [transfer instruments](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments), + or third-party bank accounts. Adyen sends the outcome of the transfer request + through webhooks. To use this endpoint, you need an additional role for your API credential @@ -200,19 +207,33 @@ paths: will set these up for you.' x-addedInVersion: '2' operationId: post-transfers - x-groupName: General - x-sortIndex: 0 + x-groupName: Transfers + x-sortIndex: 1 security: - ApiKeyAuth: [] requestBody: content: application/json: + examples: + payout-local-transfer-sepa: + $ref: '#/components/examples/post-transfers-payout-local-transfer-sepa' + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument' schema: $ref: '#/components/schemas/TransferInfo' responses: '200': content: application/json: + examples: + payout-local-transfer-sepa: + $ref: '#/components/examples/post-transfers-payout-local-transfer-sepa-200' + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account-200' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument-200' schema: $ref: '#/components/schemas/Transfer' description: OK - the request has succeeded. @@ -292,11 +313,26 @@ components: properties: priority: x-addedInVersion: '1' - description: "Sets the priority for the bank transfer. If you don't provide\ - \ this in the request, Adyen sets the optimal priority.\n\n Possible values:\n\ - \n * **regular**: For normal, low-value transactions.\n\n* **fast**: For\ - \ high-priority, low-value transactions.\n\n* **wire**: For high-priority,\ - \ high-value transactions.\n\n" + description: 'The priority for the bank transfer. This sets the speed at + which the transfer is sent and the fees that you have to pay. If you don''t + provide this in the request, Adyen sets the optimal priority. + + + Possible values: + + + * **regular**: For normal, low-value transactions. + + + * **fast**: Faster way to transfer funds but has higher fees. Recommended + for high-priority, low-value transactions. + + + * **wire**: Fastest way to transfer funds but has the highest fees. Recommended + for high-priority, high-value transactions. + + + ' enum: - fast - regular @@ -512,6 +548,7 @@ components: - platformPayment type: string counterparty: + x-addedInVersion: '1' description: Contains information about the other party in the transaction. $ref: '#/components/schemas/Counterparty' createdAt: @@ -589,6 +626,7 @@ components: - paymentCost - refund - refundReversal + - reserveAdjustment - secondChargeback type: string valueDate: @@ -658,8 +696,8 @@ components: - outgoing type: string id: - x-addedInVersion: '2' - description: Unique identifier of the transfer. + description: The ID of the resource. + readOnly: true type: string paymentInstrumentId: description: Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id). @@ -683,11 +721,11 @@ components: type: string referenceForBeneficiary: x-addedInVersion: '2' - description: "A reference that is sent to the recipient. This reference\ + description: " A reference that is sent to the recipient. This reference\ \ is also sent in all notification webhooks related to the transfer, so\ - \ you can use it to track statuses for both source and recipient of funds.\n\ - \n Supported characters: **a-z**, **A-Z**, **0-9**.Maximum length: 80\ - \ characters." + \ you can use it to track statuses for both the source and recipient of\ + \ funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. Maximum\ + \ length: 80 characters." maxLength: 80 type: string status: @@ -700,7 +738,6 @@ components: type: string required: - amount - - id - counterparty - status TransferInfo: @@ -719,8 +756,8 @@ components: default settings. $ref: '#/components/schemas/Bank' counterparty: - description: The recipient of the funds transfer. This can be a balance - account, a transfer instrument, or a bank account. + description: The recipient of the funds transfer. A bank account, a balance + account, or a transfer instrument is required. $ref: '#/components/schemas/CounterpartyInfo' description: x-addedInVersion: '1' @@ -728,6 +765,10 @@ components: alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated. type: string + id: + description: The ID of the resource. + readOnly: true + type: string paymentInstrumentId: description: Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id). type: string @@ -742,11 +783,11 @@ components: type: string referenceForBeneficiary: x-addedInVersion: '2' - description: "A reference that is sent to the recipient. This reference\ + description: " A reference that is sent to the recipient. This reference\ \ is also sent in all notification webhooks related to the transfer, so\ - \ you can use it to track statuses for both source and recipient of funds.\n\ - \n Supported characters: **a-z**, **A-Z**, **0-9**.Maximum length: 80\ - \ characters." + \ you can use it to track statuses for both the source and recipient of\ + \ funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. Maximum\ + \ length: 80 characters." maxLength: 80 type: string required: @@ -760,4 +801,192 @@ components: BasicAuth: scheme: basic type: http - examples: {} + examples: + get-transactions-id-success-200: + summary: Response code - 200 OK + description: Example response for a transaction + value: + accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: 9887 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-14T12:01:00+01:00' + category: bank + counterparty: + balanceAccountId: NL29ADYX0000000001 + createdAt: '2022-03-14T12:01:00+01:00' + description: YOUR_DESCRIPTION + id: IZK7C25U7DYVX03Y + instructedAmount: + currency: EUR + value: 9887 + reference: 2L6C6B5U7DYULLXC + referenceForBeneficiary: YOUR_REFERENCE_FOR_BENEFICIARY + status: booked + transferId: 2QP32A5U7IWC5WKG + type: bankTransfer + valueDate: '2022-03-14T12:01:00+01:00' + get-transactions-success-200: + summary: Response code - 200 OK + description: Example response for a list of transactions + value: + data: + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -9 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-11T11:21:24+01:00' + category: internal + createdAt: '2022-03-11T11:21:24+01:00' + id: 1VVF0D5U66PIUIVP + instructedAmount: + currency: EUR + value: -9 + reference: REFERENCE_46e8c40e + status: booked + transferId: 1VVF0D5U66PIUIVP + type: fee + valueDate: '2022-03-11T11:21:24+01:00' + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -46 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-12T14:22:52+01:00' + category: internal + createdAt: '2022-03-12T14:22:52+01:00' + id: 1WEPGD5U6MS1CFK3 + instructedAmount: + currency: EUR + value: -46 + reference: YOUR_REFERENCE + status: booked + transferId: 1WEPGD5U6MS1CFK3 + type: fee + valueDate: '2022-03-12T14:22:52+01:00' + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -8 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-14T21:00:48+01:00' + createdAt: '2022-03-14T15:00:00+01:00' + description: YOUR_DESCRIPTION_2 + id: 2QP32A5U7IWC5WKG + instructedAmount: + currency: EUR + value: -8 + status: booked + valueDate: '2022-03-14T21:00:48+01:00' + _links: + next: + href: https://balanceplatform-api-test.adyen.com/btl/v2/transactions?balancePlatform=Bastronaut&createdUntil=2022-03-21T00%3A00%3A00Z&createdSince=2022-03-11T00%3A00%3A00Z&limit=3&cursor=S2B-TSAjOkIrYlIlbjdqe0RreHRyM32lKRSxubXBHRkhHL2E32XitQQz5SfzpucD5HbHwpM1p6NDR1eXVQLFF6MmY33J32sobDxQYT90MHIud1hwLnd6JitcX32xJ + post-transfers-payout-local-transfer-sepa: + summary: Make a SEPA funds transfer + description: Example request to make a US local funds transfer + value: + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + bankAccount: + iban: NL13TEST0123456789 + ownerName: + fullName: A. Klaassen + bank: + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description + post-transfers-payout-local-transfer-sepa-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + bankAccount: + iban: NL13TEST0123456789 + ownerName: + fullName: A. Klaassen + bank: + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-to-balance-account: + summary: Transfer funds to another balance account + description: Example request to transfer funds to another balance account + value: + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + balanceAccountId: BAB1234567890ABC123456789 + amount: + value: 10000 + currency: EUR + reference: Your internal reference for the transfer + description: Your description + post-transfers-payout-to-balance-account-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + currency: EUR + value: 10000 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + balanceAccountId: BA32272223222B5LPRFDW7J9G + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-to-transfer-instrument: + summary: Pay out to a transfer instrument + description: Example request to pay out to a transfer instrument + value: + amount: + value: 80000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + transferInstrumentId: SE1234567890ABC1234567890 + bank: + priority: fast + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description + post-transfers-payout-to-transfer-instrument-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 80000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + counterparty: + transferInstrumentId: SE1234567890ABC1234567890 + bank: + priority: fast + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description + direction: outgoing + reason: approved + status: authorised diff --git a/yaml/TransferService-v3.yaml b/yaml/TransferService-v3.yaml new file mode 100644 index 0000000..1daf58a --- /dev/null +++ b/yaml/TransferService-v3.yaml @@ -0,0 +1,1405 @@ +openapi: 3.1.0 +servers: +- url: https://balanceplatform-api-test.adyen.com/btl/v3 +info: + version: '3' + x-publicVersion: true + title: Balance Platform Transfers API + description: "The Balance Platform Transfers API provides an endpoint that you can\ + \ use to move funds within your balance platform, or to send funds from your balance\ + \ platform to a [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments).\n\ + \nFor information on how the API is used in Adyen Issuing, refer to [Manage funds](https://docs.adyen.com/issuing/manage-funds#transfer).\n\ + \n## Authentication\nYour Adyen contact will provide your API credential and an\ + \ API key. To connect to the API, add an `X-API-Key` header with the API key as\ + \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\ + \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\ + \ the username and password to connect to the API using basic authentication.\ + \ For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\"\ + :\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Roles and permissions\nTo use the Balance\ + \ Platforms Transfers API, you need an additional role for your API credential.\ + \ Transfers must also be enabled for the source balance account. Your Adyen contact\ + \ will set up the roles and permissions for you.\n## Versioning\nThe Balance Platform\ + \ Transfers API supports [versioning](https://docs.adyen.com/development-resources/versioning)\ + \ using a version suffix in the endpoint URL. This suffix has the following format:\ + \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/btl/v1\n\ + ```\n## Going live\nWhen going live, your Adyen contact will provide your API\ + \ credential for the live environment. You can then use the username and password\ + \ to send requests to `https://balanceplatform-api-live.adyen.com/btl/v1`.\n\n\ + For more information, refer to our [Going live documentation](https://docs.adyen.com/issuing/integration-checklist#going-live)." + x-timestamp: '2022-05-06T17:19:31Z' + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://www.adyen.help/hc/en-us/community/topics + email: developer-experience@adyen.com +x-groups: +- Transfers +- Transactions +tags: +- name: Transactions +- name: Transfers +paths: + /transactions: + get: + tags: + - Transactions + summary: Get all transactions + description: Returns transactions that match the query parameters. This endpoint + supports cursor-based pagination. The response returns the first page of results, + and returns links to the next page when applicable. You can use the links + to page through the results. The response also returns links to the previous + page when applicable. + x-addedInVersion: '1' + operationId: get-transactions + x-groupName: Transactions + x-sortIndex: 1 + security: + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id). + name: balancePlatform + in: query + required: false + schema: + type: string + - description: Unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/accountHolders/{id}__queryParam_id). + name: accountHolderId + in: query + required: false + schema: + type: string + - description: Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__queryParam_id). + name: balanceAccountId + in: query + required: false + schema: + type: string + - description: The `cursor` returned in the links of the previous response. + name: cursor + in: query + required: false + schema: + type: string + - description: Only include transactions that have been created on or after + this point in time. The value must be in ISO 8601 format. For example, **2021-05-30T15:07:40Z**. + name: createdSince + in: query + required: true + schema: + format: date-time + type: string + - description: Only include transactions that have been created on or before + this point in time. The value must be in ISO 8601 format. For example, **2021-05-30T15:07:40Z**. + name: createdUntil + in: query + required: true + schema: + format: date-time + type: string + - description: The number of items returned per page, maximum of 100 items. + By default, the response returns 10 items per page. + name: limit + in: query + required: false + schema: + format: int32 + type: integer + responses: + '200': + content: + application/json: + examples: + success: + $ref: '#/components/examples/get-transactions-success-200' + schema: + $ref: '#/components/schemas/TransactionSearchResponse' + description: OK - the request has succeeded. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /transactions/{id}: + get: + tags: + - Transactions + summary: Get a transaction + description: Returns a transaction. + x-addedInVersion: '1' + operationId: get-transactions-id + x-groupName: Transactions + x-sortIndex: 2 + security: + - ApiKeyAuth: [] + parameters: + - description: Unique identifier of the transaction. + name: id + in: path + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + success: + $ref: '#/components/examples/get-transactions-id-success-200' + schema: + $ref: '#/components/schemas/Transaction' + description: OK - the request has succeeded. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. + /transfers: + post: + tags: + - Transfers + summary: Transfer funds + description: 'Starts a request to transfer funds to [balance accounts](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts), + [transfer instruments](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments), + or third-party bank accounts. Adyen sends the outcome of the transfer request + through webhooks. + + + To use this endpoint, you need an additional role for your API credential + and transfers must be enabled for the source balance account. Your Adyen contact + will set these up for you.' + x-addedInVersion: '2' + operationId: post-transfers + x-groupName: Transfers + x-sortIndex: 1 + security: + - ApiKeyAuth: [] + requestBody: + content: + application/json: + examples: + payout-cross-border: + $ref: '#/components/examples/post-transfers-payout-cross-border' + payout-local-transfer-sepa: + $ref: '#/components/examples/post-transfers-payout-local-transfer-sepa' + payout-local-transfer-us: + $ref: '#/components/examples/post-transfers-payout-local-transfer-us' + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument' + schema: + $ref: '#/components/schemas/TransferInfo' + responses: + '200': + content: + application/json: + examples: + payout-cross-border: + $ref: '#/components/examples/post-transfers-payout-cross-border-200' + payout-local-transfer-sepa: + $ref: '#/components/examples/post-transfers-payout-local-transfer-sepa-200' + payout-local-transfer-us: + $ref: '#/components/examples/post-transfers-payout-local-transfer-us-200' + payout-to-balance-account: + $ref: '#/components/examples/post-transfers-payout-to-balance-account-200' + payout-to-transfer-instrument: + $ref: '#/components/examples/post-transfers-payout-to-transfer-instrument-200' + schema: + $ref: '#/components/schemas/Transfer' + description: OK - the request has succeeded. + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unauthorized - authentication required. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Forbidden - insufficient permissions to process the request. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Unprocessable Entity - a request validation error. + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/RestServiceError' + description: Internal Server Error - the server could not process the request. +components: + schemas: + AdditionalBankIdentification: + properties: + code: + description: The value of the additional bank identification. + type: string + type: + description: "The type of additional bank identification, depending on the\ + \ country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort\ + \ code](https://en.wikipedia.org/wiki/Sort_code), without separators or\ + \ spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number),\ + \ without separators or spaces." + enum: + - gbSortCode + - usRoutingNumber + type: string + Address2: + properties: + city: + description: The name of the city. + type: string + country: + description: 'The two-character ISO 3166-1 alpha-2 country code. For example, + **US**. + + >If you don''t know the country or are not collecting the country from + the shopper, provide `country` as `ZZ`.' + type: string + line1: + description: First line of the street address. + type: string + line2: + description: Second line of the street address. + type: string + postalCode: + description: 'The postal code. + + Maximum length: + + * 5 digits for an address in the US. + + * 10 characters for an address in all other countries.' + type: string + stateOrProvince: + description: 'The two-letter ISO 3166-2 state or province code. For example, + **CA** in the US or **ON** in Canada. + + > Required for the US and Canada.' + type: string + required: + - country + Amount: + properties: + currency: + description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + maxLength: 3 + minLength: 3 + type: string + value: + description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). + format: int64 + type: integer + required: + - value + - currency + BankAccountV3: + properties: + accountHolder: + description: Information about the owner of the bank account. + $ref: '#/components/schemas/PartyIdentification2' + accountIdentification: + description: Contains the bank account details. The fields required in this + object depend on the country of the bank account and the currency of the + transfer. + oneOf: + - $ref: '#/components/schemas/CZLocalAccountIdentification' + - $ref: '#/components/schemas/IbanAccountIdentification' + - $ref: '#/components/schemas/NumberAndBicAccountIdentification' + - $ref: '#/components/schemas/PLLocalAccountIdentification' + - $ref: '#/components/schemas/SELocalAccountIdentification' + - $ref: '#/components/schemas/UKLocalAccountIdentification' + - $ref: '#/components/schemas/USLocalAccountIdentification' + required: + - accountIdentification + - accountHolder + CZLocalAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: "The 2-16 digit bank account number (\u010C\xEDslo \xFA\u010D\ + tu) in the following format:\n\n- The optional prefix (p\u0159ed\u010D\ + \xEDsl\xED).\n\n- The required second part (z\xE1kladn\xED \u010D\xE1\ + st) which must be at least two non-zero digits.\n\nExamples:\n\n- **19-123457**\ + \ (with prefix)\n\n- **123457** (without prefix)\n\n- **000019-0000123457**\ + \ (with prefix, normalized)\n\n- **000000-0000123457** (without prefix,\ + \ normalized)" + maxLength: 17 + minLength: 2 + type: string + bankCode: + description: "The 4-digit bank code (K\xF3d banky), without separators or\ + \ whitespace." + maxLength: 4 + minLength: 4 + type: string + type: + default: czLocal + description: '**czLocal**' + enum: + - czLocal + type: string + required: + - accountNumber + - bankCode + CounterpartyInfoV3: + properties: + balanceAccountId: + description: Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id). + type: string + bankAccount: + description: Contains information about the bank account. + $ref: '#/components/schemas/BankAccountV3' + transferInstrumentId: + description: Unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id). + type: string + CounterpartyV3: + properties: + balanceAccountId: + description: Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id). + type: string + bankAccount: + description: Contains information about the bank account. + $ref: '#/components/schemas/BankAccountV3' + merchant: + description: Contains information about the merchant. + $ref: '#/components/schemas/MerchantData' + transferInstrumentId: + description: Unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id). + type: string + IbanAccountIdentification: + additionalProperties: false + properties: + iban: + description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) + standard. + type: string + type: + default: iban + description: '**iban**' + enum: + - iban + type: string + required: + - iban + InvalidField: + properties: + message: + description: Description of the validation error. + type: string + name: + description: The field that has an invalid value. + type: string + value: + description: The invalid value. + type: string + required: + - name + - value + - message + JSONObject: + properties: + paths: + items: + $ref: '#/components/schemas/JSONPath' + type: array + rootPath: + $ref: '#/components/schemas/JSONPath' + JSONPath: + properties: + content: + items: + type: string + type: array + Link: + properties: + href: + type: string + Links: + properties: + next: + description: Contains a link to the next page. + $ref: '#/components/schemas/Link' + prev: + description: Contains a link to the previous page. + $ref: '#/components/schemas/Link' + MerchantData: + properties: + mcc: + description: The merchant category code. + type: string + merchantId: + description: The merchant identifier. + type: string + nameLocation: + description: Contains the merchant's name and location. + $ref: '#/components/schemas/NameLocation' + postalCode: + description: The merchant postal code. + type: string + NameLocation: + properties: + city: + description: The city where the merchant is located. + type: string + country: + description: The country where the merchant is located in [three-letter + country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) format. + type: string + countryOfOrigin: + description: The home country in [three-digit country code](https://en.wikipedia.org/wiki/ISO_3166-1_numeric) + format, used for government-controlled merchants such as embassies. + type: string + name: + description: The name of the merchant's shop or service. + type: string + rawData: + description: The raw data. + type: string + state: + description: The state where the merchant is located. + type: string + NumberAndBicAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: The bank account number, without separators or whitespace. + The length and format depends on the bank or country. + maxLength: 34 + type: string + additionalBankIdentification: + description: Additional identification codes of the bank. Some banks may + require these identifiers for cross-border transfers. + $ref: '#/components/schemas/AdditionalBankIdentification' + bic: + description: The bank's 8 or 11 character BIC or SWIFT code. + maxLength: 11 + minLength: 8 + type: string + type: + default: numberAndBic + description: '**numberAndBic**' + enum: + - numberAndBic + type: string + required: + - accountNumber + - bic + PLLocalAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: The 16-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)), + without separators or whitespace. + maxLength: 16 + minLength: 16 + type: string + type: + default: plLocal + description: '**plLocal**' + enum: + - plLocal + type: string + required: + - accountNumber + PartyIdentification2: + properties: + address: + description: Address of the bank account owner. + $ref: '#/components/schemas/Address2' + firstName: + description: First name of the individual. Required when `type` is **individual**. + type: string + fullName: + description: The name of the entity. + type: string + lastName: + description: Last name of the individual. Required when `type` is **individual**. + type: string + type: + default: '**unknown**' + description: "The type of entity that owns the bank account.\n\n Possible\ + \ values: **individual**, **organization**, or **unknown**." + enum: + - individual + - organization + - unknown + type: string + required: + - fullName + RestServiceError: + properties: + detail: + description: A human-readable explanation specific to this occurrence of + the problem. + type: string + errorCode: + description: A code that identifies the problem type. + type: string + errorType: + description: A URI that identifies the problem type, pointing to human-readable + documentation on this problem type. + type: string + instance: + description: A unique URI that identifies the specific occurrence of the + problem. + type: string + invalidFields: + description: Detailed explanation of each validation error, when applicable. + items: + $ref: '#/components/schemas/InvalidField' + type: array + requestId: + description: A unique reference for the request, essentially the same as + `pspReference`. + type: string + response: + description: JSON response payload. + $ref: '#/components/schemas/JSONObject' + status: + description: The HTTP status code. + format: int32 + type: integer + title: + description: A short, human-readable summary of the problem type. + type: string + required: + - errorType + - errorCode + - title + - detail + - status + SELocalAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: The 7-10 digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)) + without the clearing number, separators, or whitespace. + maxLength: 10 + minLength: 7 + type: string + clearingNumber: + description: The 4-5 digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)), + without separators or spaces. + maxLength: 5 + minLength: 4 + type: string + type: + default: seLocal + description: '**seLocal**' + enum: + - seLocal + type: string + required: + - accountNumber + - clearingNumber + Transaction: + properties: + accountHolderId: + x-addedInVersion: '1' + description: Unique identifier of the account holder. + type: string + amount: + x-addedInVersion: '1' + description: The amount. + $ref: '#/components/schemas/Amount' + balanceAccountId: + x-addedInVersion: '1' + description: Unique identifier of the balance account. + type: string + balancePlatform: + x-addedInVersion: '1' + description: Unique identifier of the balance platform. + type: string + bookingDate: + x-addedInVersion: '1' + description: The date the transaction was booked to the balance account. + format: date-time + type: string + category: + x-addedInVersion: '1' + description: "The category of the transaction indicating the type of activity.\n\ + \n Possible values:\n\n* **platformPayment**: The transaction is a payment\ + \ or payment modification made with an Adyen merchant account.\n\n* **internal**:\ + \ The transaction resulted from an internal adjustment such as a deposit\ + \ correction or invoice deduction.\n\n* **bank**: The transaction is a\ + \ bank-related activity, such as sending a payout or receiving funds.\n\ + \n* **issuedCard**: The transaction is a card-related activity, such as\ + \ using an Adyen-issued card to pay online.\n\n" + enum: + - bank + - internal + - issuedCard + - platformPayment + type: string + counterparty: + x-addedInVersion: '3' + description: Contains information about the other party in the transaction. + $ref: '#/components/schemas/CounterpartyV3' + createdAt: + x-addedInVersion: '1' + description: The date the transaction was created. + format: date-time + type: string + description: + x-addedInVersion: '1' + description: The `description` from the `/transfers` request. + type: string + id: + x-addedInVersion: '1' + description: Unique identifier of the transaction. + type: string + instructedAmount: + x-addedInVersion: '1' + description: The amount that the sender instructed their bank to send. This + can be higher than `amount.value` when their bank deducts costs for the + transfer. + $ref: '#/components/schemas/Amount' + paymentInstrumentId: + x-addedInVersion: '1' + description: Unique identifier of the payment instrument that was used for + the transaction. + type: string + reference: + x-addedInVersion: '1' + description: The [`reference`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_reference) + from the from the `/transfers` request. If you haven't provided any, Adyen + generates a unique reference. + type: string + referenceForBeneficiary: + x-addedInVersion: '1' + description: "The reference sent to or received from the counterparty.\n\ + \n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary)\ + \ from the [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_referenceForBeneficiary)\ + \ request.\n\n * For incoming funds, this is the reference from the sender." + type: string + status: + x-addedInVersion: '1' + description: "The status of the transaction.\n\n Possible values:\n\n* **pending**:\ + \ The transaction is still pending.\n\n* **booked**: The transaction has\ + \ been booked to the balance account.\n\n" + enum: + - booked + - pending + type: string + transferId: + x-addedInVersion: '1' + description: Unique identifier of the related transfer. + type: string + type: + x-addedInVersion: '1' + description: "The type of the transaction.\n\n Possible values: **payment**,\ + \ **capture**, **captureReversal**, **refund** **refundReversal**, **chargeback**,\ + \ **chargebackReversal**, **secondChargeback**, **atmWithdrawal**, **atmWithdrawalReversal**,\ + \ **internalTransfer**, **manualCorrection**, **invoiceDeduction**, **depositCorrection**,\ + \ **bankTransfer**, **miscCost**, **paymentCost**, **fee**" + enum: + - atmWithdrawal + - atmWithdrawalReversal + - bankTransfer + - capture + - captureReversal + - chargeback + - chargebackReversal + - depositCorrection + - fee + - internalTransfer + - invoiceDeduction + - leftover + - manualCorrection + - miscCost + - payment + - paymentCost + - refund + - refundReversal + - reserveAdjustment + - secondChargeback + type: string + valueDate: + x-addedInVersion: '1' + description: The date the transfer amount becomes available in the balance + account. + format: date-time + type: string + required: + - id + - transferId + - balancePlatform + - accountHolderId + - balanceAccountId + - paymentInstrumentId + - amount + - referenceForBeneficiary + - reference + - instructedAmount + - status + - createdAt + - bookingDate + - valueDate + - counterparty + TransactionSearchResponse: + properties: + _links: + description: Contains links to the next and previous page whenever applicable. + $ref: '#/components/schemas/Links' + data: + description: Contains the transactions that match the query parameters. + items: + $ref: '#/components/schemas/Transaction' + type: array + Transfer: + properties: + amount: + x-addedInVersion: '1' + description: The amount of the transfer. + $ref: '#/components/schemas/Amount' + balanceAccountId: + description: Unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id). + type: string + category: + x-addedInVersion: '3' + description: "The type of transfer.\n\nPossible values:\n\n - **bank**:\ + \ Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id)\ + \ or a bank account.\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id)\ + \ within your platform." + enum: + - bank + - internal + type: string + counterparty: + x-addedInVersion: '3' + description: The other party in the transfer. + $ref: '#/components/schemas/CounterpartyV3' + description: + x-addedInVersion: '1' + description: A human-readable description for the transfer. You can use + alphanumeric characters and hyphens. We recommend sending a maximum of + 140 characters, otherwise the description may be truncated. + type: string + direction: + x-addedInVersion: '2' + description: 'The direction of the transfer. + + + Possible values: **incoming**, **outgoing**.' + enum: + - incoming + - outgoing + type: string + id: + description: The ID of the resource. + readOnly: true + type: string + paymentInstrumentId: + description: Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id). + type: string + priority: + x-addedInVersion: '3' + description: 'The priority for the bank transfer. This sets the speed at + which the transfer is sent and the fees that you have to pay. Required + for transfers with `category` **bank**. + + + Possible values: + + + * **regular**: For normal, low-value transactions. + + + * **fast**: Faster way to transfer funds but has higher fees. Recommended + for high-priority, low-value transactions. + + + * **wire**: Fastest way to transfer funds but has the highest fees. Recommended + for high-priority, high-value transactions. + + + ' + enum: + - fast + - regular + - wire + type: string + reason: + x-addedInVersion: '2' + description: Additional information about the status of the transfer. + enum: + - approved + - notEnoughBalance + - unknown + type: string + reference: + x-addedInVersion: '2' + description: 'A reference for the transfer, only used internally within + your platform. If you don''t provide this in the request, Adyen generates + a unique reference. + + Maximum length: 80 characters.' + maxLength: 80 + type: string + referenceForBeneficiary: + x-addedInVersion: '2' + description: " A reference that is sent to the recipient. This reference\ + \ is also sent in all notification webhooks related to the transfer, so\ + \ you can use it to track statuses for both the source and recipient of\ + \ funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. The maximum\ + \ length depends on the `category`.\n\n- **internal**: 80 characters\n\ + \n- **bank**: 35 characters when transferring to an IBAN, 15 characters\ + \ for others." + maxLength: 80 + type: string + status: + x-addedInVersion: '2' + description: "The result of the transfer.\n\n Possible values: **authorised**,\ + \ **refused**." + enum: + - atmWithdrawal + - atmWithdrawalReversalPending + - atmWithdrawalReversed + - authorised + - bankTransfer + - bankTransferPending + - booked + - bookingPending + - cancelled + - capturePending + - captureReversalPending + - captureReversed + - captured + - chargeback + - chargebackPending + - chargebackReversalPending + - chargebackReversed + - depositCorrection + - depositCorrectionPending + - error + - expired + - failed + - fee + - feePending + - internalTransfer + - internalTransferPending + - invoiceDeduction + - invoiceDeductionPending + - manualCorrectionPending + - manuallyCorrected + - matchedStatement + - matchedStatementPending + - merchantPayin + - merchantPayinPending + - merchantPayinReversed + - merchantPayinReversedPending + - miscCost + - miscCostPending + - paymentCost + - paymentCostPending + - received + - refundPending + - refundReversalPending + - refundReversed + - refunded + - refused + - reserveAdjustment + - reserveAdjustmentPending + - secondChargeback + - secondChargebackPending + type: string + required: + - category + - amount + - counterparty + - status + TransferInfo: + properties: + amount: + x-addedInVersion: '1' + description: The amount of the transfer. + $ref: '#/components/schemas/Amount' + balanceAccountId: + description: Unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id). + type: string + category: + x-addedInVersion: '3' + description: "The type of transfer.\n\nPossible values:\n\n - **bank**:\ + \ Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id)\ + \ or a bank account.\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id)\ + \ within your platform." + enum: + - bank + - internal + type: string + counterparty: + x-addedInVersion: '3' + description: The recipient of the funds transfer. A bank account, a balance + account, or a transfer instrument is required. + $ref: '#/components/schemas/CounterpartyInfoV3' + description: + x-addedInVersion: '1' + description: A human-readable description for the transfer. You can use + alphanumeric characters and hyphens. We recommend sending a maximum of + 140 characters, otherwise the description may be truncated. + type: string + id: + description: The ID of the resource. + readOnly: true + type: string + paymentInstrumentId: + description: Unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id). + type: string + priority: + x-addedInVersion: '3' + description: 'The priority for the bank transfer. This sets the speed at + which the transfer is sent and the fees that you have to pay. Required + for transfers with `category` **bank**. + + + Possible values: + + + * **regular**: For normal, low-value transactions. + + + * **fast**: Faster way to transfer funds but has higher fees. Recommended + for high-priority, low-value transactions. + + + * **wire**: Fastest way to transfer funds but has the highest fees. Recommended + for high-priority, high-value transactions. + + + ' + enum: + - fast + - regular + - wire + type: string + reference: + x-addedInVersion: '2' + description: 'A reference for the transfer, only used internally within + your platform. If you don''t provide this in the request, Adyen generates + a unique reference. + + Maximum length: 80 characters.' + maxLength: 80 + type: string + referenceForBeneficiary: + x-addedInVersion: '2' + description: " A reference that is sent to the recipient. This reference\ + \ is also sent in all notification webhooks related to the transfer, so\ + \ you can use it to track statuses for both the source and recipient of\ + \ funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. The maximum\ + \ length depends on the `category`.\n\n- **internal**: 80 characters\n\ + \n- **bank**: 35 characters when transferring to an IBAN, 15 characters\ + \ for others." + maxLength: 80 + type: string + required: + - category + - amount + - counterparty + UKLocalAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: The 8-digit bank account number, without separators or whitespace. + maxLength: 8 + minLength: 8 + type: string + sortCode: + description: The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code), + without separators or spaces. + maxLength: 6 + minLength: 6 + type: string + type: + default: ukLocal + description: '**ukLocal**' + enum: + - ukLocal + type: string + required: + - accountNumber + - sortCode + USLocalAccountIdentification: + additionalProperties: false + properties: + accountNumber: + description: The bank account number, without separators or whitespace. + maxLength: 18 + minLength: 2 + type: string + accountType: + default: checking + description: 'The bank account type. + + + Possible values: **checking** or **savings**. Defaults to **checking**.' + enum: + - checking + - savings + type: string + routingNumber: + description: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), + without separators or spaces. + maxLength: 9 + minLength: 9 + type: string + type: + default: usLocal + description: '**usLocal**' + enum: + - usLocal + type: string + required: + - accountNumber + - routingNumber + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http + examples: + get-transactions-id-success-200: + summary: Response code - 200 OK + description: Example response for a transaction + value: + accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: 9887 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-14T12:01:00+01:00' + category: bank + counterparty: + balanceAccountId: NL29ADYX0000000001 + createdAt: '2022-03-14T12:01:00+01:00' + description: YOUR_DESCRIPTION + id: IZK7C25U7DYVX03Y + instructedAmount: + currency: EUR + value: 9887 + reference: 2L6C6B5U7DYULLXC + referenceForBeneficiary: YOUR_REFERENCE_FOR_BENEFICIARY + status: booked + transferId: 2QP32A5U7IWC5WKG + type: bankTransfer + valueDate: '2022-03-14T12:01:00+01:00' + get-transactions-success-200: + summary: Response code - 200 OK + description: Example response for a list of transactions + value: + data: + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -9 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-11T11:21:24+01:00' + category: internal + createdAt: '2022-03-11T11:21:24+01:00' + id: 1VVF0D5U66PIUIVP + instructedAmount: + currency: EUR + value: -9 + reference: REFERENCE_46e8c40e + status: booked + transferId: 1VVF0D5U66PIUIVP + type: fee + valueDate: '2022-03-11T11:21:24+01:00' + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -46 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-12T14:22:52+01:00' + category: internal + createdAt: '2022-03-12T14:22:52+01:00' + id: 1WEPGD5U6MS1CFK3 + instructedAmount: + currency: EUR + value: -46 + reference: YOUR_REFERENCE + status: booked + transferId: 1WEPGD5U6MS1CFK3 + type: fee + valueDate: '2022-03-12T14:22:52+01:00' + - accountHolderId: AHA1B2C3D4E5F6G7H8I9J0 + amount: + currency: EUR + value: -8 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + balancePlatform: YOUR_BALANCE_PLATFORM + bookingDate: '2022-03-14T21:00:48+01:00' + createdAt: '2022-03-14T15:00:00+01:00' + description: YOUR_DESCRIPTION_2 + id: 2QP32A5U7IWC5WKG + instructedAmount: + currency: EUR + value: -8 + status: booked + valueDate: '2022-03-14T21:00:48+01:00' + _links: + next: + href: https://balanceplatform-api-test.adyen.com/btl/v2/transactions?balancePlatform=Bastronaut&createdUntil=2022-03-21T00%3A00%3A00Z&createdSince=2022-03-11T00%3A00%3A00Z&limit=3&cursor=S2B-TSAjOkIrYlIlbjdqe0RreHRyM32lKRSxubXBHRkhHL2E32XitQQz5SfzpucD5HbHwpM1p6NDR1eXVQLFF6MmY33J32sobDxQYT90MHIud1hwLnd6JitcX32xJ + post-transfers-payout-cross-border: + summary: Make a SEPA funds transfer + description: Example request to make a SEPA funds transfer + value: + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + accountHolder: + fullName: A. Klaassen + address: + city: San Francisco + country: US + postalCode: '94678' + stateOrProvince: CA + street: Brannan Street + street2: '274' + accountIdentification: + type: numberBic + accountNumber: '123456789' + bic: BOFAUS3NXXX + priority: wire + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + post-transfers-payout-cross-border-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + accountHolder: + fullName: A. Klaassen + address: + city: San Francisco + country: US + postalCode: '94678' + stateOrProvince: CA + street: Brannan Street + street2: '274' + accountIdentification: + type: numberBic + accountNumber: '123456789' + bic: BOFAUS3NXXX + priority: wire + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-local-transfer-sepa: + summary: Make a SEPA funds transfer + description: Example request to make a US local funds transfer + value: + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + bankAccount: + accountHolder: + fullName: A. Klaassen + accountIdentification: + type: iban + iban: NL91ABNA0417164300 + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + post-transfers-payout-local-transfer-sepa-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 110000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + bankAccount: + accountHolder: + fullName: A. Klaassen + accountIdentification: + type: iban + iban: NL91ABNA0417164300 + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-local-transfer-us: + summary: Make a US local funds transfer + description: Example request to make a US local funds transfer + value: + amount: + value: 110000 + currency: USD + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + bankAccount: + accountHolder: + fullName: A. Klaassen + accountIdentification: + type: usLocal + accountNumber: '123456789' + routingNumber: 011000138 + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + post-transfers-payout-local-transfer-us-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 110000 + currency: USD + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + bankAccount: + accountHolder: + fullName: A. Klaassen + accountIdentification: + type: usLocal + accountNumber: '123456789' + routingNumber: 011000138 + priority: regular + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-to-balance-account: + summary: Transfer funds to another balance account + description: Example request to transfer funds to another balance account + value: + amount: + value: 10000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: internal + counterparty: + balanceAccountId: BA32272223222B5LPRFDW7J9G + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + post-transfers-payout-to-balance-account-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + currency: EUR + value: 10000 + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: internal + counterparty: + balanceAccountId: BA32272223222B5LPRFDW7J9G + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + direction: outgoing + reason: approved + status: authorised + post-transfers-payout-to-transfer-instrument: + summary: Pay out to a transfer instrument + description: Example request to pay out to a transfer instrument + value: + amount: + value: 80000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + transferInstrumentId: SE1234567890ABC1234567890 + priority: fast + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + post-transfers-payout-to-transfer-instrument-200: + summary: Response code - 200 OK + description: Example response for a transfers request + value: + id: 1W1UG35U8A9J5ZLG + amount: + value: 80000 + currency: EUR + balanceAccountId: BAB8B2C3D4E5F6G7H8D9J6GD4 + category: bank + counterparty: + transferInstrumentId: SE1234567890ABC1234567890 + priority: fast + referenceForBeneficiary: Your reference sent to the beneficiary + reference: Your internal reference for the transfer + description: Your description for the transfer + direction: outgoing + reason: approved + status: authorised diff --git a/yaml/Webhooks-v1.yaml b/yaml/Webhooks-v1.yaml index ec8f76c..f3c48a4 100644 --- a/yaml/Webhooks-v1.yaml +++ b/yaml/Webhooks-v1.yaml @@ -6,6 +6,7 @@ info: description: We use webhooks to send you notifications about payment status updates, newly available reports, and other events that you can subscribe to. For more information, refer to our [documentation](https://docs.adyen.com/development-resources/webhooks). + x-timestamp: '2022-05-03T09:24:07Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team @@ -1085,21 +1086,209 @@ components: - currency AuthorisationNotificationAdditionalData: properties: + PaymentAccountReference: + description: Reference of the payment account. + type: string + acquirerAccountCode: + description: The acquirer account code. + type: string + acquirerCode: + description: The acquirer code. + type: string + acquirerReference: + description: The acquirer reference. + type: string + acsRenderingType.acsInterface: + description: ACS interface. Related to 3DS. + type: string + acsRenderingType.acsUiTemplate: + description: ACS UI template. + type: string + alias: + description: Alias for this card. + type: string + aliasType: + description: Alias type. + type: string + arn: + description: Acquirer Reference Number of the dispute. + type: string authCode: - description: When the payment is authorised successfully, this fields holds - the authorisation code for the payment, otherwise it's empty. + description: Authcode of the scheme. + type: string + authenticationType: + description: 3DS authentication type + type: string + authorisationMid: + description: Authorisation MID of the acquirer. type: string authorisedAmountCurrency: - description: Currency of the authorised amount. + description: The currency authorised for a dynamic zero auth request. type: string authorisedAmountValue: - description: 'Value of the amount authorised. ' + description: The amount authorised for a dynamic zero auth request. + type: string + avsResult: + description: Address Verification Service result. + type: string + avsResultRaw: + description: Address Verification Service result raw. + type: string + bankAccountNumber: + description: The bank account number. + type: string + bankLocation: + description: The bank location. + type: string + bankLocationId: + description: The bank location ID. + type: string + bankName: + description: The bank name. + type: string + bankVerificationResult: + description: The bank verificaiton result. + type: string + bankVerificationResultRaw: + description: The bank verification result raw. + type: string + bic: + description: Business Identifier Code. + type: string + billingAddress.city: + description: 'BillingAddress: county.' + type: string + billingAddress.houseNumberOrName: + description: 'BillingAddress: house number or name.' + type: string + billingAddress.postalCode: + description: 'BillingAddress: postal code.' + type: string + billingAddress.stateOrProvince: + description: 'BillingAddress: state or province' + type: string + billingAddress.street: + description: 'BillingAddress: street' + type: string + browserCode: + description: Browser code. + type: string + captureDelayHours: + description: The amount of delay after authorisation. + type: string + captureMerchantReference: + description: The merchant reference of the capture. + type: string + capturePspReference: + description: The PSP reference of the capture. + type: string + cardBin: + description: Card Bank Identification number. + type: string + cardIssuingBank: + description: Card issuing bank. + type: string + cardIssuingCountry: + description: Card issuing country. + type: string + cardIssuingCurrency: + description: Card issuing currency. + type: string + cardPaymentMethod: + description: Card payment method. + type: string + cardSchemeEnhancedDataLevel: + description: Card scheme enhanced data level. type: string cardSummary: - description: Returns the last 4 digits of the credit card. + description: Card summary + type: string + cavv: + description: Secure Cardholder Authentication Verification Value. + type: string + cavvAlgorithm: + description: CAVV algorithm. + type: string + challengeCancel: + description: Information about the 3DS challenge being canceled. + type: string + checkoutSessionId: + description: ID of the Checkout Session. + type: string + cvcResult: + description: Card Verification Code result. + type: string + cvcResultRaw: + description: Card Verification Code result raw. + type: string + deliveryAddress.city: + description: 'Delivery address: city.' + type: string + deliveryAddress.country: + description: 'Delivery address: country.' + type: string + deliveryAddress.houseNumberOrName: + description: 'Delivery address: house number or name.' + type: string + deliveryAddress.postalCode: + description: 'Delivery address: postal code.' + type: string + deliveryAddress.stateOrProvince: + description: 'Delivery address: state or province.' + type: string + deliveryAddress.street: + description: 'Delivery address: street.' + type: string + deviceType: + description: Type of device the request was made from. + type: string + directdebit_GB.dateOfSignature: + description: 'Direct debit GB: date of signature.' + type: string + directdebit_GB.mandateId: + description: 'Direct debit GB: mandate ID.' + type: string + directdebit_GB.sequenceType: + description: 'Direct debit GB: sequence type.' + type: string + directdebit_GB.serviceUserName: + description: 'Direct debit GB: service user name.' + type: string + directdebit_GB.serviceUserNumber: + description: 'Direct debit GB: service user number.' + type: string + eci: + description: '3DS: Electronic Commerce Indicator.' type: string expiryDate: - description: Returns the card expiry date. + description: Expiry date of the card. + type: string + extraCostsCurrency: + description: Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification). + type: string + extraCostsValue: + description: Related additional cost value. + type: string + fraudCheck--: + description: Information on the fraud check in a dynamic format. + type: string + fraudManualReview: + description: Indicates if the risk check was done manually. + type: string + fraudOffset: + description: The fraud offset. + type: string + fraudResultType: + description: Result type of the fraud check. + type: string + fundingSource: + description: Funding source. + type: string + grossCurrency: + description: Chargeback gross currency. + type: string + grossValue: + description: Chargeback gross value. type: string iDealConsumerAccountNumber: description: Only included for iDeal payments. @@ -1122,15 +1311,102 @@ components: iDealTransactionId: description: Only included for iDeal payments. type: string + iban: + description: International Bank Account Number. + type: string + installments.value: + description: 'The number of installments that the payment amount should + be charged with. + + + Example: 5 + + > Only relevant for card payments in countries that support installments.' + type: string + interactionCounter: + description: 3DS interaction counter. + type: string + issuerComments.cardholderName: + description: Card holder name. + type: string + issuerCountry: + description: Country of the card issuer. + type: string + latestCard.bin: + description: 'Recurring: Latest card BIN.' + type: string + latestCard.expiryDate: + description: 'Recurring: Latest card expiry date.' + type: string + latestCard.summary: + description: 'Recurring: Latest card summary.' + type: string + liabilityShift: + description: Risk liability shift. + type: string + metadata: + additionalProperties: + type: string + description: 'A set of key-value pairs provided in the request, prefixed + with ''metadata.''. For example, ''metadata.myField: myValue''' + type: object + networkToken.available: + description: Recurring related. + type: string + networkToken.bin: + description: Recurring related. + type: string + networkToken.tokenSummary: + description: Recurring related. + type: string + nfc.expire: + description: NFC related. + type: string + nfc.issue: + description: NFC related. + type: string + nfc.pin.provided: + description: NFC related. + type: string + nfc.uid: + description: NFC related. + type: string opi.transToken: description: The transaction token to be used in your Oracle Opera integration. type: string + ownerCity: + description: Owner city. + type: string + ownerName: + description: Owner name. + type: string + payULatamTrazabilityCode: + description: Related to PayU in LATAM. + type: string + paymentLinkId: + description: ID of the Checkout payment link. + type: string + paypalAddressStatus: + description: Related to PayPal. + type: string + paypalBillingName: + description: Related to PayPal. + type: string paypalEmail: description: 'The buyer''s PayPal account email address. Example: paypaltest@adyen.com' type: string + paypalErrorCode: + description: Related to PayPal. + type: string + paypalErrorDescription: + description: Related to PayPal. + type: string + paypalPairingId: + description: Related to PayPal. + type: string paypalPayerId: description: 'The buyer''s PayPal ID. @@ -1149,12 +1425,55 @@ components: Example: unverified' type: string + paypalPhone: + description: Related to PayPal. + type: string paypalProtectionEligibility: description: 'The eligibility for PayPal Seller Protection for this payment. Example: Ineligible' type: string + paypalRisk: + description: Related to PayPal. + type: string + realtimeAccountUpdaterStatus: + description: Real time Account Update status. + type: string + recurring.contractTypes: + description: Recurring contract types. + type: string + recurring.firstPspReference: + description: Recurring first PSP reference. + type: string + recurring.recurringDetailReference: + description: recurring detail reference. + type: string + referred: + description: 'If the payment is referred, this field is set to true. + + + This field is unavailable if the payment is referred and is usually not + returned with ecommerce transactions. + + + Example: true' + type: string + refusalReasonRaw: + description: 'Raw refusal reason received from the acquirer, where available. + + + Example: AUTHORISED' + type: string + retry.rescueScheduled: + description: Indicates if an auto rescue for a pyment is scheduled. + type: string + riskProfile: + description: Related to Risk. + type: string + riskProfileReference: + description: Related to Risk. + type: string sepadirectdebit.dateOfSignature: description: 'The transaction signature date. @@ -1181,6 +1500,87 @@ components: Example: OOFF' type: string + shopperCountry: + description: Country of the shopper. + type: string + shopperIP: + description: IP of the shopper. + type: string + shopperInteraction: + description: 'The shopper interaction type of the payment request. + + + Example: Ecommerce' + type: string + shopperLocale: + description: The locale of the shopper. + type: string + shopperSocialSecurityNumber: + description: The social security number of the shopper. + type: string + shopperStatement: + description: The text to be shown on the shopper's bank statement. + type: string + shopperTelephone: + description: The telephone number of the shopper. + type: string + store: + description: Identifier of the store processing the transaction. + type: string + tenderReference: + description: Tender reference. For point-of-sale integrations only. + type: string + terminalId: + description: Terminal ID. For point-of-sale integrations only. + type: string + threeDAuthenticated: + description: 'A Boolean value indicating whether 3DS authentication was + completed on this payment. + + + Example: true' + type: string + threeDAuthenticatedResponse: + description: 'The raw 3DS authentication result from the card issuer. + + + Example: N' + type: string + threeDOffered: + description: 'A Boolean value indicating whether 3DS was offered for this + payment. + + + Example: true' + type: string + threeDOfferedResponse: + description: 'The raw enrollment result from the 3DS directory services + of the card schemes. + + + Example: Y' + type: string + threeDSVersion: + description: The 3D Secure 2 version. + type: string + tokenTxVariant: + description: Payment method variant of the token/wallet payment method. + type: string + totalFraudScore: + description: Total fraud score from risk. + type: string + untokenisedCardSummary: + description: Card summary without tokenization. + type: string + xid: + description: 'The 3DS transaction ID of the 3DS session sent in notifications. + The value is Base64-encoded and is returned for transactions with directoryResponse + ''N'' or ''Y''. If you want to submit the xid in your 3D Secure 1 request, + use the `mpiData.xid`, field. + + + Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' + type: string AuthorisationNotificationRequest: properties: live: @@ -1266,21 +1666,402 @@ components: - operations NotificationAdditionalData: properties: + PaymentAccountReference: + description: Reference of the payment account. + type: string + acquirerAccountCode: + description: The acquirer account code. + type: string + acquirerCode: + description: The acquirer code. + type: string + acquirerReference: + description: The acquirer reference. + type: string + acsRenderingType.acsInterface: + description: ACS interface. Related to 3DS. + type: string + acsRenderingType.acsUiTemplate: + description: ACS UI template. + type: string + alias: + description: Alias for this card. + type: string + aliasType: + description: Alias type. + type: string + arn: + description: Acquirer Reference Number of the dispute. + type: string authCode: - description: When the payment is authorised successfully, this fields holds - the authorisation code for the payment, otherwise it's empty. + description: Authcode of the scheme. + type: string + authenticationType: + description: 3DS authentication type + type: string + authorisationMid: + description: Authorisation MID of the acquirer. type: string authorisedAmountCurrency: - description: Currency of the authorised amount. + description: The currency authorised for a dynamic zero auth request. type: string authorisedAmountValue: - description: 'Value of the amount authorised. ' + description: The amount authorised for a dynamic zero auth request. + type: string + avsResult: + description: Address Verification Service result. + type: string + avsResultRaw: + description: Address Verification Service result raw. + type: string + bankAccountNumber: + description: The bank account number. + type: string + bankLocation: + description: The bank location. + type: string + bankLocationId: + description: The bank location ID. + type: string + bankName: + description: The bank name. + type: string + bankVerificationResult: + description: The bank verificaiton result. + type: string + bankVerificationResultRaw: + description: The bank verification result raw. + type: string + bic: + description: Business Identifier Code. + type: string + billingAddress.city: + description: 'BillingAddress: county.' + type: string + billingAddress.houseNumberOrName: + description: 'BillingAddress: house number or name.' + type: string + billingAddress.postalCode: + description: 'BillingAddress: postal code.' + type: string + billingAddress.stateOrProvince: + description: 'BillingAddress: state or province' + type: string + billingAddress.street: + description: 'BillingAddress: street' + type: string + browserCode: + description: Browser code. + type: string + captureDelayHours: + description: The amount of delay after authorisation. + type: string + captureMerchantReference: + description: The merchant reference of the capture. + type: string + capturePspReference: + description: The PSP reference of the capture. + type: string + cardBin: + description: Card Bank Identification number. + type: string + cardIssuingBank: + description: Card issuing bank. + type: string + cardIssuingCountry: + description: Card issuing country. + type: string + cardIssuingCurrency: + description: Card issuing currency. + type: string + cardPaymentMethod: + description: Card payment method. + type: string + cardSchemeEnhancedDataLevel: + description: Card scheme enhanced data level. type: string cardSummary: - description: Returns the last 4 digits of the credit card. + description: Card summary + type: string + cavv: + description: Secure Cardholder Authentication Verification Value. + type: string + cavvAlgorithm: + description: CAVV algorithm. + type: string + challengeCancel: + description: Information about the 3DS challenge being canceled. + type: string + checkoutSessionId: + description: ID of the Checkout Session. + type: string + cvcResult: + description: Card Verification Code result. + type: string + cvcResultRaw: + description: Card Verification Code result raw. + type: string + deliveryAddress.city: + description: 'Delivery address: city.' + type: string + deliveryAddress.country: + description: 'Delivery address: country.' + type: string + deliveryAddress.houseNumberOrName: + description: 'Delivery address: house number or name.' + type: string + deliveryAddress.postalCode: + description: 'Delivery address: postal code.' + type: string + deliveryAddress.stateOrProvince: + description: 'Delivery address: state or province.' + type: string + deliveryAddress.street: + description: 'Delivery address: street.' + type: string + deviceType: + description: Type of device the request was made from. + type: string + directdebit_GB.dateOfSignature: + description: 'Direct debit GB: date of signature.' + type: string + directdebit_GB.mandateId: + description: 'Direct debit GB: mandate ID.' + type: string + directdebit_GB.sequenceType: + description: 'Direct debit GB: sequence type.' + type: string + directdebit_GB.serviceUserName: + description: 'Direct debit GB: service user name.' + type: string + directdebit_GB.serviceUserNumber: + description: 'Direct debit GB: service user number.' + type: string + eci: + description: '3DS: Electronic Commerce Indicator.' type: string expiryDate: - description: Returns the card expiry date. + description: Expiry date of the card. + type: string + extraCostsCurrency: + description: Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification). + type: string + extraCostsValue: + description: Related additional cost value. + type: string + fraudCheck--: + description: Information on the fraud check in a dynamic format. + type: string + fraudManualReview: + description: Indicates if the risk check was done manually. + type: string + fraudOffset: + description: The fraud offset. + type: string + fraudResultType: + description: Result type of the fraud check. + type: string + fundingSource: + description: Funding source. + type: string + grossCurrency: + description: Chargeback gross currency. + type: string + grossValue: + description: Chargeback gross value. + type: string + iban: + description: International Bank Account Number. + type: string + installments.value: + description: 'The number of installments that the payment amount should + be charged with. + + + Example: 5 + + > Only relevant for card payments in countries that support installments.' + type: string + interactionCounter: + description: 3DS interaction counter. + type: string + issuerComments.cardholderName: + description: Card holder name. + type: string + issuerCountry: + description: Country of the card issuer. + type: string + latestCard.bin: + description: 'Recurring: Latest card BIN.' + type: string + latestCard.expiryDate: + description: 'Recurring: Latest card expiry date.' + type: string + latestCard.summary: + description: 'Recurring: Latest card summary.' + type: string + liabilityShift: + description: Risk liability shift. + type: string + metadata: + additionalProperties: + type: string + description: 'A set of key-value pairs provided in the request, prefixed + with ''metadata.''. For example, ''metadata.myField: myValue''' + type: object + networkToken.available: + description: Recurring related. + type: string + networkToken.bin: + description: Recurring related. + type: string + networkToken.tokenSummary: + description: Recurring related. + type: string + nfc.expire: + description: NFC related. + type: string + nfc.issue: + description: NFC related. + type: string + nfc.pin.provided: + description: NFC related. + type: string + nfc.uid: + description: NFC related. + type: string + opi.transToken: + description: Trans token related to Oracle Opera. + type: string + ownerCity: + description: Owner city. + type: string + ownerName: + description: Owner name. + type: string + payULatamTrazabilityCode: + description: Related to PayU in LATAM. + type: string + paymentLinkId: + description: ID of the Checkout payment link. + type: string + realtimeAccountUpdaterStatus: + description: Real time Account Update status. + type: string + recurring.contractTypes: + description: Recurring contract types. + type: string + recurring.firstPspReference: + description: Recurring first PSP reference. + type: string + recurring.recurringDetailReference: + description: recurring detail reference. + type: string + referred: + description: 'If the payment is referred, this field is set to true. + + + This field is unavailable if the payment is referred and is usually not + returned with ecommerce transactions. + + + Example: true' + type: string + refusalReasonRaw: + description: 'Raw refusal reason received from the acquirer, where available. + + + Example: AUTHORISED' + type: string + retry.rescueScheduled: + description: Indicates if an auto rescue for a pyment is scheduled. + type: string + riskProfile: + description: Related to Risk. + type: string + riskProfileReference: + description: Related to Risk. + type: string + shopperCountry: + description: Country of the shopper. + type: string + shopperIP: + description: IP of the shopper. + type: string + shopperInteraction: + description: 'The shopper interaction type of the payment request. + + + Example: Ecommerce' + type: string + shopperLocale: + description: The locale of the shopper. + type: string + shopperSocialSecurityNumber: + description: The social security number of the shopper. + type: string + shopperStatement: + description: The text to be shown on the shopper's bank statement. + type: string + shopperTelephone: + description: The telephone number of the shopper. + type: string + store: + description: Identifier of the store processing the transaction. + type: string + tenderReference: + description: Tender reference. For point-of-sale integrations only. + type: string + terminalId: + description: Terminal ID. For point-of-sale integrations only. + type: string + threeDAuthenticated: + description: 'A Boolean value indicating whether 3DS authentication was + completed on this payment. + + + Example: true' + type: string + threeDAuthenticatedResponse: + description: 'The raw 3DS authentication result from the card issuer. + + + Example: N' + type: string + threeDOffered: + description: 'A Boolean value indicating whether 3DS was offered for this + payment. + + + Example: true' + type: string + threeDOfferedResponse: + description: 'The raw enrollment result from the 3DS directory services + of the card schemes. + + + Example: Y' + type: string + threeDSVersion: + description: The 3D Secure 2 version. + type: string + tokenTxVariant: + description: Payment method variant of the token/wallet payment method. + type: string + totalFraudScore: + description: Total fraud score from risk. + type: string + untokenisedCardSummary: + description: Card summary without tokenization. + type: string + xid: + description: 'The 3DS transaction ID of the 3DS session sent in notifications. + The value is Base64-encoded and is returned for transactions with directoryResponse + ''N'' or ''Y''. If you want to submit the xid in your 3D Secure 1 request, + use the `mpiData.xid`, field. + + + Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string NotificationRequest: properties: @@ -1471,29 +2252,410 @@ components: - paymentMethod RecurringContractNotificationAdditionalData: properties: + PaymentAccountReference: + description: Reference of the payment account. + type: string + acquirerAccountCode: + description: The acquirer account code. + type: string + acquirerCode: + description: The acquirer code. + type: string + acquirerReference: + description: The acquirer reference. + type: string + acsRenderingType.acsInterface: + description: ACS interface. Related to 3DS. + type: string + acsRenderingType.acsUiTemplate: + description: ACS UI template. + type: string + alias: + description: Alias for this card. + type: string + aliasType: + description: Alias type. + type: string + arn: + description: Acquirer Reference Number of the dispute. + type: string authCode: - description: When the payment is authorised successfully, this fields holds - the authorisation code for the payment, otherwise it's empty. + description: Authcode of the scheme. + type: string + authenticationType: + description: 3DS authentication type + type: string + authorisationMid: + description: Authorisation MID of the acquirer. type: string authorisedAmountCurrency: - description: Currency of the authorised amount. + description: The currency authorised for a dynamic zero auth request. type: string authorisedAmountValue: - description: 'Value of the amount authorised. ' + description: The amount authorised for a dynamic zero auth request. + type: string + avsResult: + description: Address Verification Service result. + type: string + avsResultRaw: + description: Address Verification Service result raw. + type: string + bankAccountNumber: + description: The bank account number. + type: string + bankLocation: + description: The bank location. + type: string + bankLocationId: + description: The bank location ID. + type: string + bankName: + description: The bank name. + type: string + bankVerificationResult: + description: The bank verificaiton result. + type: string + bankVerificationResultRaw: + description: The bank verification result raw. + type: string + bic: + description: Business Identifier Code. + type: string + billingAddress.city: + description: 'BillingAddress: county.' + type: string + billingAddress.houseNumberOrName: + description: 'BillingAddress: house number or name.' + type: string + billingAddress.postalCode: + description: 'BillingAddress: postal code.' + type: string + billingAddress.stateOrProvince: + description: 'BillingAddress: state or province' + type: string + billingAddress.street: + description: 'BillingAddress: street' + type: string + browserCode: + description: Browser code. + type: string + captureDelayHours: + description: The amount of delay after authorisation. + type: string + captureMerchantReference: + description: The merchant reference of the capture. + type: string + capturePspReference: + description: The PSP reference of the capture. + type: string + cardBin: + description: Card Bank Identification number. + type: string + cardIssuingBank: + description: Card issuing bank. + type: string + cardIssuingCountry: + description: Card issuing country. + type: string + cardIssuingCurrency: + description: Card issuing currency. + type: string + cardPaymentMethod: + description: Card payment method. + type: string + cardSchemeEnhancedDataLevel: + description: Card scheme enhanced data level. type: string cardSummary: - description: Returns the last 4 digits of the credit card. + description: Card summary + type: string + cavv: + description: Secure Cardholder Authentication Verification Value. + type: string + cavvAlgorithm: + description: CAVV algorithm. + type: string + challengeCancel: + description: Information about the 3DS challenge being canceled. + type: string + checkoutSessionId: + description: ID of the Checkout Session. + type: string + cvcResult: + description: Card Verification Code result. + type: string + cvcResultRaw: + description: Card Verification Code result raw. + type: string + deliveryAddress.city: + description: 'Delivery address: city.' + type: string + deliveryAddress.country: + description: 'Delivery address: country.' + type: string + deliveryAddress.houseNumberOrName: + description: 'Delivery address: house number or name.' + type: string + deliveryAddress.postalCode: + description: 'Delivery address: postal code.' + type: string + deliveryAddress.stateOrProvince: + description: 'Delivery address: state or province.' + type: string + deliveryAddress.street: + description: 'Delivery address: street.' + type: string + deviceType: + description: Type of device the request was made from. + type: string + directdebit_GB.dateOfSignature: + description: 'Direct debit GB: date of signature.' + type: string + directdebit_GB.mandateId: + description: 'Direct debit GB: mandate ID.' + type: string + directdebit_GB.sequenceType: + description: 'Direct debit GB: sequence type.' + type: string + directdebit_GB.serviceUserName: + description: 'Direct debit GB: service user name.' + type: string + directdebit_GB.serviceUserNumber: + description: 'Direct debit GB: service user number.' + type: string + eci: + description: '3DS: Electronic Commerce Indicator.' type: string expiryDate: - description: Returns the card expiry date. + description: Expiry date of the card. + type: string + extraCostsCurrency: + description: Additional cost used in [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification). + type: string + extraCostsValue: + description: Related additional cost value. + type: string + fraudCheck--: + description: Information on the fraud check in a dynamic format. + type: string + fraudManualReview: + description: Indicates if the risk check was done manually. + type: string + fraudOffset: + description: The fraud offset. + type: string + fraudResultType: + description: Result type of the fraud check. + type: string + fundingSource: + description: Funding source. + type: string + grossCurrency: + description: Chargeback gross currency. + type: string + grossValue: + description: Chargeback gross value. + type: string + iban: + description: International Bank Account Number. + type: string + installments.value: + description: 'The number of installments that the payment amount should + be charged with. + + + Example: 5 + + > Only relevant for card payments in countries that support installments.' + type: string + interactionCounter: + description: 3DS interaction counter. + type: string + issuerComments.cardholderName: + description: Card holder name. + type: string + issuerCountry: + description: Country of the card issuer. + type: string + latestCard.bin: + description: 'Recurring: Latest card BIN.' + type: string + latestCard.expiryDate: + description: 'Recurring: Latest card expiry date.' + type: string + latestCard.summary: + description: 'Recurring: Latest card summary.' + type: string + liabilityShift: + description: Risk liability shift. + type: string + metadata: + additionalProperties: + type: string + description: 'A set of key-value pairs provided in the request, prefixed + with ''metadata.''. For example, ''metadata.myField: myValue''' + type: object + networkToken.available: + description: Recurring related. + type: string + networkToken.bin: + description: Recurring related. + type: string + networkToken.tokenSummary: + description: Recurring related. + type: string + nfc.expire: + description: NFC related. + type: string + nfc.issue: + description: NFC related. + type: string + nfc.pin.provided: + description: NFC related. + type: string + nfc.uid: + description: NFC related. + type: string + opi.transToken: + description: Trans token related to Oracle Opera. + type: string + ownerCity: + description: Owner city. + type: string + ownerName: + description: Owner name. + type: string + payULatamTrazabilityCode: + description: Related to PayU in LATAM. + type: string + paymentLinkId: + description: ID of the Checkout payment link. + type: string + realtimeAccountUpdaterStatus: + description: Real time Account Update status. + type: string + recurring.contractTypes: + description: Recurring contract types. + type: string + recurring.firstPspReference: + description: Recurring first PSP reference. + type: string + recurring.recurringDetailReference: + description: recurring detail reference. + type: string + referred: + description: 'If the payment is referred, this field is set to true. + + + This field is unavailable if the payment is referred and is usually not + returned with ecommerce transactions. + + + Example: true' + type: string + refusalReasonRaw: + description: 'Raw refusal reason received from the acquirer, where available. + + + Example: AUTHORISED' + type: string + retry.rescueScheduled: + description: Indicates if an auto rescue for a pyment is scheduled. + type: string + riskProfile: + description: Related to Risk. + type: string + riskProfileReference: + description: Related to Risk. + type: string + shopperCountry: + description: Country of the shopper. type: string shopperEmail: description: The shopper's email address. type: string + shopperIP: + description: IP of the shopper. + type: string + shopperInteraction: + description: 'The shopper interaction type of the payment request. + + + Example: Ecommerce' + type: string + shopperLocale: + description: The locale of the shopper. + type: string shopperReference: description: The ID that uniquely identifies the shopper. The `shopperReference` is the same as the `shopperReference` used in the initial payment. type: string + shopperSocialSecurityNumber: + description: The social security number of the shopper. + type: string + shopperStatement: + description: The text to be shown on the shopper's bank statement. + type: string + shopperTelephone: + description: The telephone number of the shopper. + type: string + store: + description: Identifier of the store processing the transaction. + type: string + tenderReference: + description: Tender reference. For point-of-sale integrations only. + type: string + terminalId: + description: Terminal ID. For point-of-sale integrations only. + type: string + threeDAuthenticated: + description: 'A Boolean value indicating whether 3DS authentication was + completed on this payment. + + + Example: true' + type: string + threeDAuthenticatedResponse: + description: 'The raw 3DS authentication result from the card issuer. + + + Example: N' + type: string + threeDOffered: + description: 'A Boolean value indicating whether 3DS was offered for this + payment. + + + Example: true' + type: string + threeDOfferedResponse: + description: 'The raw enrollment result from the 3DS directory services + of the card schemes. + + + Example: Y' + type: string + threeDSVersion: + description: The 3D Secure 2 version. + type: string + tokenTxVariant: + description: Payment method variant of the token/wallet payment method. + type: string + totalFraudScore: + description: Total fraud score from risk. + type: string + untokenisedCardSummary: + description: Card summary without tokenization. + type: string + xid: + description: 'The 3DS transaction ID of the 3DS session sent in notifications. + The value is Base64-encoded and is returned for transactions with directoryResponse + ''N'' or ''Y''. If you want to submit the xid in your 3D Secure 1 request, + use the `mpiData.xid`, field. + + + Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' + type: string RecurringContractNotificationRequest: properties: live: