Adyen Configuration API
The Configuration API enables you to create a platform where you can onboard your users as account holders and create balance accounts, cards, and business accounts.
The Configuration API enables you to create a platform where you can onboard your users as account holders and create balance accounts, cards, and business accounts.
openapi: 3.1.0
servers:
- url: https://balanceplatform-api-test.adyen.com/bcl/v2
info:
version: '2'
x-publicVersion: true
title: Adyen Configuration API
description: >-
The Configuration API enables you to create a platform where you can onboard
your users as account holders and create balance accounts, cards, and
business accounts.
termsOfService: https://www.adyen.com/legal/terms-and-conditions
contact:
name: Adyen Developer Experience team
url: https://github.com/Adyen/adyen-openapi
tags:
- name: accountHolders
- name: balanceAccounts
- name: balancePlatforms
- name: Cardorders
- name: grantAccounts
- name: grantOffers
- name: networkTokens
- name: paymentInstrumentGroups
- name: paymentInstruments
- name: Pins
- name: transactionRules
- name: transferRoutes
- name: validateBankAccountIdentification
paths:
/accountHolders:
post:
tags:
- accountHolders
summary: Adyen Create an Account Holder
description: >+
Creates an account holder linked to a [legal
entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities).
x-addedInVersion: '1'
operationId: post-accountHolders
x-sortIndex: 1
x-methodName: createAccountHolder
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createAccountHolder:
$ref: '#/components/examples/post-accountHolders-createAccountHolder'
schema:
$ref: '#/components/schemas/AccountHolderInfo'
responses:
'200':
content:
application/json:
examples:
createAccountHolder:
$ref: >-
#/components/examples/post-accountHolders-createAccountHolder-200
schema:
$ref: '#/components/schemas/AccountHolder'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/accountHolders/{id}:
get:
tags:
- accountHolders
summary: Adyen Get an Account Holder
description: Returns an account holder.
x-addedInVersion: '1'
operationId: get-accountHolders-id
x-sortIndex: 3
x-methodName: getAccountHolder
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the account holder.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-accountHolders-id-success-200'
schema:
$ref: '#/components/schemas/AccountHolder'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
patch:
tags:
- accountHolders
summary: Adyen Update an Account Holder
description: >-
Updates an account holder. When updating an account holder resource, if
a parameter is not provided in the request, it is left unchanged.
x-addedInVersion: '1'
operationId: patch-accountHolders-id
x-sortIndex: 2
x-methodName: updateAccountHolder
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
requestAccountHolderCapability:
$ref: >-
#/components/examples/patch-accountHolders-id-requestAccountHolderCapability
updateAccountHolderStatus:
$ref: >-
#/components/examples/patch-accountHolders-id-updateAccountHolderStatus
schema:
$ref: '#/components/schemas/AccountHolderUpdateRequest'
parameters:
- description: The unique identifier of the account holder.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
requestAccountHolderCapability:
$ref: >-
#/components/examples/patch-accountHolders-id-requestAccountHolderCapability-200
updateAccountHolderStatus:
$ref: >-
#/components/examples/patch-accountHolders-id-updateAccountHolderStatus-200
schema:
$ref: '#/components/schemas/AccountHolder'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/accountHolders/{id}/balanceAccounts:
get:
tags:
- accountHolders
summary: Adyen Get All Balance Accounts of an Account Holder
description: >-
Returns a paginated list of the balance accounts associated with an
account holder. To fetch multiple pages, use the query parameters.
For example, to limit the page to 5 balance accounts and skip the first
10, use `/accountHolders/{id}/balanceAccounts?limit=5&offset=10`.
x-addedInVersion: '1'
operationId: get-accountHolders-id-balanceAccounts
x-sortIndex: 4
x-methodName: getAllBalanceAccountsOfAccountHolder
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the account holder.
name: id
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-accountHolders-id-balanceAccounts-success-200
schema:
$ref: '#/components/schemas/PaginatedBalanceAccountsResponse'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/accountHolders/{id}/taxForms:
get:
tags:
- accountHolders
summary: Adyen 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/marketplaces-and-platforms/us-tax-forms/).
x-addedInVersion: '2'
operationId: get-accountHolders-id-taxForms
x-sortIndex: 5
x-methodName: getTaxForm
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the account holder.
name: id
in: path
required: true
schema:
type: string
- description: >-
The type of tax form you want to retrieve. Accepted values are
**US1099k** and **US1099nec**
name: formType
in: query
required: true
schema:
x-enum:
- value: US1099k
- value: US1099nec
enum:
- US1099k
- US1099nec
type: string
- description: The tax year in YYYY format for the tax form you want to retrieve
name: year
in: query
required: true
schema:
format: int32
type: integer
responses:
'200':
content:
application/json:
examples:
success:
$ref: >-
#/components/examples/get-accountHolders-id-taxForms-success-200
schema:
$ref: '#/components/schemas/GetTaxFormResponse'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/balanceAccounts:
post:
tags:
- balanceAccounts
summary: Adyen Create a Balance Account
description: >-
Creates a balance account that holds the funds of the associated account
holder.
x-addedInVersion: '1'
operationId: post-balanceAccounts
x-sortIndex: 1
x-methodName: createBalanceAccount
security:
- clientKey: []
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createBalanceAccount:
$ref: >-
#/components/examples/post-balanceAccounts-createBalanceAccount
schema:
$ref: '#/components/schemas/BalanceAccountInfo'
responses:
'200':
content:
application/json:
examples:
createBalanceAccount:
$ref: >-
#/components/examples/post-balanceAccounts-createBalanceAccount-200
schema:
$ref: '#/components/schemas/BalanceAccount'
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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/balanceAccounts/{balanceAccountId}/sweeps:
get:
tags:
- balanceAccounts
summary: Adyen 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-sortIndex: 7
x-methodName: getAllSweepsForBalanceAccount
security:
- clientKey: []
- 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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- balanceAccounts
summary: Adyen 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-sortIndex: 5
x-methodName: createSweep
security:
- clientKey: []
- 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
createSweep-push-priorities:
$ref: >-
#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-priorities
schema:
$ref: '#/components/schemas/CreateSweepConfigurationV2'
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
createSweep-push-priorities:
$ref: >-
#/components/examples/post-balanceAccounts-balanceAccountId-sweeps-createSweep-push-priorities-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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}:
delete:
tags:
- balanceAccounts
summary: Adyen Delete a Sweep
description: Deletes a sweep for a balance account.
x-addedInVersion: '2'
operationId: delete-balanceAccounts-balanceAccountId-sweeps-sweepId
x-sortIndex: 9
x-methodName: deleteSweep
security:
- clientKey: []
- 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 - look at the actual response code for the status of the
request.
'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.
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- balanceAccounts
summary: Adyen Get a Sweep
description: Returns a sweep.
x-addedInVersion: '2'
operationId: get-balanceAccounts-balanceAccountId-sweeps-sweepId
x-sortIndex: 8
x-methodName: getSweep
security:
- clientKey: []
- 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 coul
# --- truncated at 32 KB (345 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/adyen/refs/heads/main/openapi/configuration-openapi-original.yml