Files
adyen-openapi/json/FundService-v6.json
2021-04-10 14:54:06 +02:00

1688 lines
74 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"openapi" : "3.0.3",
"servers" : [
{
"url" : "https://cal-test.adyen.com/cal/services/Fund/v6"
}
],
"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.\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 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://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance\n```",
"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"
],
"paths" : {
"/accountHolderBalance" : {
"post" : {
"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).",
"operationId" : "post-accountHolderBalance",
"x-groupName" : "General",
"x-sortIndex" : 1,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-accountHolderBalance-basic"
}
},
"schema" : {
"$ref" : "#/components/schemas/AccountHolderBalanceRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AccountHolderBalanceResponse"
}
}
},
"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."
}
}
}
},
"/accountHolderTransactionList" : {
"post" : {
"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.",
"operationId" : "post-accountHolderTransactionList",
"x-groupName" : "General",
"x-sortIndex" : 2,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-accountHolderTransactionList-basic"
},
"specific" : {
"$ref" : "#/components/examples/post-accountHolderTransactionList-specific"
}
},
"schema" : {
"$ref" : "#/components/schemas/AccountHolderTransactionListRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AccountHolderTransactionListResponse"
}
}
},
"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."
}
}
}
},
"/payoutAccountHolder" : {
"post" : {
"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.",
"operationId" : "post-payoutAccountHolder",
"x-groupName" : "General",
"x-sortIndex" : 3,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"oneOff" : {
"$ref" : "#/components/examples/post-payoutAccountHolder-oneOff"
}
},
"schema" : {
"$ref" : "#/components/schemas/PayoutAccountHolderRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/PayoutAccountHolderResponse"
}
}
},
"description" : "OK - the request has succeeded."
},
"202" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/PayoutAccountHolderResponse"
}
}
},
"description" : "Accepted - the request has been accepted for processing, but the processing has not been completed."
},
"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."
}
}
}
},
"/refundFundsTransfer" : {
"post" : {
"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. ",
"operationId" : "post-refundFundsTransfer",
"x-groupName" : "General",
"x-sortIndex" : 5,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-refundFundsTransfer-basic"
}
},
"schema" : {
"$ref" : "#/components/schemas/RefundFundsTransferRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RefundFundsTransferResponse"
}
}
},
"description" : "OK - the request has succeeded."
},
"202" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RefundFundsTransferResponse"
}
}
},
"description" : "Accepted - the request has been accepted for processing, but the processing has not been completed."
},
"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."
}
}
}
},
"/refundNotPaidOutTransfers" : {
"post" : {
"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.",
"operationId" : "post-refundNotPaidOutTransfers",
"x-groupName" : "General",
"x-sortIndex" : 7,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-refundNotPaidOutTransfers-basic"
}
},
"schema" : {
"$ref" : "#/components/schemas/RefundNotPaidOutTransfersRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RefundNotPaidOutTransfersResponse"
}
}
},
"description" : "OK - the request has succeeded."
},
"202" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RefundNotPaidOutTransfersResponse"
}
}
},
"description" : "Accepted - the request has been accepted for processing, but the processing has not been completed."
},
"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."
}
}
}
},
"/setupBeneficiary" : {
"post" : {
"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.",
"operationId" : "post-setupBeneficiary",
"x-groupName" : "General",
"x-sortIndex" : 6,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-setupBeneficiary-basic"
}
},
"schema" : {
"$ref" : "#/components/schemas/SetupBeneficiaryRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SetupBeneficiaryResponse"
}
}
},
"description" : "OK - the request has succeeded."
},
"202" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SetupBeneficiaryResponse"
}
}
},
"description" : "Accepted - the request has been accepted for processing, but the processing has not been completed."
},
"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."
}
}
}
},
"/transferFunds" : {
"post" : {
"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.",
"operationId" : "post-transferFunds",
"x-groupName" : "General",
"x-sortIndex" : 4,
"requestBody" : {
"content" : {
"application/json" : {
"examples" : {
"basic" : {
"$ref" : "#/components/examples/post-transferFunds-basic"
}
},
"schema" : {
"$ref" : "#/components/schemas/TransferFundsRequest"
}
}
}
},
"responses" : {
"200" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/TransferFundsResponse"
}
}
},
"description" : "OK - the request has succeeded."
},
"202" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/TransferFundsResponse"
}
}
},
"description" : "Accepted - the request has been accepted for processing, but the processing has not been completed."
},
"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" : {
"AccountDetailBalance" : {
"properties" : {
"accountCode" : {
"description" : "The code of the account that holds the balance.",
"type" : "string"
},
"detailBalance" : {
"description" : "Details of the balance held by the account.",
"$ref" : "#/components/schemas/DetailBalance"
}
}
},
"AccountHolderBalanceRequest" : {
"properties" : {
"accountHolderCode" : {
"description" : "The code of the Account Holder of which to retrieve the balance.",
"type" : "string"
}
},
"required" : [
"accountHolderCode"
]
},
"AccountHolderBalanceResponse" : {
"properties" : {
"balancePerAccount" : {
"description" : "A list of each account and their balances.",
"items" : {
"$ref" : "#/components/schemas/AccountDetailBalance"
},
"type" : "array"
},
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
},
"totalBalance" : {
"description" : "The total balance of the account holder.",
"$ref" : "#/components/schemas/DetailBalance"
}
}
},
"AccountHolderTransactionListRequest" : {
"properties" : {
"accountHolderCode" : {
"description" : "The code of the account holder that owns the account(s) of which retrieve the transaction list.",
"type" : "string"
},
"transactionListsPerAccount" : {
"description" : "A list of accounts to include in the transaction list. If left blank, the last fifty (50) transactions for all accounts of the account holder will be included.",
"items" : {
"$ref" : "#/components/schemas/TransactionListForAccount"
},
"type" : "array"
},
"transactionStatuses" : {
"description" : "A list of statuses to include in the transaction list. If left blank, all transactions will be included.\n>Permitted values:\n>* `PendingCredit` - a pending balance credit.\n>* `CreditFailed` - a pending credit failure; the balance will not be credited.\n>* `Credited` - a credited balance.\n>* `PendingDebit` - a pending balance debit (e.g., a refund).\n>* `CreditClosed` - a pending credit closed; the balance will not be credited.\n>* `CreditSuspended` - a pending credit closed; the balance will not be credited.\n>* `DebitFailed` - a pending debit failure; the balance will not be debited.\n>* `Debited` - a debited balance (e.g., a refund).\n>* `DebitReversedReceived` - a pending refund reversal.\n>* `DebitedReversed` - a reversed refund.\n>* `ChargebackReceived` - a received chargeback request.\n>* `Chargeback` - a processed chargeback.\n>* `ChargebackReversedReceived` - a pending chargeback reversal.\n>* `ChargebackReversed` - a reversed chargeback.\n>* `Converted` - converted.\n>* `ManualCorrected` - manual booking/adjustment by Adyen.\n>* `Payout` - a payout.\n>* `PayoutReversed` - a reversed payout.\n>* `PendingFundTransfer` - a pending transfer of funds from one account to another.\n>* `FundTransfer` - a transfer of funds from one account to another.",
"items" : {
"enum" : [
"Chargeback",
"ChargebackCorrection",
"ChargebackCorrectionReceived",
"ChargebackReceived",
"ChargebackReversed",
"ChargebackReversedCorrection",
"ChargebackReversedCorrectionReceived",
"ChargebackReversedReceived",
"Converted",
"CreditClosed",
"CreditFailed",
"CreditReversed",
"CreditReversedReceived",
"CreditSuspended",
"Credited",
"DebitFailed",
"DebitReversedReceived",
"Debited",
"DebitedReversed",
"DepositCorrectionCredited",
"DepositCorrectionDebited",
"Fee",
"FundTransfer",
"FundTransferReversed",
"InvoiceDeductionCredited",
"InvoiceDeductionDebited",
"ManualCorrected",
"ManualCorrectionCredited",
"ManualCorrectionDebited",
"MerchantPayin",
"MerchantPayinReversed",
"Payout",
"PayoutReversed",
"PendingCredit",
"PendingDebit",
"PendingFundTransfer",
"SecondChargeback",
"SecondChargebackReceived"
],
"type" : "string"
},
"type" : "array"
}
},
"required" : [
"accountHolderCode"
]
},
"AccountHolderTransactionListResponse" : {
"properties" : {
"accountTransactionLists" : {
"description" : "A list of the transactions.",
"items" : {
"$ref" : "#/components/schemas/AccountTransactionList"
},
"type" : "array"
},
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
}
}
},
"AccountTransactionList" : {
"properties" : {
"accountCode" : {
"description" : "The code of the account.",
"type" : "string"
},
"hasNextPage" : {
"description" : "Indicates whether there is a next page of transactions available.",
"type" : "boolean"
},
"transactions" : {
"description" : "The list of transactions.",
"items" : {
"$ref" : "#/components/schemas/Transaction"
},
"type" : "array"
}
}
},
"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"
]
},
"BankAccountDetail" : {
"properties" : {
"accountNumber" : {
"description" : "The bank account number (without separators).\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"accountType" : {
"description" : "The type of bank account.\nOnly applicable to bank accounts held in the USA.\nThe permitted values are: `checking`, `savings`.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"bankAccountName" : {
"description" : "The name of the bank account.",
"type" : "string"
},
"bankAccountReference" : {
"x-addedInVersion" : 5,
"description" : "Merchant reference to the bank account.",
"type" : "string"
},
"bankAccountUUID" : {
"description" : "The unique identifier (UUID) of the Bank Account.\n>If, during an account holder create or update request, this field is left blank (but other fields provided), a new Bank Account will be created with a procedurally-generated UUID.\n\n>If, during an account holder create request, a UUID is provided, the creation of the Bank Account will fail while the creation of the account holder will continue.\n\n>If, during an account holder update request, a UUID that is not correlated with an existing Bank Account is provided, the update of the account holder will fail.\n\n>If, during an account holder update request, a UUID that is correlated with an existing Bank Account is provided, the existing Bank Account will be updated.\n",
"type" : "string"
},
"bankBicSwift" : {
"description" : "The bank identifier code.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"bankCity" : {
"description" : "The city in which the bank branch is located.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"bankCode" : {
"description" : "The bank code of the banking institution with which the bank account is registered.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"bankName" : {
"description" : "The name of the banking institution with which the bank account is held.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"branchCode" : {
"description" : "The branch code of the branch under which the bank account is registered. The value to be specified in this parameter depends on the country of the bank account:\n* United States - Routing number\n* United Kingdom - Sort code\n* Germany - Bankleitzahl\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"checkCode" : {
"description" : "The check code of the bank account.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"countryCode" : {
"description" : "The two-letter country code in which the bank account is registered.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"currencyCode" : {
"description" : "The currency in which the bank account deals.\n>The permitted currency codes are defined in ISO-4217 (e.g. 'EUR').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"iban" : {
"description" : "The international bank account number.\n>The IBAN standard is defined in ISO-13616.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerCity" : {
"description" : "The city of residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerCountryCode" : {
"description" : "The country code of the country of residence of the bank account owner.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerDateOfBirth" : {
"description" : "The date of birth of the bank account owner.\n",
"type" : "string"
},
"ownerHouseNumberOrName" : {
"description" : "The house name or number of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerName" : {
"description" : "The name of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerNationality" : {
"description" : "The country code of the country of nationality of the bank account owner.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerPostalCode" : {
"description" : "The postal code of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerState" : {
"description" : "The state of residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"ownerStreet" : {
"description" : "The street name of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"primaryAccount" : {
"description" : "If set to true, the bank account is a primary account.",
"type" : "boolean"
},
"taxId" : {
"description" : "The tax ID number.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
},
"urlForVerification" : {
"description" : "The URL to be used for bank account verification.\nThis may be generated on bank account creation.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.",
"type" : "string"
}
}
},
"DetailBalance" : {
"properties" : {
"balance" : {
"description" : "The list of balances held by the account.",
"items" : {
"$ref" : "#/components/schemas/Amount"
},
"type" : "array"
},
"onHoldBalance" : {
"x-addedInVersion" : 5,
"description" : "The list of on hold balances held by the account.",
"items" : {
"$ref" : "#/components/schemas/Amount"
},
"type" : "array"
},
"pendingBalance" : {
"description" : "The list of pending balances held by the account.",
"items" : {
"$ref" : "#/components/schemas/Amount"
},
"type" : "array"
}
}
},
"ErrorFieldType" : {
"properties" : {
"errorCode" : {
"description" : "The validation error code.",
"format" : "int32",
"type" : "integer"
},
"errorDescription" : {
"description" : "A description of the validation error.",
"type" : "string"
},
"fieldType" : {
"description" : "The type of error field.",
"$ref" : "#/components/schemas/FieldType"
}
}
},
"FieldType" : {
"properties" : {
"field" : {
"description" : "The full name of the property.",
"type" : "string"
},
"fieldName" : {
"description" : "The type of the field.",
"enum" : [
"accountCode",
"accountHolderCode",
"accountHolderDetails",
"accountNumber",
"accountStateType",
"accountStatus",
"accountType",
"address",
"bankAccount",
"bankAccountCode",
"bankAccountName",
"bankAccountUUID",
"bankBicSwift",
"bankCity",
"bankCode",
"bankName",
"bankStatement",
"branchCode",
"businessContact",
"cardToken",
"checkCode",
"city",
"companyRegistration",
"constitutionalDocument",
"country",
"countryCode",
"currency",
"currencyCode",
"dateOfBirth",
"description",
"destinationAccountCode",
"document",
"documentExpirationDate",
"documentIssuerCountry",
"documentIssuerState",
"documentName",
"documentNumber",
"documentType",
"doingBusinessAs",
"drivingLicence",
"drivingLicenceBack",
"drivingLicense",
"email",
"firstName",
"formType",
"fullPhoneNumber",
"gender",
"hopWebserviceUser",
"houseNumberOrName",
"iban",
"idCard",
"idCardBack",
"idCardFront",
"idNumber",
"identityDocument",
"individualDetails",
"jobTitle",
"lastName",
"legalArrangement",
"legalArrangementCode",
"legalArrangementEntity",
"legalArrangementEntityCode",
"legalArrangementLegalForm",
"legalArrangementMember",
"legalArrangementName",
"legalArrangementReference",
"legalArrangementRegistrationNumber",
"legalArrangementTaxNumber",
"legalArrangementType",
"legalBusinessName",
"legalEntity",
"legalEntityType",
"merchantAccount",
"merchantCategoryCode",
"merchantReference",
"microDeposit",
"name",
"nationality",
"originalReference",
"ownerCity",
"ownerCountryCode",
"ownerHouseNumberOrName",
"ownerName",
"ownerPostalCode",
"ownerState",
"ownerStreet",
"passport",
"passportNumber",
"payoutMethodCode",
"personalData",
"phoneCountryCode",
"phoneNumber",
"postalCode",
"primaryCurrency",
"reason",
"registrationNumber",
"returnUrl",
"schedule",
"shareholder",
"shareholderCode",
"shareholderType",
"shopperInteraction",
"signatory",
"socialSecurityNumber",
"sourceAccountCode",
"splitAccount",
"splitCurrency",
"splitValue",
"splits",
"stateOrProvince",
"status",
"stockExchange",
"stockNumber",
"stockTicker",
"store",
"storeDetail",
"storeName",
"storeReference",
"street",
"taxId",
"tier",
"tierNumber",
"transferCode",
"unknown",
"value",
"verificationType",
"virtualAccount",
"visaNumber",
"webAddress",
"year"
],
"type" : "string"
},
"shareholderCode" : {
"description" : "The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.",
"type" : "string"
}
}
},
"PayoutAccountHolderRequest" : {
"properties" : {
"accountCode" : {
"description" : "The code of the account from which the payout is to be made.",
"type" : "string"
},
"accountHolderCode" : {
"description" : "The code of the Account Holder who owns the account from which the payout is to be made.\nThe Account Holder is the party to which the payout will be made.",
"type" : "string"
},
"amount" : {
"description" : "The amount to pay out.",
"$ref" : "#/components/schemas/Amount"
},
"bankAccountUUID" : {
"description" : "The unique ID of the Bank Account held by the Account Holder to which the payout is to be made.\nIf left blank, a bank account is automatically selected.",
"type" : "string"
},
"description" : {
"description" : "A description of the payout. Maximum 35 characters.\nAllowed: **abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/?:().,'+ \";**",
"maxLength" : 35,
"type" : "string"
},
"merchantReference" : {
"x-addedInVersion" : 2,
"description" : "A value that can be supplied at the discretion of the executing user in order to link multiple transactions to one another.",
"type" : "string"
},
"payoutMethodCode" : {
"x-addedInVersion" : 5,
"description" : "The unique ID of the payout method held by the Account Holder to which the payout is to be made.\nIf left blank, a payout instrument is automatically selected.",
"type" : "string"
},
"payoutSpeed" : {
"x-addedInVersion" : 5,
"default" : "STANDARD",
"description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.",
"enum" : [
"INSTANT",
"SAME_DAY",
"STANDARD"
],
"type" : "string"
}
},
"required" : [
"accountHolderCode",
"accountCode",
"amount"
]
},
"PayoutAccountHolderResponse" : {
"properties" : {
"bankAccountUUID" : {
"description" : "The unique ID of the Bank Account to which the payout was made.",
"type" : "string"
},
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"merchantReference" : {
"x-addedInVersion" : 2,
"description" : "The value supplied by the executing user when initiating the transfer; may be used to link multiple transactions.",
"type" : "string"
},
"payoutSpeed" : {
"x-addedInVersion" : 5,
"default" : "STANDARD",
"description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.",
"enum" : [
"INSTANT",
"SAME_DAY",
"STANDARD"
],
"type" : "string"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
}
}
},
"RefundFundsTransferRequest" : {
"properties" : {
"amount" : {
"description" : "The amount to be transferred.",
"$ref" : "#/components/schemas/Amount"
},
"merchantReference" : {
"description" : "A value that can be supplied at the discretion of the executing user in order to link multiple transactions to one another.",
"type" : "string"
},
"originalReference" : {
"description" : "A PSP reference of the original fund transfer.",
"type" : "string"
}
},
"required" : [
"originalReference",
"amount"
]
},
"RefundFundsTransferResponse" : {
"properties" : {
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"merchantReference" : {
"description" : "The value supplied by the executing user when initiating the transfer refund; may be used to link multiple transactions.",
"type" : "string"
},
"message" : {
"description" : "The message of the response.",
"type" : "string"
},
"originalReference" : {
"description" : "A PSP reference of the original fund transfer.",
"type" : "string"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
}
}
},
"RefundNotPaidOutTransfersRequest" : {
"properties" : {
"accountCode" : {
"description" : "The code of the account from which to perform the refund(s).",
"type" : "string"
},
"accountHolderCode" : {
"description" : "The code of the Account Holder which owns the account from which to perform the refund(s).",
"type" : "string"
}
},
"required" : [
"accountHolderCode",
"accountCode"
]
},
"RefundNotPaidOutTransfersResponse" : {
"properties" : {
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"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"
}
}
},
"SetupBeneficiaryRequest" : {
"properties" : {
"destinationAccountCode" : {
"description" : "The destination account code.",
"type" : "string"
},
"merchantReference" : {
"description" : "A value that can be supplied at the discretion of the executing user.",
"type" : "string"
},
"sourceAccountCode" : {
"description" : "The benefactor account.",
"type" : "string"
}
},
"required" : [
"sourceAccountCode",
"destinationAccountCode"
]
},
"SetupBeneficiaryResponse" : {
"properties" : {
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
}
}
},
"Transaction" : {
"properties" : {
"amount" : {
"description" : "The amount of the transaction.",
"$ref" : "#/components/schemas/Amount"
},
"bankAccountDetail" : {
"description" : "The details of the bank account to where a payout was made.",
"$ref" : "#/components/schemas/BankAccountDetail"
},
"captureMerchantReference" : {
"description" : "The merchant reference of a related capture.",
"type" : "string"
},
"capturePspReference" : {
"description" : "The psp reference of a related capture.",
"type" : "string"
},
"creationDate" : {
"description" : "The date on which the transaction was performed.",
"format" : "date-time",
"type" : "string"
},
"description" : {
"description" : "A description of the transaction.",
"type" : "string"
},
"destinationAccountCode" : {
"description" : "The code of the account to which funds were credited during an outgoing fund transfer.",
"type" : "string"
},
"disputePspReference" : {
"description" : "The psp reference of the related dispute.",
"type" : "string"
},
"disputeReasonCode" : {
"description" : "The reason code of a dispute.",
"type" : "string"
},
"merchantReference" : {
"description" : "The merchant reference of a transaction.",
"type" : "string"
},
"paymentPspReference" : {
"x-addedInVersion" : 3,
"description" : "The psp reference of the related authorisation or transfer.",
"type" : "string"
},
"payoutPspReference" : {
"x-addedInVersion" : 3,
"description" : "The psp reference of the related payout.",
"type" : "string"
},
"pspReference" : {
"description" : "The psp reference of a transaction.",
"type" : "string"
},
"sourceAccountCode" : {
"description" : "The code of the account from which funds were debited during an incoming fund transfer.",
"type" : "string"
},
"transactionStatus" : {
"description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `CreditSuspended`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.",
"enum" : [
"Chargeback",
"ChargebackCorrection",
"ChargebackCorrectionReceived",
"ChargebackReceived",
"ChargebackReversed",
"ChargebackReversedCorrection",
"ChargebackReversedCorrectionReceived",
"ChargebackReversedReceived",
"Converted",
"CreditClosed",
"CreditFailed",
"CreditReversed",
"CreditReversedReceived",
"CreditSuspended",
"Credited",
"DebitFailed",
"DebitReversedReceived",
"Debited",
"DebitedReversed",
"DepositCorrectionCredited",
"DepositCorrectionDebited",
"Fee",
"FundTransfer",
"FundTransferReversed",
"InvoiceDeductionCredited",
"InvoiceDeductionDebited",
"ManualCorrected",
"ManualCorrectionCredited",
"ManualCorrectionDebited",
"MerchantPayin",
"MerchantPayinReversed",
"Payout",
"PayoutReversed",
"PendingCredit",
"PendingDebit",
"PendingFundTransfer",
"SecondChargeback",
"SecondChargebackReceived"
],
"type" : "string"
},
"transferCode" : {
"description" : "The transfer code of the transaction.",
"type" : "string"
}
}
},
"TransactionListForAccount" : {
"properties" : {
"accountCode" : {
"description" : "The account for which to retrieve the transactions.",
"type" : "string"
},
"page" : {
"description" : "The page of transactions to retrieve.\nEach page lists fifty (50) transactions. The most recent transactions are included on page 1.",
"format" : "int32",
"type" : "integer"
}
},
"required" : [
"accountCode",
"page"
]
},
"TransferFundsRequest" : {
"properties" : {
"amount" : {
"description" : "The amount to be transferred.",
"$ref" : "#/components/schemas/Amount"
},
"destinationAccountCode" : {
"description" : "The code of the account to which the funds are to be credited.\n>The state of the Account Holder of this account must be Active.",
"type" : "string"
},
"merchantReference" : {
"x-addedInVersion" : 2,
"description" : "A value that can be supplied at the discretion of the executing user in order to link multiple transactions to one another.",
"type" : "string"
},
"sourceAccountCode" : {
"description" : "The code of the account from which the funds are to be debited.\n>The state of the Account Holder of this account must be Active and allow payouts.",
"type" : "string"
},
"transferCode" : {
"description" : "The code related to the type of transfer being performed.\n>The permitted codes differ for each platform account and are defined in their service level agreement.",
"type" : "string"
}
},
"required" : [
"sourceAccountCode",
"destinationAccountCode",
"transferCode",
"amount"
]
},
"TransferFundsResponse" : {
"properties" : {
"invalidFields" : {
"x-addedInVersion" : 5,
"description" : "Contains field validation errors that would prevent requests from being processed.",
"items" : {
"$ref" : "#/components/schemas/ErrorFieldType"
},
"type" : "array"
},
"merchantReference" : {
"x-addedInVersion" : 2,
"description" : "The value supplied by the executing user when initiating the transfer; may be used to link multiple transactions.",
"type" : "string"
},
"pspReference" : {
"description" : "The reference of a request. Can be used to uniquely identify the request.",
"type" : "string"
},
"resultCode" : {
"description" : "The result code.",
"type" : "string"
}
}
}
},
"securitySchemes" : {
"ApiKeyAuth" : {
"in" : "header",
"name" : "X-API-Key",
"type" : "apiKey"
},
"BasicAuth" : {
"scheme" : "basic",
"type" : "http"
}
},
"examples" : {
"post-accountHolderBalance-basic" : {
"summary" : "Review the account holder balance",
"value" : {
"accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER"
}
},
"post-accountHolderTransactionList-basic" : {
"summary" : "Retrieve transactions page by page",
"value" : {
"accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER",
"transactionListsPerAccount" : [
{
"accountCode" : "195752115",
"page" : 1
}
]
}
},
"post-accountHolderTransactionList-specific" : {
"summary" : "Retrieve transactions with specific statuses.",
"value" : {
"accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER",
"transactionStatuses" : [
"PendingCredit",
"Credited",
"Debited"
],
"transactionListsPerAccount" : [
{
"accountCode" : "2e64b396-1200-4474-b848-0cb06b52b3c7",
"page" : 2
}
]
}
},
"post-payoutAccountHolder-oneOff" : {
"summary" : "One-off payout",
"value" : {
"accountCode" : "118731451",
"amount" : {
"currency" : "EUR",
"value" : 99792
},
"accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER",
"description" : "12345 Test",
"bankAccountUUID" : "000b81aa-ae7e-4492-aa7e-72b2129dce0c"
}
},
"post-refundFundsTransfer-basic" : {
"summary" : "Refund the fund transfer",
"value" : {
"originalReference" : "PSP_REFERENCE_OF_TRANSFER_TO_REFUND",
"amount" : {
"currency" : "EUR",
"value" : 1000
},
"merchantReference" : "YOUR_REFERENCE_ID"
}
},
"post-refundNotPaidOutTransfers-basic" : {
"summary" : "Refund last transactions",
"value" : {
"accountHolderCode" : "CODE_OF_ACCOUNT_HOLDER",
"accountCode" : "189184578"
}
},
"post-setupBeneficiary-basic" : {
"summary" : "Set up a beneficiary",
"value" : {
"destinationAccountCode" : "128952522",
"merchantReference" : "YOUR_REFERENCE_ID",
"sourceAccountCode" : "134498192"
}
},
"post-transferFunds-basic" : {
"summary" : "Transfer funds from one account to another",
"value" : {
"sourceAccountCode" : "100000000",
"destinationAccountCode" : "190324759",
"amount" : {
"currency" : "EUR",
"value" : 2000
},
"transferCode" : "TransferCode_1"
}
}
}
}
}