Files
adyen-openapi/yaml/BalancePlatformService-v1.yaml
Adyen Automation f2e3037f6e spec release
2022-10-28 11:58:20 +00:00

5546 lines
205 KiB
YAML

openapi: 3.1.0
servers:
- url: https://balanceplatform-api-test.adyen.com/bcl/v1
info:
version: '1'
x-publicVersion: true
title: 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.\n\n## Authentication\nYour Adyen contact will provide your\
\ API credential and an API key. To connect to the API, add an `X-API-Key` header\
\ with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type:\
\ application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively,\
\ you can use the username and password to connect to the API using basic authentication.\
\ For example:\n\n```\ncurl\n-H \"Content-Type: application/json\" \\\n-U \"ws@BalancePlatform.YOUR_BALANCE_PLATFORM\"\
:\"YOUR_WS_PASSWORD\" \\\n...\n```\n## Versioning\nThe Configuration API supports\
\ [versioning](https://docs.adyen.com/development-resources/versioning) using\
\ a version suffix in the endpoint URL. This suffix has the following format:\
\ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://balanceplatform-api-test.adyen.com/bcl/v1/accountHolders\n\
```\n## Going live\nWhen going live, your Adyen contact will provide your API\
\ credential for the live environment. You can then use the API key or the username\
\ and password to send requests to `https://balanceplatform-api-live.adyen.com/bcl/v1`."
x-timestamp: '2022-10-04T15:24:00Z'
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:
- Platform
- Account holders
- Balance accounts
- Payment instruments
- Payment instrument groups
- Transaction rules
- Legal entities
- Transfer instruments
- Documents
tags:
- name: Platform
- name: Payment instrument groups
- name: Account holders
- name: Payment instruments
- name: Balance accounts
- name: Transaction rules
- name: Legal entities
- name: Documents
- name: Transfer instruments
paths:
/accountHolders:
post:
tags:
- Account holders
summary: 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-groupName: Account holders
x-sortIndex: 1
security:
- 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.
/accountHolders/{id}:
get:
tags:
- Account holders
summary: Get an account holder
description: Returns an account holder.
x-addedInVersion: '1'
operationId: get-accountHolders-id
x-groupName: Account holders
x-sortIndex: 3
security:
- 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.
patch:
tags:
- Account holders
summary: 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-groupName: Account holders
x-sortIndex: 2
security:
- 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/AccountHolder'
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.
/accountHolders/{id}/balanceAccounts:
get:
tags:
- Account holders
summary: 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. \n\
\nFor 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-groupName: Account holders
x-sortIndex: 4
security:
- 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.
/balanceAccounts:
post:
tags:
- Balance accounts
summary: 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-groupName: Balance accounts
x-sortIndex: 1
security:
- 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.
/balanceAccounts/{id}:
get:
tags:
- Balance accounts
summary: Get a balance account
description: Returns a balance account.
x-addedInVersion: '1'
operationId: get-balanceAccounts-id
x-groupName: Balance accounts
x-sortIndex: 3
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the balance account.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-balanceAccounts-id-success-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.
patch:
tags:
- Balance accounts
summary: Update a balance account
description: Updates a balance account.
x-addedInVersion: '1'
operationId: patch-balanceAccounts-id
x-groupName: Balance accounts
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BalanceAccountUpdateRequest'
parameters:
- description: The unique identifier of the balance account.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
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.
/balanceAccounts/{id}/paymentInstruments:
get:
tags:
- Balance accounts
summary: Get all payment instruments for a balance account
description: "Returns a paginated list of the payment instruments associated\
\ with a balance account. \n\nTo fetch multiple pages, use the query parameters.For\
\ example, to limit the page to 3 payment instruments and to skip the first\
\ 6, use `/balanceAccounts/{id}/paymentInstruments?limit=3&offset=6`."
x-addedInVersion: '1'
operationId: get-balanceAccounts-id-paymentInstruments
x-groupName: Balance accounts
x-sortIndex: 4
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the balance account.
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-balanceAccounts-id-paymentInstruments-success-200'
schema:
$ref: '#/components/schemas/PaginatedPaymentInstrumentsResponse'
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.
/balancePlatforms/{id}:
get:
tags:
- Platform
summary: Get a balance platform
description: Returns a balance platform.
x-addedInVersion: '1'
operationId: get-balancePlatforms-id
x-groupName: Platform
x-sortIndex: 1
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the balance platform.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-balancePlatforms-id-success-200'
schema:
$ref: '#/components/schemas/BalancePlatform'
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.
/balancePlatforms/{id}/accountHolders:
get:
tags:
- Platform
summary: Get all account holders under a balance platform
description: "Returns a paginated list of all the account holders that belong\
\ to the balance platform. To fetch multiple pages, use the query parameters.\
\ \n\nFor example, to limit the page to 5 account holders and to skip the\
\ first 20, use `/balancePlatforms/{id}/accountHolders?limit=5&offset=20`."
x-addedInVersion: '1'
operationId: get-balancePlatforms-id-accountHolders
x-groupName: Platform
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the balance platform.
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-balancePlatforms-id-accountHolders-success-200'
schema:
$ref: '#/components/schemas/PaginatedAccountHoldersResponse'
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.
/documents:
post:
tags:
- Documents
summary: Upload a document for verification checks
description: "Uploads a document for verification checks.\n\n Adyen uses the\
\ information from the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities)\
\ to run automated verification checks. If these checks fail, you will be\
\ notified to provide additional documents.\n\n You should only upload documents\
\ when Adyen requests additional information for the legal entity. "
x-addedInVersion: '1'
operationId: post-documents
x-groupName: Documents
x-sortIndex: 4
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
/documents/{id}:
delete:
tags:
- Documents
summary: Delete a document
description: Deletes a document.
x-addedInVersion: '1'
operationId: delete-documents-id
x-groupName: Documents
x-sortIndex: 7
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the document to be deleted.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VoidResponse'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
get:
tags:
- Documents
summary: Get a document
description: Returns a document.
x-addedInVersion: '1'
operationId: get-documents-id
x-groupName: Documents
x-sortIndex: 5
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the document.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
patch:
tags:
- Documents
summary: Update a document
description: Updates a document.
x-addedInVersion: '1'
operationId: patch-documents-id
x-groupName: Documents
x-sortIndex: 6
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
parameters:
- description: The unique identifier of the document to be updated.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Document'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
/legalEntities:
post:
tags:
- Legal entities
summary: Create a legal entity
description: "Creates a legal entity. \n\nThis resource contains information\
\ about the user that will be onboarded in your platform. Adyen uses this\
\ information to perform verification checks as required by payment industry\
\ regulations. Adyen informs you of the verification results through webhooks\
\ or API responses. \n\n"
x-addedInVersion: '1'
operationId: post-legalEntities
x-groupName: Legal entities
x-sortIndex: 1
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createLegalEntityIndividualNL:
$ref: '#/components/examples/post-legalEntities-createLegalEntityIndividualNL'
createLegalEntityIndividualUS:
$ref: '#/components/examples/post-legalEntities-createLegalEntityIndividualUS'
createLegalEntityOrganizationNL:
$ref: '#/components/examples/post-legalEntities-createLegalEntityOrganizationNL'
createLegalEntityOrganizationUS:
$ref: '#/components/examples/post-legalEntities-createLegalEntityOrganizationUS'
schema:
$ref: '#/components/schemas/LegalEntityInfo'
responses:
'200':
content:
application/json:
examples:
createLegalEntityIndividualNL:
$ref: '#/components/examples/post-legalEntities-createLegalEntityIndividualNL-200'
createLegalEntityIndividualUS:
$ref: '#/components/examples/post-legalEntities-createLegalEntityIndividualUS-200'
createLegalEntityOrganizationNL:
$ref: '#/components/examples/post-legalEntities-createLegalEntityOrganizationNL-200'
createLegalEntityOrganizationUS:
$ref: '#/components/examples/post-legalEntities-createLegalEntityOrganizationUS-200'
schema:
$ref: '#/components/schemas/LegalEntity'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
/legalEntities/{id}:
get:
tags:
- Legal entities
summary: Get a legal entity
description: Returns a legal entity.
x-addedInVersion: '1'
operationId: get-legalEntities-id
x-groupName: Legal entities
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the legal entity.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LegalEntity'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
patch:
tags:
- Legal entities
summary: Update a legal entity
description: "Updates a legal entity.\n\n >To update the `entityAssociations`\
\ array, you need to replace the entire array. For example, if the array has\
\ 3 entries and you want to remove 1 entry, you need to PATCH the resource\
\ with the remaining 2 entries."
x-addedInVersion: '1'
operationId: patch-legalEntities-id
x-groupName: Legal entities
x-sortIndex: 3
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GenericEntityInfo'
parameters:
- description: The unique identifier of the legal entity.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/LegalEntity'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
/paymentInstrumentGroups:
post:
tags:
- Payment instrument groups
summary: Create a payment instrument group
description: Creates a payment instrument group to associate and group payment
instrument resources together. You can apply a transaction rule to a payment
instrument group.
x-addedInVersion: '1'
operationId: post-paymentInstrumentGroups
x-groupName: Payment instrument groups
x-sortIndex: 1
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createPaymentInstrumentGroups:
$ref: '#/components/examples/post-paymentInstrumentGroups-createPaymentInstrumentGroups'
schema:
$ref: '#/components/schemas/PaymentInstrumentGroupInfo'
responses:
'200':
content:
application/json:
examples:
createPaymentInstrumentGroups:
$ref: '#/components/examples/post-paymentInstrumentGroups-createPaymentInstrumentGroups-200'
schema:
$ref: '#/components/schemas/PaymentInstrumentGroup'
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.
/paymentInstrumentGroups/{id}:
get:
tags:
- Payment instrument groups
summary: Get a payment instrument group
description: Returns the details of a payment instrument group.
x-addedInVersion: '1'
operationId: get-paymentInstrumentGroups-id
x-groupName: Payment instrument groups
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the payment instrument group.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-paymentInstrumentGroups-id-success-200'
schema:
$ref: '#/components/schemas/PaymentInstrumentGroup'
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.
/paymentInstrumentGroups/{id}/transactionRules:
get:
tags:
- Payment instrument groups
summary: Get all transaction rules for a payment instrument group
description: Returns a list of all the transaction rules associated with a payment
instrument group.
x-addedInVersion: '1'
operationId: get-paymentInstrumentGroups-id-transactionRules
x-groupName: Payment instrument groups
x-sortIndex: 3
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the payment instrument group.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-paymentInstrumentGroups-id-transactionRules-success-200'
schema:
$ref: '#/components/schemas/TransactionRulesResponse'
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.
/paymentInstruments:
post:
tags:
- Payment instruments
summary: Create a payment instrument
description: "Creates a payment instrument to issue a physical card, a virtual\
\ card, or a business account to your user.\n\n For more information, refer\
\ to [Issue cards](https://docs.adyen.com/issuing/create-cards) or [Issue\
\ business accounts](https://docs.adyen.com/marketplaces-and-platforms/business-accounts)."
x-addedInVersion: '1'
operationId: post-paymentInstruments
x-groupName: Payment instruments
x-sortIndex: 11
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createBusinessAccount:
$ref: '#/components/examples/post-paymentInstruments-createBusinessAccount'
createPhysicalCard:
$ref: '#/components/examples/post-paymentInstruments-createPhysicalCard'
createVirtualCard:
$ref: '#/components/examples/post-paymentInstruments-createVirtualCard'
schema:
$ref: '#/components/schemas/PaymentInstrumentInfo'
responses:
'200':
content:
application/json:
examples:
createBusinessAccount:
$ref: '#/components/examples/post-paymentInstruments-createBusinessAccount-200'
createPhysicalCard:
$ref: '#/components/examples/post-paymentInstruments-createPhysicalCard-200'
createVirtualCard:
$ref: '#/components/examples/post-paymentInstruments-createVirtualCard-200'
schema:
$ref: '#/components/schemas/PaymentInstrument'
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.
/paymentInstruments/{id}:
get:
tags:
- Payment instruments
summary: Get a payment instrument
description: Returns the details of a payment instrument.
x-addedInVersion: '1'
operationId: get-paymentInstruments-id
x-groupName: Payment instruments
x-sortIndex: 13
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the payment instrument.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-paymentInstruments-id-success-200'
schema:
$ref: '#/components/schemas/PaymentInstrument'
description: OK - the request has succeeded.
'400':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-400'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-401'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-403'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-422'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-500'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Internal Server Error - the server could not process the request.
patch:
tags:
- Payment instruments
summary: Update a payment instrument
description: Updates a payment instrument. Once a payment instrument is already
active, you can only update its status. However, for cards created with **inactive**
status, you can still update the balance account associated with the card.
x-addedInVersion: '1'
operationId: patch-paymentInstruments-id
x-groupName: Payment instruments
x-sortIndex: 12
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
updatePaymentInstrumentBalanceAccount:
$ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount'
updatePaymentInstrumentStatus:
$ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentStatus'
schema:
$ref: '#/components/schemas/PaymentInstrumentUpdateRequest'
parameters:
- description: The unique identifier of the payment instrument.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
updatePaymentInstrumentBalanceAccount:
$ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200'
updatePaymentInstrumentStatus:
$ref: '#/components/examples/patch-paymentInstruments-id-updatePaymentInstrumentStatus-200'
schema:
$ref: '#/components/schemas/PaymentInstrument'
description: OK - the request has succeeded.
'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.
/paymentInstruments/{id}/transactionRules:
get:
tags:
- Payment instruments
summary: Get all transaction rules for a payment instrument
description: Returns a list of transaction rules associated with a payment instrument.
x-addedInVersion: '1'
operationId: get-paymentInstruments-id-transactionRules
x-groupName: Payment instruments
x-sortIndex: 14
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the payment instrument.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-paymentInstruments-id-transactionRules-success-200'
schema:
$ref: '#/components/schemas/TransactionRulesResponse'
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.
/transactionRules:
post:
tags:
- Transaction rules
summary: Create a transaction rule
description: Creates a [transaction rule](https://docs.adyen.com/issuing/transaction-rules).
When your user makes a transaction with their Adyen-issued card, the transaction
is allowed or declined based on the conditions and outcome defined in the
transaction rule. You can apply the transaction rule to several cards, such
as all the cards in your platform, or to a specific card. For use cases, see
[examples](https://docs.adyen.com/issuing/transaction-rules/examples).
x-addedInVersion: '1'
operationId: post-transactionRules
x-groupName: Transaction rules
x-sortIndex: 1
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
createTransactionRule:
$ref: '#/components/examples/post-transactionRules-createTransactionRule'
schema:
$ref: '#/components/schemas/TransactionRuleInfo'
responses:
'200':
content:
application/json:
examples:
createTransactionRule:
$ref: '#/components/examples/post-transactionRules-createTransactionRule-200'
schema:
$ref: '#/components/schemas/TransactionRule'
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.
/transactionRules/{transactionRuleId}:
delete:
tags:
- Transaction rules
summary: Delete a transaction rule
description: Deletes a transaction rule.
x-addedInVersion: '1'
operationId: delete-transactionRules-transactionRuleId
x-groupName: Transaction rules
x-sortIndex: 5
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the transaction rule.
name: transactionRuleId
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/delete-transactionRules-transactionRuleId-success-200'
schema:
$ref: '#/components/schemas/TransactionRule'
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.
get:
tags:
- Transaction rules
summary: Get a transaction rule
description: Returns the details of a transaction rule.
x-addedInVersion: '1'
operationId: get-transactionRules-transactionRuleId
x-groupName: Transaction rules
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the transaction rule.
name: transactionRuleId
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
success:
$ref: '#/components/examples/get-transactionRules-transactionRuleId-success-200'
schema:
$ref: '#/components/schemas/TransactionRuleResponse'
description: OK - the request has succeeded.
'400':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-400'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-401'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-403'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-422'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
examples:
generic:
$ref: '#/components/examples/generic-500'
schema:
$ref: '#/components/schemas/RestServiceError'
description: Internal Server Error - the server could not process the request.
patch:
tags:
- Transaction rules
summary: Update a transaction rule
description: "Updates a transaction rule. \n\n* To update only the status of\
\ a transaction rule, send only the `status` parameter. All other parameters\
\ not provided in the request are left unchanged.\n\n* When updating any other\
\ parameter, you need to send all existing resource parameters. If you omit\
\ a parameter in the request, that parameter is removed from the resource."
x-addedInVersion: '1'
operationId: patch-transactionRules-transactionRuleId
x-groupName: Transaction rules
x-sortIndex: 3
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
updateTransactionRuleStatus:
$ref: '#/components/examples/patch-transactionRules-transactionRuleId-updateTransactionRuleStatus'
schema:
$ref: '#/components/schemas/TransactionRuleInfo'
parameters:
- description: The unique identifier of the transaction rule.
name: transactionRuleId
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
examples:
updateTransactionRuleStatus:
$ref: '#/components/examples/patch-transactionRules-transactionRuleId-updateTransactionRuleStatus-200'
schema:
$ref: '#/components/schemas/TransactionRule'
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.
/transferInstruments:
post:
tags:
- Transfer instruments
summary: Create a transfer instrument
description: "Creates a transfer instrument. \n\nA transfer instrument is a\
\ bank account or other payment details that a legal entity owns. Adyen performs\
\ verification checks on the transfer instrument as required by payment industry\
\ regulations. We inform you of the verification results through webhooks\
\ or API responses.\n\nWhen the transfer instrument passes the verification\
\ checks, you can start sending funds from the balance platform to the transfer\
\ instrument (such as payouts)."
x-addedInVersion: '1'
operationId: post-transferInstruments
x-groupName: Transfer instruments
x-sortIndex: 8
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TransferInstrumentInfo'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TransferInstrument'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
/transferInstruments/{id}:
delete:
tags:
- Transfer instruments
summary: Delete a transfer instrument
description: Deletes a transfer instrument.
x-addedInVersion: '1'
operationId: delete-transferInstruments-id
x-groupName: Transfer instruments
x-sortIndex: 11
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the transfer instrument to be deleted.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VoidResponse'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
get:
tags:
- Transfer instruments
summary: Get a transfer instrument
description: Returns a transfer instrument.
x-addedInVersion: '1'
operationId: get-transferInstruments-id
x-groupName: Transfer instruments
x-sortIndex: 9
security:
- BasicAuth: []
- ApiKeyAuth: []
parameters:
- description: The unique identifier of the transfer instrument.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TransferInstrument'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
patch:
tags:
- Transfer instruments
summary: Update a transfer instrument
description: Updates a transfer instrument.
x-addedInVersion: '1'
operationId: patch-transferInstruments-id
x-groupName: Transfer instruments
x-sortIndex: 10
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TransferInstrumentInfo'
parameters:
- description: The unique identifier of the transfer instrument.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TransferInstrument'
description: OK - the request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Bad Request - a problem reading or understanding the request.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unauthorized - authentication required.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Forbidden - insufficient permissions to process the request.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Unprocessable Entity - a request validation error.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
description: Internal Server Error - the server could not process the request.
components:
schemas:
AccountHolder:
properties:
balancePlatform:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id)
to which the account holder belongs. Required in the request if your API
credentials can be used for multiple balance platforms.
type: string
capabilities:
additionalProperties:
$ref: '#/components/schemas/AccountHolderCapability'
description: Contains key-value pairs that specify the actions that an account
holder can do in your platform. The key is a capability required for your
integration. For example, **issueCard** for Issuing. The value is an object
containing the settings for the capability.
type: object
contactDetails:
description: Contact details of the account holder.
$ref: '#/components/schemas/ContactDetails'
description:
description: Your description for the account holder, maximum 300 characters.
maxLength: 300
type: string
id:
description: The unique identifier of the account holder.
readOnly: true
type: string
legalEntityId:
description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id)
associated with the account holder. Adyen performs a verification process
against the legal entity of the account holder.
type: string
primaryBalanceAccount:
description: The ID of the account holder's primary balance account. By
default, this is set to the first balance account that you create for
the account holder. To assign a different balance account, send a PATCH
request.
type: string
reference:
description: Your reference for the account holder, maximum 150 characters.
maxLength: 150
type: string
status:
description: "The status of the account holder.\n\nPossible values: \n\n\
\ * **Active**: The account holder is active. This is the default status\
\ when creating an account holder. \n\n * **Inactive**: The account holder\
\ is temporarily inactive due to missing KYC details. You can set the\
\ account back to active by providing the missing KYC details. \n\n *\
\ **Suspended**: The account holder is permanently deactivated by Adyen.\
\ This action cannot be undone. \n\n* **Closed**: The account holder is\
\ permanently deactivated by you. This action cannot be undone."
enum:
- Active
- Closed
- Inactive
- Suspended
type: string
timeZone:
description: 'The [time zone](https://www.iana.org/time-zones) of the account
holder. For example, **Europe/Amsterdam**.
If not set, the time zone of the balance account will be used. For possible
values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
type: string
required:
- legalEntityId
- id
AccountHolderCapability:
properties:
allowed:
description: Indicates whether the capability is allowed. Adyen sets this
to **true** if the verification is successful and the account holder is
permitted to use the capability.
readOnly: true
type: boolean
allowedLevel:
description: 'The capability level that is allowed for the account holder.
Possible values: **notApplicable**, **low**, **medium**, **high**.'
enum:
- high
- low
- medium
- notApplicable
readOnly: true
type: string
allowedSettings:
description: A JSON object containing the settings that are allowed for
the account holder.
readOnly: true
$ref: '#/components/schemas/JSONObject'
enabled:
description: Indicates whether the capability is enabled. If **false**,
the capability is temporarily disabled for the account holder.
type: boolean
problems:
description: Contains verification errors and the actions that you can take
to resolve them.
items:
$ref: '#/components/schemas/CapabilityProblem'
readOnly: true
type: array
requested:
description: Indicates whether the capability is requested. To check whether
the account holder is permitted to use the capability, refer to the `allowed`
field.
type: boolean
requestedLevel:
description: 'The requested level of the capability. Some capabilities,
such as those used in [card issuing](https://docs.adyen.com/issuing/add-capabilities#capability-levels),
have different levels. Levels increase the capability, but also require
additional checks and increased monitoring.
Possible values: **notApplicable**, **low**, **medium**, **high**.'
enum:
- high
- low
- medium
- notApplicable
type: string
requestedSettings:
description: A JSON object containing the settings that were requested for
the account holder.
readOnly: true
$ref: '#/components/schemas/JSONObject'
verificationStatus:
description: 'The status of the verification checks for the capability.
Possible values:
* **pending**: Adyen is running the verification.
* **invalid**: The verification failed. Check if the `errors` array contains
more information.
* **valid**: The verification has been successfully completed.
* **rejected**: Adyen has verified the information, but found reasons
to not allow the capability.
'
enum:
- invalid
- pending
- rejected
- valid
readOnly: true
type: string
AccountHolderInfo:
properties:
balancePlatform:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id)
to which the account holder belongs. Required in the request if your API
credentials can be used for multiple balance platforms.
type: string
capabilities:
additionalProperties:
$ref: '#/components/schemas/AccountHolderCapability'
description: Contains key-value pairs that specify the actions that an account
holder can do in your platform. The key is a capability required for your
integration. For example, **issueCard** for Issuing. The value is an object
containing the settings for the capability.
type: object
contactDetails:
description: Contact details of the account holder.
$ref: '#/components/schemas/ContactDetails'
description:
description: Your description for the account holder, maximum 300 characters.
maxLength: 300
type: string
legalEntityId:
description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id)
associated with the account holder. Adyen performs a verification process
against the legal entity of the account holder.
type: string
reference:
description: Your reference for the account holder, maximum 150 characters.
maxLength: 150
type: string
timeZone:
description: 'The [time zone](https://www.iana.org/time-zones) of the account
holder. For example, **Europe/Amsterdam**.
If not set, the time zone of the balance account will be used. For possible
values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
type: string
required:
- legalEntityId
Address:
properties:
city:
description: 'The name of the city. Maximum length: 3000 characters.'
maxLength: 3000
type: string
country:
description: 'The two-character ISO-3166-1 alpha-2 country code. For example,
**US**.
> If you don''t know the country or are not collecting the country from
the shopper, provide `country` as `ZZ`.'
type: string
houseNumberOrName:
description: 'The number or name of the house. Maximum length: 3000 characters.'
maxLength: 3000
type: string
postalCode:
description: A maximum of five digits for an address in the US, or a maximum
of ten characters for an address in all other countries.
type: string
stateOrProvince:
description: 'The two-character ISO 3166-2 state or province code. For example,
**CA** in the US or **ON** in Canada.
> Required for the US and Canada.'
type: string
street:
description: 'The name of the street. Maximum length: 3000 characters.
> The house number should not be included in this field; it should be
separately provided via `houseNumberOrName`.'
maxLength: 3000
type: string
required:
- street
- houseNumberOrName
- city
- postalCode
- country
Address-3:
properties:
city:
description: 'The name of the city. Required if `stateOrProvince` is provided.
If you specify the city, you must also send `postalCode` and `street`.'
type: string
country:
description: The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code.
type: string
postalCode:
description: Postal code. Required if `stateOrProvince` and/or `city` is
provided.
type: string
stateOrProvince:
description: "The two-letter ISO 3166-2 state or province code. For example,\
\ **CA** in the US. \n\nIf you specify the state or province, you must\
\ also send `city`, `postalCode`, and `street`."
type: string
street:
description: The name of the street, and the house or building number. Required
if `stateOrProvince` and/or `city` is provided.
type: string
street2:
description: The apartment, unit, or suite number.
type: string
required:
- country
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
Attachment:
properties:
content:
description: The document in Base64-encoded string format.
format: byte
type: string
contentType:
deprecated: true
x-deprecatedInVersion: '1'
description: "The file format.\n\n Possible values: **application/pdf**,\
\ **image/jpg**, **image/jpeg**, **image/png**. "
type: string
filename:
deprecated: true
x-deprecatedInVersion: '1'
description: The name of the file including the file extension.
type: string
pageType:
description: 'Specifies which side of the ID card is uploaded.
* When `type` is **driversLicense**, set this to **front** or **back**.
* When omitted, we infer the page number based on the order of attachments.'
type: string
required:
- content
Authentication:
properties:
email:
description: The email address where the one-time password (OTP) is sent.
type: string
password:
description: "The password used for 3D Secure password-based authentication.\
\ The value must be between 1 to 30 characters and must only contain the\
\ following supported characters.\n\n* Characters between **a-z**, **A-Z**,\
\ and **0-9**\n\n* Special characters: **\xE4\xF6\xFC\xDF\xC4\xD6\xDC\
+-*/\xE7%()=?!~#'\",;:$&\xE0\xF9\xF2\xE2\xF4\xFB\xE1\xFA\xF3**"
maxLength: 30
minLength: 1
type: string
phone:
description: 'The phone number where the one-time password (OTP) is sent.
This object must have:
* A `type` set to **mobile**.
* A `number` with a valid country code.
* A `number` with more than 4 digits, excluding the country code.
>Make sure to verify that the card user owns the phone number.'
$ref: '#/components/schemas/Phone'
Balance:
properties:
available:
description: The remaining amount available for spending.
format: int64
type: integer
balance:
description: The total amount in the balance.
format: int64
type: integer
currency:
description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
of the balance.
type: string
reserved:
description: The amount reserved for payments that have been authorised,
but have not been captured yet.
format: int64
type: integer
required:
- currency
- balance
- reserved
- available
BalanceAccount:
properties:
accountHolderId:
description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id)
associated with the balance account.
type: string
balances:
description: List of balances with the amount and currency.
items:
$ref: '#/components/schemas/Balance'
type: array
defaultCurrencyCode:
description: 'The default three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
of the balance account.
The default value is **EUR**.'
type: string
description:
description: A human-readable description of the balance account, maximum
300 characters. You can use this parameter to distinguish between multiple
balance accounts under an account holder.
maxLength: 300
type: string
id:
description: The unique identifier of the balance account.
type: string
paymentInstruments:
description: List of [payment instruments](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments)
associated with the balance account.
items:
$ref: '#/components/schemas/PaymentInstrumentReference'
type: array
reference:
description: Your reference for the balance account, maximum 150 characters.
maxLength: 150
type: string
status:
description: "The status of the balance account, set to **Active** by default.\
\ \n"
enum:
- Active
- Closed
- Inactive
- Suspended
type: string
sweepConfigurations:
additionalProperties:
$ref: '#/components/schemas/SweepConfiguration'
description: 'Contains key-value pairs that specify configurations for balance
sweeps per currency code. A sweep pulls in or pushes out funds based on
a defined schedule, amount, and a source (for pulling funds) or a destination
(for pushing funds).
The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
in uppercase. For example, **EUR**. The value must be an object containing
the sweep configuration.'
type: object
timeZone:
description: 'The [time zone](https://www.iana.org/time-zones) of the balance
account. For example, **Europe/Amsterdam**.
If not set, the time zone of the account holder will be used. For possible
values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
type: string
required:
- accountHolderId
- id
BalanceAccountInfo:
properties:
accountHolderId:
description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id)
associated with the balance account.
type: string
defaultCurrencyCode:
description: 'The default three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
of the balance account.
The default value is **EUR**.'
type: string
description:
description: A human-readable description of the balance account, maximum
300 characters. You can use this parameter to distinguish between multiple
balance accounts under an account holder.
maxLength: 300
type: string
reference:
description: Your reference for the balance account, maximum 150 characters.
maxLength: 150
type: string
sweepConfigurations:
additionalProperties:
$ref: '#/components/schemas/SweepConfiguration'
description: 'Contains key-value pairs that specify configurations for balance
sweeps per currency code. A sweep pulls in or pushes out funds based on
a defined schedule, amount, and a source (for pulling funds) or a destination
(for pushing funds).
The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
in uppercase. For example, **EUR**. The value must be an object containing
the sweep configuration.'
type: object
timeZone:
description: 'The [time zone](https://www.iana.org/time-zones) of the balance
account. For example, **Europe/Amsterdam**.
If not set, the time zone of the account holder will be used. For possible
values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
type: string
required:
- accountHolderId
BalanceAccountUpdateRequest:
properties:
accountHolderId:
description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id)
associated with the balance account.
type: string
defaultCurrencyCode:
description: "The default currency code of this balance account, in three-character\
\ [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)\
\ format. \nThe default value is **EUR**."
type: string
description:
description: A human-readable description of the balance account, maximum
300 characters. You can use this parameter to distinguish between multiple
balance accounts under an account holder.
maxLength: 300
type: string
reference:
description: Your reference to the balance account, maximum 150 characters.
maxLength: 150
type: string
status:
description: 'The status of the balance account. Payment instruments linked
to the balance account can only be used if the balance account status
is **Active**.
Possible values: **Active**, **Inactive**, **Closed**, **Suspended**.'
enum:
- Active
- Closed
- Inactive
- Suspended
type: string
sweepConfigurations:
additionalProperties:
$ref: '#/components/schemas/SweepConfiguration'
description: "Contains key-value pairs that specify [balance sweep per currency\
\ code](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__reqParam_sweepConfigurations).\n\
\nYou can update the balance account to add, update, or delete sweeps.\n\
\n* To add a sweep, send the currency code as a key and the configuration\
\ as the object.\n\n * To update a sweep, send the whole configuration\
\ with your updates.\n\n* To delete a sweep, set the value to **null**.\
\ For example, `\"EUR\": null`."
type: object
timeZone:
description: 'The [time zone](https://www.iana.org/time-zones) of the balance
account. For example, **Europe/Amsterdam**.
If not set, the time zone of the account holder will be used. For possible
values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
type: string
BalancePlatform:
properties:
description:
description: Your description of the balance platform, maximum 300 characters.
maxLength: 300
type: string
id:
description: The unique identifier of the balance platform.
type: string
status:
description: 'The status of the balance platform.
Possible values: **Active**, **Inactive**, **Closed**, **Suspended**.'
type: string
required:
- id
BankAccount:
properties:
iban:
description: The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number)
(IBAN).
type: string
required:
- iban
BankAccountInfo-2:
properties:
accountNumber:
description: "The bank account number (without separators).\n\n When this\
\ is provided, the `branchCode` is also required."
type: string
accountType:
description: The type of bank account.
type: string
bankBicSwift:
description: The bank's BIC or SWIFT code.
type: string
bankCity:
description: The city where the bank is located.
type: string
bankCode:
description: The bank code of the banking institution with which the bank
account is registered.
type: string
bankName:
description: The name of the banking institution where the bank account
is held.
type: string
branchCode:
description: "The branch code of the branch under which the bank account\
\ is registered.\n\nRequired when you provide an `accountNumber`.\n\n\
\ In the following countries, this value corresponds to:\n\n\n* United\
\ States: routing number\n* United Kingdom: sort code\n* Germany: Bankleitzahl"
type: string
checkCode:
description: The check code of the bank account.
type: string
countryCode:
description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code where the bank account is registered. For example, **NL**.
type: string
currencyCode:
description: The account's three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
For example, **EUR**.
type: string
iban:
description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html)
standard.
type: string
required:
- countryCode
- currencyCode
BirthData:
properties:
dateOfBirth:
description: The individual's date of birth, in YYYY-MM-DD format.
type: string
BulkAddress:
properties:
city:
description: The name of the city.
type: string
company:
description: The name of the company.
type: string
country:
description: The two-character ISO-3166-1 alpha-2 country code. For example,
**US**.
type: string
email:
description: The email address.
type: string
houseNumberOrName:
description: The house number or name.
type: string
mobile:
description: The full telephone number.
type: string
postalCode:
description: 'The postal code.
Maximum length:
* 5 digits for addresses in the US.
* 10 characters for all other countries.'
type: string
stateOrProvince:
description: 'The two-letter ISO 3166-2 state or province code.
Maximum length: 2 characters for addresses in the US.'
type: string
street:
description: The streetname of the house.
type: string
required:
- country
CapabilityProblem:
properties:
entity:
description: Contains the type of the entity and the corresponding ID.
$ref: '#/components/schemas/CapabilityProblemEntity'
verificationErrors:
description: Contains information about the verification error.
items:
$ref: '#/components/schemas/VerificationError'
type: array
CapabilityProblemEntity:
properties:
id:
description: The ID of the entity.
type: string
owner:
description: Contains details about the owner of the entity that has an
error.
$ref: '#/components/schemas/CapabilityProblemEntity-recursive'
type:
description: "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**,\
\ **Document**."
enum:
- BankAccount
- Document
- LegalEntity
type: string
CapabilityProblemEntity-recursive:
properties:
id:
description: The ID of the entity.
type: string
type:
description: "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**,\
\ **Document**."
enum:
- BankAccount
- Document
- LegalEntity
type: string
required: []
Card:
properties:
authentication:
description: Contains the card user's password and mobile phone number.
This is required when you issue cards that can be used to make online
payments within the EEA and the UK, or can be added to digital wallets.
Refer to [3D Secure and digital wallets](https://docs.adyen.com/issuing/3d-secure-and-wallets)
for more information.
$ref: '#/components/schemas/Authentication'
bin:
description: The bank identification number (BIN) of the card number.
type: string
brand:
description: 'The brand of the payment instrument.
Possible values: **visa**, **mc**.'
type: string
brandVariant:
description: 'The brand variant of the payment instrument.
>Contact your Adyen Implementation Manager to get the values that are
relevant to your integration. Examples: **visadebit**, **mcprepaid**.'
type: string
cardholderName:
description: "The name of the cardholder.\n Maximum length: 26 characters."
maxLength: 26
type: string
configuration:
description: "Settings required when creating a physical card. \n\nReach\
\ out to your Adyen contact to get the values that you can send in this\
\ object."
$ref: '#/components/schemas/CardConfiguration'
cvc:
description: 'The CVC2 value of the card.
> The CVC2 is not sent by default. This is only returned in the `POST`
response for single-use virtual cards.'
type: string
deliveryContact:
description: The delivery contact (name and address) for physical card delivery.
$ref: '#/components/schemas/Contact'
expiration:
description: The expiration date of the card.
$ref: '#/components/schemas/Expiry'
formFactor:
description: 'The form factor of the card.
Possible values: **virtual**, **physical**.'
enum:
- physical
- unknown
- virtual
type: string
lastFour:
description: Last last four digits of the card number.
type: string
number:
description: 'The primary account number (PAN) of the card.
> The PAN is masked by default and returned only for single-use virtual
cards.'
readOnly: true
type: string
required:
- formFactor
- cardholderName
- brand
- brandVariant
- number
CardConfiguration:
properties:
activation:
description: Overrides the activation label design ID defined in the `configurationProfileId`.
The activation label is attached to the card and contains the activation
instructions.
type: string
activationUrl:
description: "Your app's URL, if you want to activate cards through your\
\ app. For example, **my-app://ref1236a7d**. A QR code is created based\
\ on this URL, and is included in the carrier. Before you use this field,\
\ reach out to your Adyen contact to set up the QR code process. \n\n\
Maximum length: 255 characters."
maxLength: 255
type: string
bulkAddress:
description: Overrides the shipment bulk address defined in the `configurationProfileId`.
$ref: '#/components/schemas/BulkAddress'
cardImageId:
description: The ID of the card image. This is the image that will be printed
on the full front of the card.
type: string
carrier:
description: Overrides the carrier design ID defined in the `configurationProfileId`.
The carrier is the letter or packaging to which the card is attached.
type: string
carrierImageId:
description: The ID of the carrier image. This is the image that will printed
on the letter to which the card is attached.
type: string
configurationProfileId:
description: 'The ID of the card configuration profile that contains the
settings of the card. For example, the envelope and PIN mailer designs
or the logistics company handling the shipment. All the settings in the
profile are applied to the card, unless you provide other fields to override
them.
For example, send the `shipmentMethod` to override the logistics company
defined in the card configuration profile.'
type: string
currency:
description: The three-letter [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217)
currency code of the card. For example, **EUR**.
type: string
envelope:
description: 'Overrides the envelope design ID defined in the `configurationProfileId`. '
type: string
insert:
description: Overrides the insert design ID defined in the `configurationProfileId`.
An insert is any additional material, such as marketing materials, that
are shipped together with the card.
type: string
language:
description: The two-letter [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
language code of the card. For example, **en**.
type: string
logoImageId:
description: The ID of the logo image. This is the image that will be printed
on the partial front of the card, such as a logo on the upper right corner.
type: string
pinMailer:
description: Overrides the PIN mailer design ID defined in the `configurationProfileId`.
The PIN mailer is the letter on which the PIN is printed.
type: string
shipmentMethod:
description: Overrides the logistics company defined in the `configurationProfileId`.
type: string
required:
- configurationProfileId
CardInfo:
properties:
authentication:
description: Contains the card user's password and mobile phone number.
This is required when you issue cards that can be used to make online
payments within the EEA and the UK, or can be added to digital wallets.
Refer to [3D Secure and digital wallets](https://docs.adyen.com/issuing/3d-secure-and-wallets)
for more information.
$ref: '#/components/schemas/Authentication'
brand:
description: 'The brand of the payment instrument.
Possible values: **visa**, **mc**.'
type: string
brandVariant:
description: 'The brand variant of the payment instrument.
>Contact your Adyen Implementation Manager to get the values that are
relevant to your integration. Examples: **visadebit**, **mcprepaid**.'
type: string
cardholderName:
description: "The name of the cardholder.\n Maximum length: 26 characters."
maxLength: 26
type: string
configuration:
description: "Settings required when creating a physical card. \n\nReach\
\ out to your Adyen contact to get the values that you can send in this\
\ object."
$ref: '#/components/schemas/CardConfiguration'
deliveryContact:
description: The delivery contact (name and address) for physical card delivery.
$ref: '#/components/schemas/Contact'
formFactor:
description: 'The form factor of the card.
Possible values: **virtual**, **physical**.'
enum:
- physical
- unknown
- virtual
type: string
required:
- formFactor
- cardholderName
- brand
- brandVariant
Contact:
properties:
address:
description: The address of the contact.
$ref: '#/components/schemas/Address'
email:
description: The e-mail address of the contact.
type: string
fullPhoneNumber:
description: 'The phone number of the contact provided as a single string. It
will be handled as a landline phone.
**Examples:** "0031 6 11 22 33 44", "+316/1122-3344", "(0031) 611223344"'
type: string
name:
description: The name of the contact.
$ref: '#/components/schemas/Name'
personalData:
description: Personal data of the contact.
$ref: '#/components/schemas/PersonalData'
phoneNumber:
description: The phone number of the contact.
$ref: '#/components/schemas/PhoneNumber'
webAddress:
description: The URL of the website of the contact.
type: string
ContactDetails:
properties:
address:
description: The address of the account holder.
$ref: '#/components/schemas/Address'
email:
description: The email address of the account holder.
type: string
phone:
description: The phone number of the account holder.
$ref: '#/components/schemas/Phone'
webAddress:
description: The URL of the account holder's website.
type: string
required:
- email
- phone
- address
CronSweepSchedule:
additionalProperties: false
properties:
cronExpression:
description: 'A [cron expression](https://en.wikipedia.org/wiki/Cron#CRON_expression)
that is used to set the sweep schedule. The schedule uses the time zone
of the balance account. For example, **30 17 * * MON** schedules a sweep
every Monday at 17:30.
The expression must have five values separated by a single space in the
following order:
* Minute: **0-59**
* Hour: **0-23**
* Day of the month: **1-31**
* Month: **1-12** or **JAN-DEC**
* Day of the week: **0-7** (0 and 7 are Sunday) or **MON-SUN**.
The following non-standard characters are supported: *****, **L**,
**#**, **W** and **/**. See [crontab guru](https://crontab.guru/) for
more examples.'
type: string
type:
description: 'The schedule type.
Possible values:
* **cron**: push out funds based on a cron expression.
* **daily**: push out funds daily at 07:00 AM CET.
* **weekly**: push out funds every Monday at 07:00 AM CET.
* **monthly**: push out funds every first of the month at 07:00 AM CET.
* **balance**: pull in funds instantly if the balance is less than or
equal to the `triggerAmount`. You can only use this for sweeps of `type`
**pull** and when the source is a `merchantAccount` or `transferInstrument`.'
enum:
- daily
- weekly
- monthly
- balance
- cron
type: string
required:
- cronExpression
Document:
properties:
attachment:
deprecated: true
x-deprecatedInVersion: '1'
x-deprecatedMessage: Use the `attachments` array instead.
description: Object that contains the document.
$ref: '#/components/schemas/Attachment'
attachments:
description: Array that contains the document. The array supports multiple
attachments for uploading different sides or pages of a document.
items:
$ref: '#/components/schemas/Attachment'
type: array
description:
description: Your description for the document.
type: string
expiryDate:
deprecated: true
x-deprecatedInVersion: '1'
description: The expiry date of the document, in YYYY-MM-DD format.
type: string
fileName:
description: The filename of the document.
type: string
id:
description: The unique identifier of the document.
readOnly: true
type: string
issuerCountry:
deprecated: true
x-deprecatedInVersion: '1'
description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code where the document was issued. For example, **US**.
type: string
issuerState:
deprecated: true
x-deprecatedInVersion: '1'
description: The state or province where the document was issued (AU only).
type: string
number:
description: The number in the document.
type: string
owner:
description: Contains information about the resource that owns the document.
$ref: '#/components/schemas/OwnerEntity'
type:
description: "Type of document, used when providing an ID number or uploading\
\ a document. The possible values depend on the legal entity type.\n\n\
When providing ID numbers:\n* For **individual**, the `type` values can\
\ be **driversLicense**, **identityCard**, **nationalIdNumber**, or **passport**.\n\
\nWhen uploading documents:\n* For **organization**, the `type` values\
\ can be **proofOfAddress**, **registrationDocument**, **taxDocument**,\
\ **proofOfOwnership**, or **proofOfIndustry**. \n\n* For **individual**,\
\ the `type` values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**,\
\ **proofOfResidency**, or **proofOfIndustry**.\n\n* Use **bankStatement**\
\ to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id)."
enum:
- bankStatement
- driversLicense
- identityCard
- nationalIdNumber
- passport
- proofOfAddress
- proofOfNationalIdNumber
- proofOfResidency
- registrationDocument
- taxDocument
- proofOfIndustry
type: string
required:
- type
- description
- owner
- attachments
- id
EntityReference:
properties:
id:
description: The unique identifier of the resource.
type: string
Expiry:
properties:
month:
description: The month in which the card will expire.
type: string
year:
description: The year in which the card will expire.
type: string
GenericEntityInfo:
properties:
entityAssociations:
description: 'List of legal entities associated with the current legal entity.
For example, ultimate beneficial owners associated with an organization
through ownership or control, or as signatories.'
items:
$ref: '#/components/schemas/LegalEntityAssociation'
type: array
individual:
description: Information about the individual. Required if `type` is **individual**.
$ref: '#/components/schemas/Individual'
organization:
description: Information about the organization. Required if `type` is **organization**.
$ref: '#/components/schemas/Organization'
IdentificationData:
properties:
expiryDate:
deprecated: true
x-deprecatedInVersion: '1'
description: The expiry date of the document, in YYYY-MM-DD format.
type: string
issuerCountry:
deprecated: true
x-deprecatedInVersion: '1'
description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code where the document was issued. For example, **US**.
type: string
issuerState:
description: The state or province where the document was issued (AU only).
type: string
nationalIdExempt:
description: Applies only to individuals in the US. Set to **true** if the
individual does not have an SSN. To verify their identity, Adyen will
require them to upload an ID document.
type: boolean
number:
description: The number in the document.
type: string
type:
description: "Type of document, used when providing an ID number or uploading\
\ a document. The possible values depend on the legal entity type.\n\n\
When providing ID numbers:\n* For **individual**, the `type` values can\
\ be **driversLicense**, **identityCard**, **nationalIdNumber**, or **passport**.\n\
\nWhen uploading documents:\n* For **organization**, the `type` values\
\ can be **proofOfAddress**, **registrationDocument**, **taxDocument**,\
\ **proofOfOwnership**, or **proofOfIndustry**. \n\n* For **individual**,\
\ the `type` values can be **identityCard**, **driversLicense**, **proofOfNationalIdNumber**,\
\ **proofOfResidency**, or **proofOfIndustry**.\n\n* Use **bankStatement**\
\ to upload documents for a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id)."
enum:
- bankStatement
- driversLicense
- identityCard
- nationalIdNumber
- passport
- proofOfAddress
- proofOfNationalIdNumber
- proofOfResidency
- registrationDocument
- taxDocument
- proofOfIndustry
type: string
required:
- type
Individual:
properties:
birthData:
description: The individual's birth information.
$ref: '#/components/schemas/BirthData'
email:
description: The email address of the legal entity.
type: string
identificationData:
description: Information about the individual's identification document.
$ref: '#/components/schemas/IdentificationData'
name:
description: The individual's name.
$ref: '#/components/schemas/Name'
nationality:
description: The individual's nationality.
type: string
phone:
description: The phone number of the legal entity.
$ref: '#/components/schemas/PhoneNumber'
residentialAddress:
description: The residential address of the individual.
$ref: '#/components/schemas/Address'
webData:
deprecated: true
x-deprecatedInVersion: '1'
description: The website and app URL of the legal entity.
$ref: '#/components/schemas/WebData'
required:
- name
- residentialAddress
InvalidField:
properties:
message:
description: Description of the validation error.
type: string
name:
description: The field that has an invalid value.
type: string
value:
description: The invalid value.
type: string
required:
- name
- value
- message
JSONObject:
properties:
paths:
items:
$ref: '#/components/schemas/JSONPath'
type: array
rootPath:
$ref: '#/components/schemas/JSONPath'
JSONPath:
properties:
content:
items:
type: string
type: array
LegalEntity:
properties:
documents:
deprecated: true
x-deprecatedInVersion: '1'
x-deprecatedMessage: Use the `documentDetails` array instead.
description: List of documents uploaded for the legal entity.
items:
$ref: '#/components/schemas/EntityReference'
type: array
entityAssociations:
description: 'List of legal entities associated with the current legal entity.
For example, ultimate beneficial owners associated with an organization
through ownership or control, or as signatories.'
items:
$ref: '#/components/schemas/LegalEntityAssociation'
type: array
id:
description: The unique identifier of the legal entity.
readOnly: true
type: string
individual:
description: Information about the individual. Required if `type` is **individual**.
$ref: '#/components/schemas/Individual'
organization:
description: Information about the organization. Required if `type` is **organization**.
$ref: '#/components/schemas/Organization'
reference:
description: Your reference for the legal entity, maximum 150 characters.
maxLength: 150
type: string
transferInstruments:
description: List of transfer instruments owned by the legal entity.
items:
$ref: '#/components/schemas/EntityReference'
type: array
type:
description: "The type of legal entity.\n\n Possible values: **individual**\
\ or **organization**"
enum:
- individual
- organization
type: string
required:
- type
- id
LegalEntityAssociation:
properties:
associatorId:
description: The unique identifier of another legal entity with which the
`legalEntityId` is associated. When the `legalEntityId` is associated
to legal entities other than the current one, the response returns all
the associations.
readOnly: true
type: string
entityType:
description: "The legal entity type of associated legal entity. \n\nFor\
\ example, **organization**, **soleProprietorship** or **individual**. "
readOnly: true
type: string
jobTitle:
description: The individual's job title if the `type` is **uboThroughControl**
or **signatory**.
type: string
legalEntityId:
description: The unique identifier of the associated [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id).
type: string
name:
description: 'The name of the associated [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id).
- For **individual**, `name.firstName` and `name.lastName`.
- For **organization**, `legalName`.
- For **soleProprietorship**, `name`.'
readOnly: true
type: string
type:
description: "Defines the relationship of the legal entity to the current\
\ legal entity. \n\nFor example, **uboThroughOwnership**, **uboThroughControl**,\
\ or **signatory**. "
enum:
- signatory
- uboThroughControl
- uboThroughOwnership
type: string
required:
- legalEntityId
- type
LegalEntityInfo:
properties:
entityAssociations:
description: 'List of legal entities associated with the current legal entity.
For example, ultimate beneficial owners associated with an organization
through ownership or control, or as signatories.'
items:
$ref: '#/components/schemas/LegalEntityAssociation'
type: array
individual:
description: Information about the individual. Required if `type` is **individual**.
$ref: '#/components/schemas/Individual'
organization:
description: Information about the organization. Required if `type` is **organization**.
$ref: '#/components/schemas/Organization'
reference:
description: Your reference for the legal entity, maximum 150 characters.
maxLength: 150
type: string
type:
description: "The type of legal entity.\n\n Possible values: **individual**\
\ or **organization**"
enum:
- individual
- organization
type: string
required:
- type
Name:
properties:
firstName:
description: The first name.
type: string
lastName:
description: The last name.
type: string
required:
- firstName
- lastName
Name-3:
properties:
firstName:
description: The individual's first name.
type: string
infix:
description: The infix in the individual's name, if any.
type: string
lastName:
description: The individual's last name.
type: string
required:
- firstName
- lastName
Organization:
properties:
description:
description: Your description for the organization.
type: string
doingBusinessAs:
description: The organization's trading name, if different from the registered
legal name.
type: string
email:
description: The email address of the legal entity.
type: string
legalName:
description: The organization's legal name.
type: string
phone:
description: The phone number of the legal entity.
$ref: '#/components/schemas/PhoneNumber'
principalPlaceOfBusiness:
description: The address where the organization operates from. Provide this
if the principal place of business is different from the `registeredAddress`.
$ref: '#/components/schemas/Address'
registeredAddress:
description: The address of the organization registered at their registrar
(such as the Chamber of Commerce).
$ref: '#/components/schemas/Address'
registrationNumber:
description: The organization's registration number.
type: string
stockData:
description: Information about the organization's publicly traded stock.
Provide this object only if `type` is **listedPublicCompany**.
$ref: '#/components/schemas/StockData'
taxExempt:
description: 'Indicates whether the legal entity is exempt from tax. When
**true**, the `taxIdAbsenceReason` must be provided.
'
type: boolean
taxId:
description: The organization's tax identifier.
type: string
taxIdAbsenceReason:
description: 'The reason the organization has not provided a tax identifier.
Possible values: **industryExemption**, **belowTaxThreshold**.'
enum:
- industryExemption
- belowTaxThreshold
type: string
type:
description: "Type of organization. \n\nPossible values: **associationIncorporated**,\
\ **governmentalOrganization**, **listedPublicCompany**, **nonProfit**,\
\ **partnershipIncorporated**, **privateCompany**."
enum:
- associationIncorporated
- governmentalOrganization
- listedPublicCompany
- nonProfit
- partnershipIncorporated
- privateCompany
type: string
webData:
deprecated: true
x-deprecatedInVersion: '1'
description: The website and app URL of the legal entity.
$ref: '#/components/schemas/WebData'
required:
- legalName
- registeredAddress
OwnerEntity:
properties:
id:
description: Unique identifier of the resource that owns the document. For
`type` **legalEntity**, this value is the unique identifier of the [legal
entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id).
For `type` **bankAccount**, this value is the unique identifier of the
[transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).
type: string
type:
description: 'Type of resource that owns the document.
Possible values: **legalEntity**, **bankAccount**.'
type: string
required:
- id
- type
PaginatedAccountHoldersResponse:
properties:
accountHolders:
description: List of account holders.
items:
$ref: '#/components/schemas/AccountHolder'
type: array
hasNext:
description: Indicates whether there are more items on the next page.
type: boolean
hasPrevious:
description: Indicates whether there are more items on the previous page.
type: boolean
required:
- accountHolders
- hasPrevious
- hasNext
PaginatedBalanceAccountsResponse:
properties:
balanceAccounts:
description: List of balance accounts.
items:
$ref: '#/components/schemas/BalanceAccount'
type: array
hasNext:
description: Indicates whether there are more items on the next page.
type: boolean
hasPrevious:
description: Indicates whether there are more items on the previous page.
type: boolean
required:
- balanceAccounts
- hasPrevious
- hasNext
PaginatedPaymentInstrumentsResponse:
properties:
hasNext:
description: Indicates whether there are more items on the next page.
type: boolean
hasPrevious:
description: Indicates whether there are more items on the previous page.
type: boolean
paymentInstruments:
description: List of payment instruments associated with the balance account.
items:
$ref: '#/components/schemas/PaymentInstrument'
type: array
required:
- paymentInstruments
- hasPrevious
- hasNext
PaymentInstrument:
properties:
balanceAccountId:
description: The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/balanceAccounts__resParam_id)
associated with the payment instrument.
type: string
bankAccount:
description: Contains the business account details. Returned when you create
a payment instrument with `type` **bankAccount**.
$ref: '#/components/schemas/BankAccount'
card:
description: Contains information about the card payment instrument. Returned
when you create a payment instrument with `type` **card**.
$ref: '#/components/schemas/Card'
description:
description: Your description for the payment instrument, maximum 300 characters.
maxLength: 300
type: string
id:
description: The unique identifier of the payment instrument.
type: string
issuingCountryCode:
description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code where the payment instrument is issued. For example, **NL**
or **US**.
type: string
paymentInstrumentGroupId:
description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/paymentInstrumentGroups__resParam_id)
to which the payment instrument belongs.
type: string
reference:
description: Your reference for the payment instrument, maximum 150 characters.
maxLength: 150
type: string
status:
x-enum:
- description: The payment instrument has been requested. This state is
applicable when creating physical cards.
value: Requested
- description: The payment instrument is active and can be used to make
payments.
value: Active
- description: The payment instrument is inactive and cannot be used to
make payments.
value: Inactive
- description: The payment instrument is temporarily suspended and cannot
be used to make payments.
value: Suspended
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: Closed
- description: The payment instrument is suspended. Either because it was
stolen or lost.
value: blocked
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: discarded
description: "The status of the payment instrument. If a status is not specified\
\ when creating a payment instrument, it is set to **Active** by default.\
\ However, there can be exceptions for cards based on the `card.formFactor`\
\ and the `issuingCountryCode`. For example, when issuing physical cards\
\ in the US, the default status is **Requested**.\n\nPossible values:\
\ \n\n * **Active**: The payment instrument is active and can be used\
\ to make payments. \n\n * **Requested**: The payment instrument has been\
\ requested. This state is applicable for physical cards. \n\n* **Inactive**:\
\ The payment instrument is inactive and cannot be used to make payments.\
\ \n\n * **Suspended**: The payment instrument is temporarily suspended\
\ and cannot be used to make payments. \n\n * **Closed**: The payment\
\ instrument is permanently closed. This action cannot be undone. \n\n\
* **Stolen** \n\n * **Lost**\n\n "
enum:
- Active
- Closed
- Inactive
- Lost
- Requested
- Stolen
- Suspended
- blocked
- discarded
type: string
type:
description: 'Type of payment instrument.
Possible value: **card**, **bankAccount**. '
enum:
- bankAccount
- card
type: string
required:
- balanceAccountId
- issuingCountryCode
- type
- id
PaymentInstrumentGroup:
properties:
balancePlatform:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id)
to which the payment instrument group belongs.
type: string
description:
description: Your description for the payment instrument group, maximum
300 characters.
maxLength: 300
type: string
id:
description: The unique identifier of the payment instrument group.
type: string
properties:
additionalProperties:
type: string
description: Properties of the payment instrument group.
type: object
reference:
description: Your reference for the payment instrument group, maximum 150
characters.
maxLength: 150
type: string
txVariant:
description: The tx variant of the payment instrument group.
type: string
required:
- balancePlatform
- txVariant
PaymentInstrumentGroupInfo:
properties:
balancePlatform:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id)
to which the payment instrument group belongs.
type: string
description:
description: Your description for the payment instrument group, maximum
300 characters.
maxLength: 300
type: string
properties:
additionalProperties:
type: string
description: Properties of the payment instrument group.
type: object
reference:
description: Your reference for the payment instrument group, maximum 150
characters.
maxLength: 150
type: string
txVariant:
description: The tx variant of the payment instrument group.
type: string
required:
- balancePlatform
- txVariant
PaymentInstrumentInfo:
properties:
balanceAccountId:
description: The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/balanceAccounts__resParam_id)
associated with the payment instrument.
type: string
card:
description: Contains information about the card. Required when you create
a payment instrument of `type` **card**.
$ref: '#/components/schemas/CardInfo'
description:
description: Your description for the payment instrument, maximum 300 characters.
maxLength: 300
type: string
issuingCountryCode:
description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code where the payment instrument is issued. For example, **NL**
or **US**.
type: string
paymentInstrumentGroupId:
description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/paymentInstrumentGroups__resParam_id)
to which the payment instrument belongs.
type: string
reference:
description: Your reference for the payment instrument, maximum 150 characters.
maxLength: 150
type: string
status:
x-enum:
- description: The payment instrument has been requested. This state is
applicable when creating physical cards.
value: Requested
- description: The payment instrument is active and can be used to make
payments.
value: Active
- description: The payment instrument is inactive and cannot be used to
make payments.
value: Inactive
- description: The payment instrument is temporarily suspended and cannot
be used to make payments.
value: Suspended
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: Closed
- description: The payment instrument is suspended. Either because it was
stolen or lost.
value: blocked
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: discarded
description: "The status of the payment instrument. If a status is not specified\
\ when creating a payment instrument, it is set to **Active** by default.\
\ However, there can be exceptions for cards based on the `card.formFactor`\
\ and the `issuingCountryCode`. For example, when issuing physical cards\
\ in the US, the default status is **Requested**.\n\nPossible values:\
\ \n\n * **Active**: The payment instrument is active and can be used\
\ to make payments. \n\n * **Requested**: The payment instrument has been\
\ requested. This state is applicable for physical cards. \n\n* **Inactive**:\
\ The payment instrument is inactive and cannot be used to make payments.\
\ \n\n * **Suspended**: The payment instrument is temporarily suspended\
\ and cannot be used to make payments. \n\n * **Closed**: The payment\
\ instrument is permanently closed. This action cannot be undone. \n\n\
* **Stolen** \n\n * **Lost**\n\n "
enum:
- Active
- Closed
- Inactive
- Lost
- Requested
- Stolen
- Suspended
- blocked
- discarded
type: string
type:
description: 'Type of payment instrument.
Possible value: **card**, **bankAccount**. '
enum:
- bankAccount
- card
type: string
required:
- balanceAccountId
- issuingCountryCode
- type
PaymentInstrumentReference:
properties:
id:
description: The unique identifier of the payment instrument.
type: string
required:
- id
PaymentInstrumentUpdateRequest:
properties:
balanceAccountId:
description: 'The unique identifier of the balance account associated with
this payment instrument.
>You can only change the balance account ID if the payment instrument
has **Requested** or **Inactive** status.'
type: string
card:
description: Object that contains information about the card payment instrument.
$ref: '#/components/schemas/CardInfo'
status:
x-enum:
- description: The payment instrument has been requested. This state is
applicable when creating physical cards.
value: Requested
- description: The payment instrument is active and can be used to make
payments.
value: Active
- description: The payment instrument is inactive and cannot be used to
make payments.
value: Inactive
- description: The payment instrument is temporarily suspended and cannot
be used to make payments.
value: Suspended
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: Closed
- description: The payment instrument is suspended. Either because it was
stolen or lost.
value: blocked
- description: The payment instrument is permanently closed. This action
cannot be undone.
value: discarded
description: "The status of the payment instrument. If a status is not specified\
\ when creating a payment instrument, it is set to **Active** by default.\
\ However, there can be exceptions for cards based on the `card.formFactor`\
\ and the `issuingCountryCode`. For example, when issuing physical cards\
\ in the US, the default status is **Requested**.\n\nPossible values:\
\ \n\n * **Active**: The payment instrument is active and can be used\
\ to make payments. \n\n * **Requested**: The payment instrument has been\
\ requested. This state is applicable for physical cards. \n\n* **Inactive**:\
\ The payment instrument is inactive and cannot be used to make payments.\
\ \n\n * **Suspended**: The payment instrument is temporarily suspended\
\ and cannot be used to make payments. \n\n * **Closed**: The payment\
\ instrument is permanently closed. This action cannot be undone. \n\n\
* **Stolen** \n\n * **Lost**\n\n "
enum:
- Active
- Closed
- Inactive
- Lost
- Requested
- Stolen
- Suspended
- blocked
- discarded
type: string
statusComment:
description: Comment for the status of the payment instrument.
type: string
PersonalData:
properties:
dateOfBirth:
description: 'The date of birth of the person.
The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).'
type: string
idNumber:
description: An ID number of the person.
type: string
nationality:
description: 'The nationality of the person represented by a two-character
country code.
>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. ''NL'').'
maxLength: 2
minLength: 2
type: string
Phone:
properties:
number:
description: "The full phone number provided as a single string. \nFor example,\
\ **\"0031 6 11 22 33 44\"**, **\"+316/1122-3344\"**, \n\n or **\"(0031)\
\ 611223344\"**."
type: string
type:
description: "Type of phone number.\nPossible values: \n**Landline**, **Mobile**.\n"
enum:
- Landline
- Mobile
type: string
required:
- number
- type
PhoneNumber:
properties:
phoneCountryCode:
description: 'The two-character ISO-3166-1 alpha-2 country code of the phone
number.
For example, **US** or **NL**.'
type: string
phoneNumber:
description: 'The phone number.
The inclusion of the phone number country code is not necessary.'
type: string
phoneType:
description: 'The type of the phone number.
Possible values: **Landline**, **Mobile**, **SIP**, **Fax**.'
enum:
- Fax
- Landline
- Mobile
- SIP
type: string
required:
- phoneCountryCode
- phoneNumber
PhoneNumber-2:
properties:
countryCode:
description: The two-letter [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
country code. For example, **US** or **NL**.
type: string
number:
description: The phone number.
type: string
type:
description: "The type of phone number.\n Possible values: **mobile**, **landline**,\
\ **sip**, **fax.** "
type: string
required:
- type
- number
RecurringDetail:
properties:
merchantAccount:
description: The merchant account used when the payment details were stored.
type: string
reference:
description: The `recurringDetailReference` returned in the response when
the payment details were stored.
type: string
shopperReference:
description: The unique identifier used when the payment details were stored.
type: string
RemediatingAction:
properties:
code:
description: The remediating action code.
type: string
message:
description: A description of how you can resolve the verification error.
type: string
RestServiceError:
properties:
detail:
description: A human-readable explanation specific to this occurrence of
the problem.
type: string
errorCode:
description: A code that identifies the problem type.
type: string
instance:
description: A unique URI that identifies the specific occurrence of the
problem.
type: string
invalidFields:
description: Detailed explanation of each validation error, when applicable.
items:
$ref: '#/components/schemas/InvalidField'
type: array
requestId:
description: A unique reference for the request, essentially the same as
`pspReference`.
type: string
response:
description: JSON response payload.
$ref: '#/components/schemas/JSONObject'
status:
description: The HTTP status code.
format: int32
type: integer
title:
description: A short, human-readable summary of the problem type.
type: string
type:
description: A URI that identifies the problem type, pointing to human-readable
documentation on this problem type.
type: string
required:
- type
- errorCode
- title
- detail
- status
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
StockData:
properties:
marketIdentifier:
description: The four-digit [Market Identifier Code](https://en.wikipedia.org/wiki/Market_Identifier_Code)
of the stock market where the organization's stocks are traded.
type: string
stockNumber:
description: The 12-digit International Securities Identification Number
(ISIN) of the company, without dashes (-).
type: string
tickerSymbol:
description: The stock ticker symbol.
type: string
SweepConfiguration:
properties:
balanceAccountId:
description: "The unique identifier of the destination or source [balance\
\ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\
\n You can only use this for periodic sweep schedules such as `schedule.type`\
\ **daily** or **monthly**."
type: string
id:
description: The unique identifier of the sweep.
readOnly: true
type: string
merchantAccount:
description: The merchant account that will be the source of funds. You
can only use this if you are processing payments with Adyen. This can
only be used for sweeps of `type` **pull** and `schedule.type` **balance**.
type: string
schedule:
description: The schedule when the `triggerAmount` is evaluated. If the
balance meets the threshold, funds are pushed out of or pulled in to the
balance account.
oneOf:
- $ref: '#/components/schemas/CronSweepSchedule'
- $ref: '#/components/schemas/SweepSchedule'
status:
x-enum:
- description: The sweep is enabled and funds will be pulled in or pushed
out based on the defined configuration
value: active
- description: The sweep is disabled and cannot be triggered.
value: inactive
description: "The status of the sweep. If not provided, by default, this\
\ is set to **active**.\n\nPossible values: \n\n * **active**: the sweep\
\ is enabled and funds will be pulled in or pushed out based on the defined\
\ configuration. \n\n * **inactive**: the sweep is disabled and cannot\
\ be triggered. \n\n"
enum:
- active
- inactive
type: string
sweepAmount:
description: The amount that must be pushed out or pulled in. You can configure
either `sweepAmount` or `targetAmount`, not both.
$ref: '#/components/schemas/Amount'
targetAmount:
description: The amount that must be available in the balance account after
the sweep. You can configure either `sweepAmount` or `targetAmount`, not
both.
$ref: '#/components/schemas/Amount'
transferInstrumentId:
description: 'The unique identifier of the destination or source [transfer
instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).
You can also use this in combination with a `merchantAccount` and a `type`
**pull** to start a direct debit request from the source transfer instrument.
To use this feature, reach out to your Adyen contact.'
type: string
triggerAmount:
description: 'The threshold amount that triggers the sweep. If not provided,
by default, the amount is set to zero. The `triggerAmount` is evaluated
according to the specified `schedule.type`.
* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`,
funds are pulled in to the balance account.
* For `type` **push**, if the balance is more than or equal to the `triggerAmount`,
funds are pushed out of the balance account.'
$ref: '#/components/schemas/Amount'
type:
default: push
description: "The direction of sweep, whether pushing out or pulling in\
\ funds to the balance account. If not provided, by default, this is set\
\ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\
\ a destination balance account or transfer instrument.\n\n * **pull**:\
\ _pull in funds_ from a source merchant account, transfer instrument,\
\ or balance account."
enum:
- pull
- push
type: string
required:
- id
- schedule
SweepSchedule:
additionalProperties: false
properties:
type:
description: 'The schedule type.
Possible values:
* **cron**: push out funds based on a cron expression.
* **daily**: push out funds daily at 07:00 AM CET.
* **weekly**: push out funds every Monday at 07:00 AM CET.
* **monthly**: push out funds every first of the month at 07:00 AM CET.
* **balance**: pull in funds instantly if the balance is less than or
equal to the `triggerAmount`. You can only use this for sweeps of `type`
**pull** and when the source is a `merchantAccount` or `transferInstrument`.'
enum:
- daily
- weekly
- monthly
- balance
- cron
type: string
TransactionRule:
properties:
amount:
description: The maximum amount that a payment instrument can be used for
in the period specified in the `interval.type`.
$ref: '#/components/schemas/Amount'
balancePlatformId:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/get/balancePlatforms/{id}__queryParam_id)
to which the rule applies.
type: string
countries:
description: 'List of countries to which the rule applies. For example:
**["NL","US"]**.'
items:
type: string
type: array
description:
description: Your description for the transaction rule, maximum 300 characters.
maxLength: 300
type: string
endDate:
description: 'The date when the rule will stop being evaluated, in ISO 8601
extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.
If not provided, the rule will be evaluated until the rule status is set
to **inactive**.'
type: string
entryModes:
description: 'List of point-of-sale entry modes to which the rule applies.
Possible values: **manual**, **chip**, **magstripe**, **contactless**,
**cof**, **token**, **server**, **barcode**, **ocr**.'
items:
enum:
- barcode
- chip
- cof
- contactless
- magstripe
- manual
- ocr
- server
- unknown
type: string
type: array
id:
description: The unique identifier of the transaction rule.
type: string
interval:
description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals)
when the rule conditions apply.
$ref: '#/components/schemas/TransactionRuleInterval'
maxTransactions:
description: The maximum number of transactions that a payment instrument
can be used for in the period specified in the `interval.type`.
format: int32
type: integer
mccs:
description: List of Merchant Category Codes (MCCs) to which the rule applies.
items:
type: string
type: array
paymentInstrumentGroupId:
description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstrumentGroups__resParam_id)
to which the rule applies.
type: string
paymentInstrumentId:
description: The unique identifier of the [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id)
to which the rule applies.
type: string
processingTypes:
description: 'List of processing types to which the rule applies.
Possible values: **atmWithdraw**, **pos**, **ecommerce**, **moto**, **recurring**,
**balanceInquiry**.'
items:
enum:
- atmWithdraw
- balanceInquiry
- ecommerce
- moto
- pos
- recurring
- token
- unknown
type: string
type: array
reference:
description: Your reference for the transaction rule, maximum 150 characters.
maxLength: 150
type: string
startDate:
description: "The date when the rule will start to be evaluated, in ISO\
\ 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\
\nIf not provided when creating a transaction rule, the `startDate` is\
\ set to the date when the rule status is set to **active**. \n\n"
type: string
status:
description: "The status of the transaction rule. If you provide a `startDate`\
\ in the request, the rule is automatically created \nwith an **active**\
\ status. \n\nPossible values: **active**, **inactive**."
enum:
- active
- inactive
type: string
type:
x-enum:
- description: The rule provides categories (such as country and MCC) where
payments must be allowed.
value: allowList
- description: The rule provides categories (such as country and MCC) where
payments must be blocked.
value: blockList
- description: The rule sets limits for the maximum amount or maximum number
of transactions for a given time interval.
value: velocity
- description: The rule sets limits for the maximum amount or maximum number
of transactions for the lifetime of the payment instrument.
value: maxUsage
description: "Type of conditions provided in the rule.\n\nPossible values:\n\
\ * **allowList**: The rule provides categories (such as country and\
\ MCC) where payments must be allowed.\n * **blockList**: The rule provides\
\ categories (such as country and MCC) where payments must be blocked.\n\
\ * **maxUsage**: The rule sets limits for the maximum amount or maximum\
\ number of transactions for the lifetime of the payment instrument.\n\
\ * **velocity**: The rule sets limits for the maximum amount or maximum\
\ number of transactions for a given time interval.\n"
enum:
- allowList
- blockList
- maxUsage
- velocity
type: string
required:
- type
- description
- reference
- interval
TransactionRuleInfo:
properties:
amount:
description: The maximum amount that a payment instrument can be used for
in the period specified in the `interval.type`.
$ref: '#/components/schemas/Amount'
balancePlatformId:
description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/get/balancePlatforms/{id}__queryParam_id)
to which the rule applies.
type: string
countries:
description: 'List of countries to which the rule applies. For example:
**["NL","US"]**.'
items:
type: string
type: array
description:
description: Your description for the transaction rule, maximum 300 characters.
maxLength: 300
type: string
endDate:
description: 'The date when the rule will stop being evaluated, in ISO 8601
extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.
If not provided, the rule will be evaluated until the rule status is set
to **inactive**.'
type: string
entryModes:
description: 'List of point-of-sale entry modes to which the rule applies.
Possible values: **manual**, **chip**, **magstripe**, **contactless**,
**cof**, **token**, **server**, **barcode**, **ocr**.'
items:
enum:
- barcode
- chip
- cof
- contactless
- magstripe
- manual
- ocr
- server
- unknown
type: string
type: array
interval:
description: The [time interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals)
when the rule conditions apply.
$ref: '#/components/schemas/TransactionRuleInterval'
maxTransactions:
description: The maximum number of transactions that a payment instrument
can be used for in the period specified in the `interval.type`.
format: int32
type: integer
mccs:
description: List of Merchant Category Codes (MCCs) to which the rule applies.
items:
type: string
type: array
paymentInstrumentGroupId:
description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstrumentGroups__resParam_id)
to which the rule applies.
type: string
paymentInstrumentId:
description: The unique identifier of the [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id)
to which the rule applies.
type: string
processingTypes:
description: 'List of processing types to which the rule applies.
Possible values: **atmWithdraw**, **pos**, **ecommerce**, **moto**, **recurring**,
**balanceInquiry**.'
items:
enum:
- atmWithdraw
- balanceInquiry
- ecommerce
- moto
- pos
- recurring
- token
- unknown
type: string
type: array
reference:
description: Your reference for the transaction rule, maximum 150 characters.
maxLength: 150
type: string
startDate:
description: "The date when the rule will start to be evaluated, in ISO\
\ 8601 extended offset date-time format. For example, **2020-12-18T10:15:30+01:00**.\n\
\nIf not provided when creating a transaction rule, the `startDate` is\
\ set to the date when the rule status is set to **active**. \n\n"
type: string
status:
description: "The status of the transaction rule. If you provide a `startDate`\
\ in the request, the rule is automatically created \nwith an **active**\
\ status. \n\nPossible values: **active**, **inactive**."
enum:
- active
- inactive
type: string
type:
x-enum:
- description: The rule provides categories (such as country and MCC) where
payments must be allowed.
value: allowList
- description: The rule provides categories (such as country and MCC) where
payments must be blocked.
value: blockList
- description: The rule sets limits for the maximum amount or maximum number
of transactions for a given time interval.
value: velocity
- description: The rule sets limits for the maximum amount or maximum number
of transactions for the lifetime of the payment instrument.
value: maxUsage
description: "Type of conditions provided in the rule.\n\nPossible values:\n\
\ * **allowList**: The rule provides categories (such as country and\
\ MCC) where payments must be allowed.\n * **blockList**: The rule provides\
\ categories (such as country and MCC) where payments must be blocked.\n\
\ * **maxUsage**: The rule sets limits for the maximum amount or maximum\
\ number of transactions for the lifetime of the payment instrument.\n\
\ * **velocity**: The rule sets limits for the maximum amount or maximum\
\ number of transactions for a given time interval.\n"
enum:
- allowList
- blockList
- maxUsage
- velocity
type: string
required:
- type
- description
- reference
- interval
TransactionRuleInterval:
properties:
type:
description: "The [type of interval](https://docs.adyen.com/issuing/transaction-rules#time-intervals)\
\ during which the rule conditions and limits apply, and how often counters\
\ are reset.\n\nPossible values:\n * **perTransaction**: conditions are\
\ evaluated and the counters are reset for every transaction.\n * **daily**:\
\ the counters are reset daily at 00:00:00 UTC.\n * **weekly**: the counters\
\ are reset every Monday at 00:00:00 UTC. \n * **monthly**: the counters\
\ reset every first day of the month at 00:00:00 UTC. \n * **lifetime**:\
\ conditions are applied to the lifetime of the payment instrument.\n"
enum:
- daily
- lifetime
- monthly
- perTransaction
- weekly
type: string
required:
- type
TransactionRuleResponse:
properties:
transactionRule:
description: The transaction rule.
$ref: '#/components/schemas/TransactionRule'
TransactionRulesResponse:
properties:
transactionRules:
description: List of transaction rules.
items:
$ref: '#/components/schemas/TransactionRule'
type: array
TransferInstrument:
properties:
bankAccount:
description: Contains information about the legal entity's bank account.
Required when `type` is **bankAccount**.
$ref: '#/components/schemas/BankAccountInfo'
documents:
deprecated: true
x-deprecatedInVersion: '1'
description: List of documents uploaded for the transfer instrument.
items:
$ref: '#/components/schemas/EntityReference'
type: array
id:
description: The unique identifier of the transfer instrument.
readOnly: true
type: string
legalEntityId:
description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id)
that owns the transfer instrument.
type: string
recurringDetail:
description: Contains information about the legal entity's previously stored
payment details. Required when `type` is **recurringDetail**.
$ref: '#/components/schemas/RecurringDetail'
type:
description: 'The type of transfer instrument.
Possible values: **bankAccount**, **recurringDetail**.'
enum:
- bankAccount
- recurringDetail
type: string
required:
- legalEntityId
- type
- id
TransferInstrumentInfo:
properties:
bankAccount:
description: Contains information about the legal entity's bank account.
Required when `type` is **bankAccount**.
$ref: '#/components/schemas/BankAccountInfo'
legalEntityId:
description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id)
that owns the transfer instrument.
type: string
recurringDetail:
description: Contains information about the legal entity's previously stored
payment details. Required when `type` is **recurringDetail**.
$ref: '#/components/schemas/RecurringDetail'
type:
description: 'The type of transfer instrument.
Possible values: **bankAccount**, **recurringDetail**.'
enum:
- bankAccount
- recurringDetail
type: string
required:
- legalEntityId
- type
VerificationError:
properties:
code:
description: The verification error code.
type: string
message:
description: A description of the error.
type: string
remediatingActions:
description: Contains the actions that you can take to resolve the verification
error.
items:
$ref: '#/components/schemas/RemediatingAction'
type: array
subErrors:
description: Contains more granular information about the verification error.
items:
$ref: '#/components/schemas/VerificationError-recursive'
type: array
type:
description: "The type of error.\n\n Possible values: **invalidInput**,\
\ **dataMissing**."
enum:
- dataMissing
- invalidInput
- pendingStatus
type: string
VerificationError-recursive:
properties:
code:
description: The verification error code.
type: string
message:
description: A description of the error.
type: string
type:
description: "The type of error.\n\n Possible values: **invalidInput**,\
\ **dataMissing**."
enum:
- dataMissing
- invalidInput
- pendingStatus
type: string
remediatingActions:
description: Contains the actions that you can take to resolve the verification
error.
items:
$ref: '#/components/schemas/RemediatingAction'
type: array
required: []
VoidResponse: {}
WebData:
properties:
webAddress:
description: The URL of the website.
type: string
WebDataExemption:
properties:
reason:
description: 'The reason why the web data was not provided. Possible value:
**noOnlinePresence**.'
enum:
- noOnlinePresence
type: string
securitySchemes:
ApiKeyAuth:
in: header
name: X-API-Key
type: apiKey
BasicAuth:
scheme: basic
type: http
examples:
delete-transactionRules-transactionRuleId-success-200:
summary: Transaction rule deleted
description: Example response for successfully deleting a transaction rule
value:
amount:
currency: EUR
value: 10000
description: Allow up to 100 EUR per month
interval:
type: monthly
paymentInstrumentGroupId: PG3227C223222B5CMD3FJFKGZ
reference: myRule16378
startDate: '2021-01-25T12:46:35'
type: velocity
id: TR3227C223222B5CMDKQTBQ5M
generic-400:
summary: Response code - 400 Bad request
value:
type: https://docs.adyen.com/errors/general/bad-request
title: Bad request
status: 400
detail: Empty input which would have resulted in a null result.
errorCode: '00_400'
generic-401:
summary: Response code - 401 Unauthorized
value:
type: https://docs.adyen.com/errors/security/unauthorized
title: Unauthorized
status: 401
errorCode: '00_401'
generic-403:
summary: Response code - 403 Forbidden.
value:
type: https://docs.adyen.com/errors/security/unauthorized
title: Forbidden
status: 403
detail: Not the right permission to access this service.
errorCode: '00_403'
generic-404:
summary: Response code 404 - Not found
value:
type: https://docs.adyen.com/errors/general/not-found
title: Not found
status: 404
errorCode: '00_404'
generic-422:
summary: Response code - 422 Unprocessable Entity.
value:
type: https://docs.adyen.com/errors/general/invalid-field-value
title: Invalid Payment Instrument information provided
status: 422
detail: The balanceAccountId can only be changed when the status is Inactive
or Requested
requestId: 1W1UI15PLVGC9V8O
errorCode: '30_031'
generic-500:
summary: Response code - 500 Internal Server Error
value:
type: https://docs.adyen.com/errors/general/internal
title: An internal error happened
status: 500
detail: Unrecoverable error while trying to create payment instrument
requestId: 1WAF555PLWNTLYOQ
errorCode: '00_500'
generic-503:
summary: Response code - 503 Internal Server Error
value:
type: https://docs.adyen.com/errors/general/processing-error
title: Error processing request
status: 500
detail: Error while determining the payment instrument workflow
requestId: 1W1UHY5O2CONU4R7
errorCode: '99_500'
get-accountHolders-id-balanceAccounts-success-200:
summary: List of balance accounts retrieved
description: Example response when retrieving a list of balance accounts under
an account holder
value:
balanceAccounts:
- accountHolderId: AH32272223222B59K6ZKBBFNQ
defaultCurrencyCode: EUR
id: BA32272223222B59K6ZXHBFN6
status: Active
- accountHolderId: AH32272223222B59K6ZKBBFNQ
defaultCurrencyCode: EUR
id: BA32272223222B59K72CKBFNJ
status: Active
- accountHolderId: AH32272223222B59K6ZKBBFNQ
defaultCurrencyCode: EUR
id: BA32272223222B5BRR27B2M7G
status: Active
hasNext: true
hasPrevious: false
get-accountHolders-id-success-200:
summary: Account holder retrieved
description: Example response when retrieving an account holder
value:
balancePlatform: YOUR_BALANCE_PLATFORM
contactDetails:
address:
city: Amsterdam
country: NL
houseNumberOrName: '274'
postalCode: 1020CD
street: Brannan Street
email: s.hopper@example.com
phone:
number: '+315551231234'
type: Mobile
description: S.Hopper - Staff 123
id: AH32272223222B5CM4MWJ892H
status: Active
get-balanceAccounts-id-paymentInstruments-success-200:
summary: List of payment instruments retrieved
description: Example response when retrieving a list of payment instruments
under a balance account
value:
hasNext: 'true'
hasPrevious: 'false'
paymentInstruments:
- balanceAccountId: BA32272223222B59CZ3T52DKZ
issuingCountryCode: GB
status: Active
type: card
card:
brandVariant: mc
cardholderName: name
formFactor: virtual
bin: '555544'
expiration:
month: '12'
year: '2022'
lastFour: '2357'
number: '************2357'
id: PI32272223222B59M5TM658DT
- balanceAccountId: BA32272223222B59CZ3T52DKZ
issuingCountryCode: GB
status: Active
type: card
card:
brandVariant: mc
cardholderName: name
formFactor: virtual
bin: '555544'
expiration:
month: '01'
year: '2023'
lastFour: '8331'
number: '************8331'
id: PI32272223222B59PXDGQDLSF
get-balanceAccounts-id-success-200:
summary: Balance account details retrieved
description: Example response for retrieving a balance account
value:
accountHolderId: AH32272223222B59K6RTQBFNZ
defaultCurrencyCode: EUR
balances:
- available: 0
balance: 0
currency: EUR
reserved: 0
id: BA3227C223222B5BLP6JQC3FD
paymentInstruments:
- id: PI32272223222B5BRM4FZ7J9J
status: Active
get-balancePlatforms-id-accountHolders-success-200:
summary: List of account holders retrieved
description: Example response when retrieving a list of account holders under
a balance platform
value:
accountHolders:
- contactDetails:
address:
city: Amsterdam
country: NL
houseNumberOrName: '6'
postalCode: '12336750'
street: Simon Carmiggeltstraat
description: J. Doe
id: AH32272223222B59DDWSCCMP7
status: Active
- contactDetails:
address:
city: Amsterdam
country: NL
houseNumberOrName: '11'
postalCode: '12336750'
street: Simon Carmiggeltstraat
description: S. Hopper
id: AH32272223222B59DJ7QBCMPN
status: Active
hasNext: 'true'
hasPrevious: 'false'
get-balancePlatforms-id-success-200:
summary: Balance platform retrieved
description: Example response when retrieving a balance platform
value:
id: YOUR_BALANCE_PLATFORM
status: Active
get-paymentInstrumentGroups-id-success-200:
summary: Payment instrument group retrieved
description: Example response when retrieving a payment instrument group
value:
balancePlatform: YOUR_BALANCE_PLATFORM
txVariant: mc
id: PG3227C223222B5CMD3FJFKGZ
get-paymentInstrumentGroups-id-transactionRules-success-200:
summary: Transaction rules for a payment instrument group retrieved
description: Example response when retrieving a list of transaction rules applied
to a payment instrument group
value:
transactionRules:
- description: Allow 5 transactions per month
interval:
type: monthly
maxTransactions: 5
paymentInstrumentGroupId: PG3227C223222B5CMD3FJFKGZ
reference: myRule12345
startDate: '2021-01-25T12:46:35'
status: active
type: velocity
id: TR32272223222B5CMDGMC9F4F
- amount:
currency: EUR
value: 10000
description: Allow up to 100 EUR per month
interval:
type: monthly
paymentInstrumentGroupId: PG3227C223222B5CMD3FJFKGZ
reference: myRule16378
startDate: '2021-01-25T12:46:35'
status: active
type: velocity
id: TR32272223222B5CMDGT89F4F
get-paymentInstruments-id-success-200:
summary: Payment instruments retrieved
description: Example response for retrieving payment instruments associated
with a balance account
value:
balanceAccountId: BA32272223222B59CZ3T52DKZ
description: S. Hopper - Main card
issuingCountryCode: GB
status: Active
type: card
card:
brand: mc
brandVariant: mcdebit
cardholderName: Simon Hopper
formFactor: virtual
bin: '555544'
expiration:
month: '01'
year: '2024'
lastFour: '3548'
number: '************3548'
id: PI32272223222B5CMD3MQ3HXX
get-paymentInstruments-id-transactionRules-success-200:
summary: Transaction rules for a payment instrument retrieved
description: Example response when retrieving a list of transaction rules applied
to a payment instrument
value:
transactionRules:
- description: Allow 5 transactions per month
interval:
type: monthly
maxTransactions: 5
paymentInstrumentGroupId: PG3227C223222B5CMD3FJFKGZ
reference: myRule12345
startDate: '2021-01-25T12:46:35.476629Z'
status: active
type: velocity
id: TR32272223222B5CMDGMC9F4F
- amount:
currency: EUR
value: 10000
description: Allow up to 100 EUR per month
interval:
type: monthly
paymentInstrumentGroupId: PG3227C223222B5CMD3FJFKGZ
reference: myRule16378
startDate: '2021-01-25T12:46:35'
status: active
type: velocity
id: TR32272223222B5CMDGT89F4F
get-transactionRules-transactionRuleId-success-200:
summary: Transaction rules retrieved
description: Example response when retrieving a transaction rule
value:
transactionRule:
description: Allow 5 transactions per month
interval:
type: monthly
maxTransactions: 5
paymentInstrumentId: PI3227C223222B59KGTXP884R
reference: myRule12345
startDate: '2021-01-25T12:46:35'
status: active
type: velocity
id: TR32272223222B5CMD3V73HXG
patch-accountHolders-id-requestAccountHolderCapability:
summary: Request account holder capability
description: Example request for the `receivePayments` capability for an account
holder
value:
description: Liable account holder used for international payments and payouts
reference: S.Eller-001
legalEntityId: LE322JV223222D5GG42KN6869
capabilities:
receivePayments:
requested: true
patch-accountHolders-id-requestAccountHolderCapability-200:
summary: Account holder capability requested
description: Example response for requesting the `receivePayments` capability
for an account holder
value:
balancePlatform: APIExplorer
description: Liable account holder used for international payments and payouts
legalEntityId: LE322JV223222F5GKQZZ9DS99
reference: S.Eller-001
capabilities:
receivePayments:
enabled: 'false'
requested: 'true'
allowed: 'false'
verificationStatus: pending
id: AH3227C223222C5GKR23686TF
status: Active
patch-accountHolders-id-updateAccountHolderStatus:
summary: Deactivate account holder
description: Example request for permanently deactivating an account holder
value:
status: Closed
patch-accountHolders-id-updateAccountHolderStatus-200:
summary: Account holder deactivated
description: Example response for permanently deactivating an account holder
value:
balancePlatform: APIExplorer
description: Liable account holder used for international payments and payouts
legalEntityId: LE322JV223222F5GKQZZ9DS99
reference: S.Eller-001
id: AH3227C223222C5GKR23686TF
status: Closed
patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount:
summary: Update the balance account linked to a payment instrument
description: Example request for updating the balance account of a payment instrument
value:
balanceAccountId: BA32272223222B5CM82WL892M
patch-paymentInstruments-id-updatePaymentInstrumentBalanceAccount-200:
summary: Balance account updated
description: Example response for updating the balance account linked to a payment
instrument
value:
balanceAccountId: BA32272223222B5CM82WL892M
description: S. Hopper - Main card
issuingCountryCode: GB
status: Inactive
type: card
card:
brand: mc
brandVariant: mcdebit
cardholderName: Simon Hopper
formFactor: virtual
bin: '555544'
expiration:
month: '01'
year: '2024'
lastFour: '5785'
number: '************5785'
id: PI3227C223222B5CMD278FKGS
patch-paymentInstruments-id-updatePaymentInstrumentStatus:
summary: Update the status of a payment instrument
description: Example request for updating the status of a payment instrument
value:
status: Suspended
patch-paymentInstruments-id-updatePaymentInstrumentStatus-200:
summary: Payment instrument status updated
description: Example response for updating the status of a payment instrument
value:
balanceAccountId: BA32272223222B59CZ3T52DKZ
description: S. Hopper - Main card
issuingCountryCode: GB
status: Suspended
type: card
card:
brand: mc
brandVariant: mcdebit
cardholderName: Simon Hopper
formFactor: virtual
bin: '555544'
expiration:
month: '01'
year: '2024'
lastFour: '5785'
number: '************5785'
id: PI3227C223222B5CMD278FKGS
patch-transactionRules-transactionRuleId-updateTransactionRuleStatus:
summary: Update the status of transaction rule
description: Example request for updating the status of a transaction rule
value:
status: inactive
patch-transactionRules-transactionRuleId-updateTransactionRuleStatus-200:
summary: Transaction rule status updated
description: Example response for successfully updating the status of a transaction
rule
value:
description: Allow 5 transactions per month
interval:
type: monthly
maxTransactions: 5
paymentInstrumentId: PI3227C223222B59KGTXP884R
reference: myRule12345
startDate: '2021-01-21T12:46:35'
status: inactive
type: velocity
id: TR3227C223222B5B85CDV4DRS
post-accountHolders-createAccountHolder:
summary: Create an account holder
description: Example request for creating an account holder
value:
description: Liable account holder used for international payments and payouts
reference: S.Eller-001
legalEntityId: LE322JV223222D5GG42KN6869
post-accountHolders-createAccountHolder-200:
summary: Account holder created
value:
balancePlatform: APIExplorer
description: Liable account holder used for international payments and payouts
legalEntityId: LE322JV223222D5GG42KN6869
reference: S.Eller-001
id: AH3227C223222C5GKR23686TF
status: Active
post-balanceAccounts-createBalanceAccount:
summary: Create a balance account
description: Example request for creating a balance account
value:
accountHolderId: AH32272223222B59K6ZKBBFNQ
description: S.Hopper - Main balance account
post-balanceAccounts-createBalanceAccount-200:
summary: Balance account created
description: Example response for creating a balance account
value:
accountHolderId: AH32272223222B59K6ZKBBFNQ
defaultCurrencyCode: EUR
reference: S.Hopper - Main balance account
balances:
- available: 0
balance: 0
currency: EUR
reserved: 0
id: BA32272223222B59CZ3T52DKZ
status: Active
post-paymentInstrumentGroups-createPaymentInstrumentGroups:
summary: Create a payment instrument group
description: Example request for creating a payment instrument group
value:
balancePlatform: YOUR_BALANCE_PLATFORM
txVariant: mc
post-paymentInstrumentGroups-createPaymentInstrumentGroups-200:
summary: Payment instrument group created
description: Example response for successfully creating a payment instrument
group
value:
balancePlatform: YOUR_BALANCE_PLATFORM
txVariant: mc
id: PG3227C223222B5CMD3FJFKGZ
post-paymentInstruments-createBusinessAccount:
summary: Create a business account
description: Example request for creating a business account
value:
type: bankAccount
description: YOUR_DESCRIPTION
balanceAccountId: BA3227C223222B5CTBLR8BWJB
issuingCountryCode: NL
post-paymentInstruments-createBusinessAccount-200:
summary: Business account created
description: Example response for creating a business account
value:
balanceAccountId: BA3227C223222B5CTBLR8BWJB
issuingCountryCode: NL
status: Active
type: bankAccount
bankAccount:
iban: NL20ADYB2017000035
id: PI322LJ223222B5DJS7CD9LWL
post-paymentInstruments-createPhysicalCard:
summary: Create a physical card
description: Example request for creating a physical card
value:
type: card
issuingCountryCode: NL
balanceAccountId: BA32272223222B59CZ3T52DKZ
description: S.Hopper - Main card
status: Inactive
card:
formFactor: physical
brand: mc
brandVariant: mcdebit
cardholderName: Sam Hopper
deliveryContact:
address:
city: Amsterdam
country: NL
stateOrProvince: NH
street: Brannan Street
houseNumberOrName: '274'
postalCode: 1020CD
name:
firstName: Sam
lastName: Hopper
configuration:
configurationProfileId: CP123AB45678C91ABCD2ABCDE
post-paymentInstruments-createPhysicalCard-200:
summary: Physical card created
description: Example response for creating a physical card
value:
balanceAccountId: BA32272223222B59CZ3T52DKZ
description: S. Hopper - Main card
issuingCountryCode: NL
status: Inactive
type: card
card:
brand: mc
brandVariant: mcdebit
cardholderName: Sam Hopper
formFactor: physical
bin: '555544'
expiration:
month: 08
year: '2024'
lastFour: '2765'
authentication:
password: '******'
phone:
number: '+123456789'
type: mobile
deliveryContact:
address:
city: Amsterdam
country: NL
stateOrProvince: NH
street: Brannan Street
houseNumberOrName: '274'
postalCode: 1020CD
name:
firstName: Sam
lastName: Hopper
configuration:
configurationProfileId: CP123AB45678C91ABCD2ABCDE
id: PI3227C223222B5BPCMFXD2XG
post-paymentInstruments-createVirtualCard:
summary: Create a virtual card
description: Example request for creating a virtual card
value:
type: card
description: S. Hopper - Main card
balanceAccountId: BA32272223222B59CZ3T52DKZ
issuingCountryCode: NL
card:
cardholderName: Sam Hopper
brand: mc
brandVariant: mcdebit
formFactor: virtual
post-paymentInstruments-createVirtualCard-200:
summary: Virtual card created
description: Example response for creating a virtual card
value:
balanceAccountId: BA32272223222B59CZ3T52DKZ
description: S.Hopper - Virtual card
issuingCountryCode: NL
status: Active
type: card
card:
brand: mc
brandVariant: mcdebit
cardholderName: Sam Hopper
formFactor: virtual
bin: '555544'
cvc: '613'
expiration:
month: '03'
year: '2025'
lastFour: '9883'
number: '5555444411209883'
id: PI32272223222B5FR7Z5CFDW4
post-transactionRules-createTransactionRule:
summary: Create a transaction rule
value:
description: Allow transactions only from NL
reference: YOUR_REFERENCE_1738A
paymentInstrumentId: PI32272223222B5CTBLWC6W2X
type: allowList
countries:
- NL
status: active
interval:
type: perTransaction
post-transactionRules-createTransactionRule-200:
summary: Transaction rule created
description: Example response for successfully creating a transaction rule
value:
description: Allow 5 transactions per month
interval:
type: monthly
maxTransactions: 5
paymentInstrumentId: PI3227C223222B59KGTXP884R
reference: myRule12345
startDate: '2021-01-21T12:46:35'
status: active
type: velocity
id: TR32272223222B5CMD3V73HXG