Adyen debitAccountHolder API

The debitAccountHolder API from Adyen — 1 operation(s) for debitaccountholder.

Documentation

📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/configure-notifications/
📖
Documentation
https://docs.adyen.com/api-explorer/Account/6/overview
📖
Documentation
https://docs.adyen.com/development-resources/webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/BalanceControl/1/overview
📖
Documentation
https://docs.adyen.com/api-explorer/BinLookup/52/overview
📖
Documentation
https://docs.adyen.com/api-explorer/Checkout/71/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform/2/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/development-resources/data-protection-api/
📖
Documentation
https://docs.adyen.com/risk-management/disputes-api
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/fund-transfer/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/collect-verification-details/hosted/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/legal-entity-management-api/
📖
Documentation
https://docs.adyen.com/api-explorer/Management/3/overview
📖
Documentation
https://docs.adyen.com/api-explorer/management-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/notifications
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/notifications/
📖
Documentation
https://docs.adyen.com/online-payments/
📖
Documentation
https://docs.adyen.com/online-payments/online-payouts
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/
📖
Documentation
https://docs.adyen.com/online-payments/tokenization
📖
Documentation
https://docs.adyen.com/api-explorer/report-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/payment-methods/gift-cards/stored-value-api/
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/terminal-api-reference/
📖
Documentation
https://docs.adyen.com/development-resources/testing/create-test-cards
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/business-accounts/transactions/transaction-webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/transfer-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/payout-to-users/on-demand-payouts
📖
Documentation
https://docs.adyen.com/development-resources/webhooks

Specifications

Other Resources

OpenAPI Specification

adyen-debitaccountholder-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: '6'
  x-publicVersion: true
  title: Adyen Account acceptDispute debitAccountHolder 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: debitAccountHolder
paths:
  /debitAccountHolder:
    post:
      tags:
      - debitAccountHolder
      summary: Adyen 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/marketplaces-and-platforms/classic/top-up-accounts)."
      operationId: post-debitAccountHolder
      x-groupName: General
      x-sortIndex: 8
      x-methodName: debitAccountHolder
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      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.
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DebitAccountHolderResponse'
              examples:
                post-debitAccountHolder202Example:
                  summary: Default post-debitAccountHolder 202 response
                  x-microcks-default: true
                  value:
                    accountHolderCode: CODE123
                    bankAccountUUID: '500123'
                    invalidFields:
                    - example_value
                    merchantReferences:
                    - 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-debitAccountHolder400Example:
                  summary: Default post-debitAccountHolder 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-debitAccountHolder401Example:
                  summary: Default post-debitAccountHolder 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-debitAccountHolder403Example:
                  summary: Default post-debitAccountHolder 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-debitAccountHolder422Example:
                  summary: Default post-debitAccountHolder 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-debitAccountHolder500Example:
                  summary: Default post-debitAccountHolder 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
    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
    DebitAccountHolderRequest:
      properties:
        accountHolderCode:
          description: The code of the account holder.
          type: string
        amount:
          description: The amount to be debited from the account holder's bank account.
          $ref: '#/components/schemas/Amount'
        bankAccountUUID:
          description: The Adyen-generated unique alphanumeric identifier (UUID) of the account holder's bank account.
          type: string
        description:
          description: 'A description of the direct debit. Maximum length: 35 characters.


            Allowed characters: **a-z**, **A-Z**, **0-9**, and special characters **/?:().,''+ ";**.'
          maxLength: 35
          type: string
        merchantAccount:
          description: Your merchant account.
          type: string
        splits:
          description: Contains instructions on how to split the funds between the accounts in your platform. The request must have at least one split item.
          items:
            $ref: '#/components/schemas/Split'
          type: array
      required:
      - accountHolderCode
      - bankAccountUUID
      - amount
      - splits
      - merchantAccount
      type: object
    DebitAccountHolderResponse:
      properties:
        accountHolderCode:
          description: The code of the account holder.
          type: string
        bankAccountUUID:
          description: The Adyen-generated unique alphanumeric identifier (UUID) of the account holder's bank account.
          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
        merchantReferences:
          description: List of the `reference` values from the `split` array in the request.
          items:
            type: string
          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
      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
    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**, **Surcharge**, **Tip**.'
          enum:
          - BalanceAccount
          - Commission
          - Default
          - MarketPlace
          - PaymentFee
          - PaymentFeeAcquiring
          - PaymentFeeAdyen
          - PaymentFeeAdyenCommission
          - PaymentFeeAdyenMarkup
          - PaymentFeeInterchange
          - PaymentFeeSchemeFee
          - Remainder
          - Surcharge
          - Tip
          - VAT
          - Verification
          type: string
      required:
      - amount
      - type
      type: object
    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
      type: object
  examples:
    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'
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: X-API-Key
      type: apiKey
    BasicAuth:
      scheme: basic
      type: http
x-groups:
- Account holders
- Accounts
- Verification