openapi: 3.1.0 info: version: '6' x-publicVersion: true title: Adyen Account acceptDispute transferFunds API description: "This API is used for the classic integration. If you are just starting your implementation, refer to our [new integration guide](https://docs.adyen.com/marketplaces-and-platforms) instead.\n\nThe 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/marketplaces-and-platforms/classic).\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: '2023-05-30T15:27:20Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team url: https://github.com/Adyen/adyen-openapi servers: - url: https://cal-test.adyen.com/cal/services/Account/v6 tags: - name: transferFunds paths: /transferFunds: post: tags: - transferFunds summary: Adyen 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 x-methodName: transferFunds security: - BasicAuth: [] - ApiKeyAuth: [] 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' examples: post-transferFunds200Example: summary: Default post-transferFunds 200 response x-microcks-default: true value: invalidFields: - example_value merchantReference: REF-001 pspReference: REF-001 resultCode: CODE123 description: OK - the request has succeeded. '202': content: application/json: schema: $ref: '#/components/schemas/TransferFundsResponse' examples: post-transferFunds202Example: summary: Default post-transferFunds 202 response x-microcks-default: true value: invalidFields: - example_value merchantReference: REF-001 pspReference: REF-001 resultCode: CODE123 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' examples: post-transferFunds400Example: summary: Default post-transferFunds 400 response x-microcks-default: true value: errorCode: CODE123 errorType: standard message: example_value pspReference: REF-001 status: 500 description: Bad Request - a problem reading or understanding the request. '401': content: application/json: schema: $ref: '#/components/schemas/ServiceError' examples: post-transferFunds401Example: summary: Default post-transferFunds 401 response x-microcks-default: true value: errorCode: CODE123 errorType: standard message: example_value pspReference: REF-001 status: 500 description: Unauthorized - authentication required. '403': content: application/json: schema: $ref: '#/components/schemas/ServiceError' examples: post-transferFunds403Example: summary: Default post-transferFunds 403 response x-microcks-default: true value: errorCode: CODE123 errorType: standard message: example_value pspReference: REF-001 status: 500 description: Forbidden - insufficient permissions to process the request. '422': content: application/json: schema: $ref: '#/components/schemas/ServiceError' examples: post-transferFunds422Example: summary: Default post-transferFunds 422 response x-microcks-default: true value: errorCode: CODE123 errorType: standard message: example_value pspReference: REF-001 status: 500 description: Unprocessable Entity - a request validation error. '500': content: application/json: schema: $ref: '#/components/schemas/ServiceError' examples: post-transferFunds500Example: summary: Default post-transferFunds 500 response x-microcks-default: true value: errorCode: CODE123 errorType: standard message: example_value pspReference: REF-001 status: 500 description: Internal Server Error - the server could not process the request. x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: 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' type: object 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 type: object 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. >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. >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. >The permitted codes differ for each platform account and are defined in their service level agreement.' type: string required: - sourceAccountCode - destinationAccountCode - transferCode - amount type: object 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 - balanceAccount - balanceAccountActive - balanceAccountCode - balanceAccountId - bankAccount - bankAccountCode - bankAccountName - bankAccountUUID - bankBicSwift - bankCity - bankCode - bankName - bankStatement - branchCode - businessContact - cardToken - checkCode - city - companyRegistration - constitutionalDocument - controller - country - countryCode - currency - currencyCode - dateOfBirth - description - destinationAccountCode - document - documentContent - documentExpirationDate - documentIssuerCountry - documentIssuerState - documentName - documentNumber - documentType - doingBusinessAs - drivingLicence - drivingLicenceBack - drivingLicenceFront - drivingLicense - email - firstName - formType - fullPhoneNumber - gender - hopWebserviceUser - houseNumberOrName - iban - idCard - idCardBack - idCardFront - idNumber - identityDocument - individualDetails - infix - jobTitle - lastName - lastReviewDate - legalArrangement - legalArrangementCode - legalArrangementEntity - legalArrangementEntityCode - legalArrangementLegalForm - legalArrangementMember - legalArrangementMembers - legalArrangementName - legalArrangementReference - legalArrangementRegistrationNumber - legalArrangementTaxNumber - legalArrangementType - legalBusinessName - legalEntity - legalEntityType - logo - merchantAccount - merchantCategoryCode - merchantHouseNumber - merchantReference - microDeposit - name - nationality - originalReference - ownerCity - ownerCountryCode - ownerDateOfBirth - ownerHouseNumberOrName - ownerName - ownerPostalCode - ownerState - ownerStreet - passport - passportNumber - payoutMethod - payoutMethodCode - payoutSchedule - pciSelfAssessment - personalData - phoneCountryCode - phoneNumber - postalCode - primaryCurrency - reason - registrationNumber - returnUrl - schedule - shareholder - shareholderCode - shareholderCodeAndSignatoryCode - shareholderCodeOrSignatoryCode - shareholderType - shareholderTypes - shopperInteraction - signatory - signatoryCode - socialSecurityNumber - sourceAccountCode - splitAccount - splitConfigurationUUID - splitCurrency - splitValue - splits - stateOrProvince - status - stockExchange - stockNumber - stockTicker - store - storeDetail - storeName - storeReference - street - taxId - tier - tierNumber - transferCode - ultimateParentCompany - ultimateParentCompanyAddressDetails - ultimateParentCompanyAddressDetailsCountry - ultimateParentCompanyBusinessDetails - ultimateParentCompanyBusinessDetailsLegalBusinessName - ultimateParentCompanyBusinessDetailsRegistrationNumber - ultimateParentCompanyCode - ultimateParentCompanyStockExchange - ultimateParentCompanyStockNumber - ultimateParentCompanyStockNumberOrStockTicker - ultimateParentCompanyStockTicker - 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 type: object 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 type: object 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 type: object examples: post-transferFunds-basic: summary: Transfer funds from one account to another value: sourceAccountCode: '100000000' destinationAccountCode: '190324759' amount: currency: EUR value: 2000 transferCode: TransferCode_1 securitySchemes: ApiKeyAuth: in: header name: X-API-Key type: apiKey BasicAuth: scheme: basic type: http x-groups: - Account holders - Accounts - Verification