Files
adyen-openapi/yaml/CapitalService-v1.yaml
Adyen Automation 43151d69ee spec release
2025-03-21 14:33:18 +01:00

1252 lines
43 KiB
YAML

openapi: 3.1.0
servers:
- url: https://balanceplatform-api-test.adyen.com/capital/v1
description: Test Environment
- url: https://balanceplatform-api-live.adyen.com/capital/v1
description: Live Environment
info:
title: Capital API
description: "The Capital API provides endpoints for embedding Adyen Capital into\
\ your [marketplace](https://docs.adyen.com/platforms/capital) or [platform](https://docs.adyen.com/platforms/capital).\
\ With Capital, you can offer business financing to your users as grants. When\
\ a user receives a grant, they must repay the grant amount in a specified term,\
\ in addition to paying a fee for using this service.\n\nWith these endpoints,\
\ you can:\n- **Get available grant offers**: You can get the grant offers that\
\ are available for your users. Adyen configures the financing amount, the fee,\
\ and the repayment conditions for each offer. These configurations are based\
\ on proactive risk analyses that Adyen performs on your users.\n- **Make requests\
\ for grants**: When a user selects a grant offer, you can make a request for\
\ the grant on their behalf.\n- **Get information about your grant account**:\
\ Your grant account tracks the information of all grants in your marketplace\
\ or platform.\n\n## Authentication\nEach request made to the Capital API must\
\ be signed with an API key. Generate an API key in your Customer Area.\n\nTo\
\ 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\n## Roles and permissions\nTo use the\
\ Capital API, your API credential must have the following roles:\n- **Balance_Platform_Capital_Configuration_Role**\n\
- **Balance_Platform_Capital_Grant_Initiation_Role**\n\nReach out to your Adyen\
\ contact to set up these roles.\n## Going live\nWhen going live, generate an\
\ API key in your [live Customer Area](https://ca-live.adyen.com/ca). You can\
\ then use the API key to send requests to `https://balanceplatform-api-live.adyen.com/capital/v{version}`.\n\
\n"
termsOfService: https://www.adyen.com/legal/terms-and-conditions
contact:
name: Adyen Developer Experience team
url: https://github.com/Adyen/adyen-openapi
version: '1'
x-timestamp: '2025-03-20T17:41:19Z'
tags:
- name: Grants
x-groupIndex: 1
- name: Grant offers
x-groupIndex: 2
- name: Grant accounts
x-groupIndex: 3
paths:
/grants:
get:
tags:
- Grants
summary: Get all the grants of an account holder
description: Returns a list of all the grants of a specific account holder.
operationId: get-grants
parameters:
- name: counterpartyAccountHolderId
in: query
description: The unique identifier of the account holder that received the
grants.
required: true
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Grants'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 2
post:
tags:
- Grants
summary: Make a request for a grant
description: Make a request for a grant on behalf of an account holder.
operationId: post-grants
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GrantInfo'
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Grant'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 1
/grants/{grantId}:
get:
tags:
- Grants
summary: Get the details of a grant
description: Returns the details of the specified grant.
operationId: get-grants-grantId
parameters:
- name: grantId
in: path
description: The unique identifier of the grant reference.
required: true
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Grant'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 3
/grants/{grantId}/disbursements:
get:
tags:
- Grants
summary: Get all the disbursements of a grant
description: Returns the disbursements of a specified grant.
operationId: get-grants-grantId-disbursements
parameters:
- name: grantId
in: path
description: The unique identifier of the grant reference.
required: true
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Disbursements'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 4
/grants/{grantId}/disbursements/{disbursementId}:
patch:
tags:
- Grants
summary: Update the repayment configuration of a disbursement
description: Update the percentage of your user's net income that is deducted
for repaying the grant.
operationId: patch-grants-grantId-disbursements-disbursementId
parameters:
- name: grantId
in: path
description: The unique identifier of the grant reference.
required: true
schema:
type: string
- name: disbursementId
in: path
description: The unique identifier of the disbursement.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchableDisbursement'
required: true
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/Disbursement'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 6
/grantAccounts/{id}:
get:
tags:
- Grant accounts
summary: Get the information of your grant account
description: Returns the details of the specified grant account. This account
tracks existing grants in your marketplace or platform.
operationId: get-grantAccounts-id
parameters:
- name: id
in: path
description: The unique identifier of the grant account.
required: true
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/GrantAccount'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 1
/grantOffers/{id}:
get:
tags:
- Grant offers
summary: Get the details of a grant offer
description: Returns the details of the specified grant offer.
operationId: get-grantOffers-id
parameters:
- name: id
in: path
description: The unique identifier of the grant offer.
required: true
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/GrantOffer'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 2
/grantOffers:
get:
tags:
- Grant offers
summary: Get all available grant offers
description: Returns a list of all [grant offers](https://docs.adyen.com/platforms/capital#grant-offers)
available for `accountHolderId` specified as a query parameter.
operationId: get-grantOffers
parameters:
- name: accountHolderId
in: query
description: The unique identifier of the account holder for which you want
to get the available grant offers.
schema:
type: string
responses:
'200':
description: OK - The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/GrantOffers'
'404':
description: Not Found - The entity was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
'422':
description: Unprocessable Entity - A request validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorResponseEntity'
x-sortIndex: 1
components:
schemas:
DefaultErrorResponseEntity:
type: object
properties:
detail:
type: string
description: A human-readable explanation specific to this occurrence of
the problem.
errorCode:
type: string
description: Unique business error code.
instance:
type: string
description: A URI that identifies the specific occurrence of the problem
if applicable.
invalidFields:
type: array
description: Array of fields with validation errors when applicable.
items:
$ref: '#/components/schemas/InvalidField'
requestId:
type: string
description: The unique reference for the request.
status:
type: integer
description: The HTTP status code.
format: int32
title:
type: string
description: A short, human-readable summary of the problem type.
type:
type: string
description: A URI that identifies the validation error type. It points
to human-readable documentation for the problem type.
description: Standardized error response following RFC-7807 format
externalDocs:
url: https://www.rfc-editor.org/rfc/rfc7807
InvalidField:
required:
- message
- name
- value
type: object
properties:
name:
type: string
description: The field that has an invalid value.
value:
type: string
description: The invalid value.
message:
type: string
description: Description of the validation error.
Amount:
required:
- currency
- value
type: object
properties:
currency:
type: string
description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
value:
type: integer
description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
format: int64
Balance:
required:
- currency
- fee
- principal
- total
type: object
properties:
currency:
type: string
description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
fee:
type: integer
description: The amount of the grant fee.
format: int64
principal:
type: integer
description: The grant amount that is paid out to the user for business
financing.
format: int64
total:
type: integer
description: The total amount of the grant that the user must repay. It
is the sum of the fee amount and the principal amount.
format: int64
Counterparty:
type: object
properties:
accountHolderId:
type: string
description: The unique identifier of the account holder that receives the
grant. If no `balanceAccountId` is provided, the grant funds are disbursed
to the primary balance account of this account holder.
balanceAccountId:
type: string
description: The unique identifier of the balance account where the funds
are disbursed. The balance account must belong to the specified account
holder.
transferInstrumentId:
type: string
description: The unique identifier of the transfer instrument where the
funds are disbursed. The transfer instrument must belong to the legal
entity of the specified account holder.
Fee:
required:
- amount
type: object
properties:
amount:
description: Contains the amount of the grant fee.
$ref: '#/components/schemas/Amount'
Grant:
required:
- balances
- grantAccountId
- grantOfferId
- id
- status
type: object
properties:
amount:
description: Contains information about the amount of the grant. This is
the sum of the amounts of all the disbursements related to the grant.
$ref: '#/components/schemas/Amount'
balances:
description: Contains information about the balances of the grant.
$ref: '#/components/schemas/Balance'
counterparty:
description: Contains the details of the party that receives the grant.
Setting either an `accountHolderId`, `balanceAccountId`, or both is required.
$ref: '#/components/schemas/Counterparty'
fee:
description: Contains information about the fee that your user must pay
for the grant. This is the sum of the fees of all the disbursements related
to the grant.
$ref: '#/components/schemas/Fee'
grantAccountId:
type: string
description: The unique identifier of the grant account that tracks this
grant.
grantOfferId:
type: string
description: The unique identifier of the selected grant offer. Adyen uses
the details of the selected grant offer to create a grant.
id:
type: string
description: The unique identifier of the grant reference.
repayment:
description: Contains information about the repayment configuration of the
grant. By default, this repayment configuration applies to all the disbursements
related to the grant.
$ref: '#/components/schemas/Repayment'
status:
description: Contains the status of the grant.
$ref: '#/components/schemas/Status'
Repayment:
required:
- basisPoints
type: object
properties:
basisPoints:
type: integer
description: The percentage of your user's incoming net volume that is deducted
for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).
format: int32
term:
description: Contains information about the time period in which your user
must repay the total amount of the grant.
$ref: '#/components/schemas/RepaymentTerm'
threshold:
description: Contains the minimum threshold amount that your user must repay
every 30-day period.
$ref: '#/components/schemas/ThresholdRepayment'
RepaymentTerm:
required:
- estimatedDays
type: object
properties:
estimatedDays:
type: integer
description: The estimated duration of the repayment term, in days.
format: int32
maximumDays:
type: integer
description: The maximum duration of the repayment term, in days. Only applies
when `contractType` is **loan**.
format: int32
Status:
required:
- code
type: object
properties:
code:
description: 'The code for the status of the grant. Possible values:
- **Pending**
- **Active**
- **Repaid**
- **WrittenOff**
- **Failed**
- **Revoked**'
enum:
- Pending
- Active
- Repaid
- WrittenOff
- Failed
- Revoked
ThresholdRepayment:
required:
- amount
type: object
properties:
amount:
description: The minimum threshold amount that your user must repay on every
30-day period.
$ref: '#/components/schemas/Amount'
GrantInfo:
required:
- grantAccountId
- grantOfferId
type: object
properties:
amount:
description: Contains information about the amount of the grant. This is
the sum of the amounts of all the disbursements related to the grant.
$ref: '#/components/schemas/Amount'
counterparty:
description: Contains the details of the party that receives the grant.
Setting either an `accountHolderId`, `balanceAccountId`, or both is required.
$ref: '#/components/schemas/Counterparty'
fee:
description: Contains information about the fee that your user must pay
for the grant. This is the sum of the fees of all the disbursements related
to the grant.
$ref: '#/components/schemas/Fee'
grantAccountId:
type: string
description: The unique identifier of the grant account that tracks this
grant.
grantOfferId:
type: string
description: The unique identifier of the selected grant offer. Adyen uses
the details of the selected grant offer to create a grant.
repayment:
description: Contains information about the repayment configuration of the
grant. By default, this repayment configuration applies to all the disbursements
related to the grant.
$ref: '#/components/schemas/Repayment'
Grants:
required:
- grants
type: object
properties:
grants:
type: array
description: Contains a list of the grants that the account holder has received.
items:
$ref: '#/components/schemas/Grant'
AULocalAccountIdentification:
required:
- accountNumber
- bsbCode
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 9
minLength: 5
type: string
description: The bank account number, without separators or whitespace.
bsbCode:
maxLength: 6
minLength: 6
type: string
description: The 6-digit [Bank State Branch (BSB) code](https://en.wikipedia.org/wiki/Bank_state_branch),
without separators or whitespace.
type:
type: string
description: '**auLocal**'
default: auLocal
AdditionalBankIdentification:
type: object
properties:
code:
type: string
description: The value of the additional bank identification.
type:
description: "The type of additional bank identification, depending on the\
\ country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort\
\ code](https://en.wikipedia.org/wiki/Sort_code), without separators or\
\ spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number),\
\ without separators or spaces."
$ref: '#/components/schemas/AdditionalBankIdentificationTypes'
AdditionalBankIdentificationTypes:
type: string
enum:
- auBsbCode
- caRoutingNumber
- gbSortCode
- hkBankCode
- jpZenginCode
- nzBankBranchCode
- usRoutingNumber
BRLocalAccountIdentification:
required:
- accountNumber
- bankCode
- branchNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 10
minLength: 1
type: string
description: The bank account number, without separators or whitespace.
bankCode:
maxLength: 3
minLength: 3
type: string
description: The 3-digit bank code, with leading zeros.
branchNumber:
maxLength: 4
minLength: 1
type: string
description: The bank account branch number, without separators or whitespace.
ispb:
maxLength: 8
minLength: 8
type: string
description: The 8-digit ISPB, with leading zeros.
type:
type: string
description: '**brLocal**'
default: brLocal
BankAccountIdentification:
type: object
properties:
type:
type: string
description: The type of account, which depends on the country of the account
and the currency of the transfer.
discriminator:
propertyName: type
mapping:
iban: '#/components/schemas/IbanAccountIdentification'
numberAndBic: '#/components/schemas/NumberAndBicAccountIdentification'
auLocal: '#/components/schemas/AULocalAccountIdentification'
brLocal: '#/components/schemas/BRLocalAccountIdentification'
czLocal: '#/components/schemas/CZLocalAccountIdentification'
noLocal: '#/components/schemas/NOLocalAccountIdentification'
plLocal: '#/components/schemas/PLLocalAccountIdentification'
huLocal: '#/components/schemas/HULocalAccountIdentification'
seLocal: '#/components/schemas/SELocalAccountIdentification'
sgLocal: '#/components/schemas/SGLocalAccountIdentification'
ukLocal: '#/components/schemas/UKLocalAccountIdentification'
usLocal: '#/components/schemas/USLocalAccountIdentification'
caLocal: '#/components/schemas/CALocalAccountIdentification'
dkLocal: '#/components/schemas/DKLocalAccountIdentification'
nzLocal: '#/components/schemas/NZLocalAccountIdentification'
hkLocal: '#/components/schemas/HKLocalAccountIdentification'
CALocalAccountIdentification:
required:
- accountNumber
- institutionNumber
- transitNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 12
minLength: 5
type: string
description: The 5- to 12-digit bank account number, without separators
or whitespace.
accountType:
description: 'The bank account type.
Possible values: **checking** or **savings**. Defaults to **checking**.'
$ref: '#/components/schemas/CALocalBankAccountType'
default: checking
institutionNumber:
maxLength: 3
minLength: 3
type: string
description: The 3-digit institution number, without separators or whitespace.
transitNumber:
maxLength: 5
minLength: 5
type: string
description: The 5-digit transit number, without separators or whitespace.
type:
type: string
description: '**caLocal**'
default: caLocal
CALocalBankAccountType:
type: string
enum:
- checking
- savings
CZLocalAccountIdentification:
required:
- accountNumber
- bankCode
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 17
minLength: 2
type: string
description: "The 2- to 16-digit bank account number (\u010C\xEDslo \xFA\
\u010Dtu) in the following format:\n\n- The optional prefix (p\u0159\
ed\u010D\xEDsl\xED).\n\n- The required second part (z\xE1kladn\xED \u010D\
\xE1st) which must be at least two non-zero digits.\n\nExamples:\n\n\
- **19-123457** (with prefix)\n\n- **123457** (without prefix)\n\n-\
\ **000019-0000123457** (with prefix, normalized)\n\n- **000000-0000123457**\
\ (without prefix, normalized)"
bankCode:
maxLength: 4
minLength: 4
type: string
description: "The 4-digit bank code (K\xF3d banky), without separators\
\ or whitespace."
type:
type: string
description: '**czLocal**'
default: czLocal
DKLocalAccountIdentification:
required:
- accountNumber
- bankCode
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 10
minLength: 4
type: string
description: The 4-10 digits bank account number (Kontonummer) (without
separators or whitespace).
bankCode:
maxLength: 4
minLength: 4
type: string
description: The 4-digit bank code (Registreringsnummer) (without separators
or whitespace).
type:
type: string
description: '**dkLocal**'
default: dkLocal
Disbursement:
required:
- accountHolderId
- amount
- balanceAccountId
- balances
- fee
- grantId
- id
- repayment
type: object
properties:
accountHolderId:
type: string
description: The unique identifier of the account holder that received the
disbursement.
amount:
description: Contains information about the amount of the disbursement.
$ref: '#/components/schemas/Amount'
balanceAccountId:
type: string
description: The unique identifier of the balance account that received
the disbursement.
balances:
description: Contains information about the balances of the disbursement.
$ref: '#/components/schemas/Balance'
fee:
description: Contains information about the fee that your user must pay
for the disbursement.
$ref: '#/components/schemas/Fee'
fundsCollections:
type: array
description: Contains information about the accounts that Adyen uses to
collect funds related to repayments.
items:
$ref: '#/components/schemas/FundsCollection'
grantId:
type: string
description: The unique identifier of the grant related to the disbursement.
id:
type: string
description: The unique identifier of the disbursement.
repayment:
description: Contains information about the basis points configured for
repaying the disbursement.
$ref: '#/components/schemas/DisbursementRepayment'
DisbursementRepayment:
required:
- basisPoints
type: object
properties:
basisPoints:
maximum: 10000
minimum: 0
type: integer
description: The percentage of your user's incoming net volume that is deducted
for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).
format: int32
Disbursements:
required:
- disbursements
type: object
properties:
disbursements:
type: array
description: Contains a list of all disbursements related to the specified
grant.
items:
$ref: '#/components/schemas/Disbursement'
FundsCollection:
type: object
properties:
accountIdentification:
description: Contains the identification information of the account to which
you can transfer funds related to repayments.
$ref: '#/components/schemas/BankAccountIdentification'
fundsCollectionType:
description: 'The type of funds collection.
Possible values: **UnscheduledRepayment**, **Revocation**.'
$ref: '#/components/schemas/FundsCollectionType'
FundsCollectionType:
type: string
enum:
- UnscheduledRepayment
- Revocation
HKLocalAccountIdentification:
required:
- accountNumber
- clearingCode
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 15
minLength: 9
type: string
description: The 9- to 15-character bank account number (alphanumeric),
without separators or whitespace. Starts with the 3-digit branch code.
clearingCode:
maxLength: 3
minLength: 3
type: string
description: The 3-digit clearing code, without separators or whitespace.
type:
type: string
description: '**hkLocal**'
default: hkLocal
HULocalAccountIdentification:
required:
- accountNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 24
minLength: 24
type: string
description: The 24-digit bank account number, without separators or whitespace.
type:
type: string
description: '**huLocal**'
default: huLocal
IbanAccountIdentification:
required:
- iban
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
iban:
type: string
description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html)
standard.
type:
type: string
description: '**iban**'
default: iban
NOLocalAccountIdentification:
required:
- accountNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 11
minLength: 11
type: string
description: The 11-digit bank account number, without separators or whitespace.
type:
type: string
description: '**noLocal**'
default: noLocal
NZLocalAccountIdentification:
required:
- accountNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 16
minLength: 15
type: string
description: The 15-16 digit bank account number. The first 2 digits are
the bank number, the next 4 digits are the branch number, the next 7
digits are the account number, and the final 2-3 digits are the suffix.
type:
type: string
description: '**nzLocal**'
default: nzLocal
NumberAndBicAccountIdentification:
required:
- accountNumber
- bic
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 34
type: string
description: The bank account number, without separators or whitespace.
The length and format depends on the bank or country.
additionalBankIdentification:
description: Additional identification codes of the bank. Some banks may
require these identifiers for cross-border transfers.
$ref: '#/components/schemas/AdditionalBankIdentification'
bic:
maxLength: 11
minLength: 8
type: string
description: The bank's 8- or 11-character BIC or SWIFT code.
type:
type: string
description: '**numberAndBic**'
default: numberAndBic
PLLocalAccountIdentification:
required:
- accountNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 26
minLength: 26
type: string
description: The 26-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)),
without separators or whitespace.
type:
type: string
description: '**plLocal**'
default: plLocal
SELocalAccountIdentification:
required:
- accountNumber
- clearingNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 10
minLength: 7
type: string
description: The 7- to 10-digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)),
without the clearing number, separators, or whitespace.
clearingNumber:
maxLength: 5
minLength: 4
type: string
description: The 4- to 5-digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)),
without separators or whitespace.
type:
type: string
description: '**seLocal**'
default: seLocal
SGLocalAccountIdentification:
required:
- accountNumber
- bic
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 19
minLength: 4
type: string
description: The 4- to 19-digit bank account number, without separators
or whitespace.
bic:
maxLength: 11
minLength: 8
type: string
description: The bank's 8- or 11-character BIC or SWIFT code.
type:
type: string
description: '**sgLocal**'
default: sgLocal
UKLocalAccountIdentification:
required:
- accountNumber
- sortCode
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 8
minLength: 8
type: string
description: The 8-digit bank account number, without separators or whitespace.
sortCode:
maxLength: 6
minLength: 6
type: string
description: The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code),
without separators or whitespace.
type:
type: string
description: '**ukLocal**'
default: ukLocal
USLocalAccountIdentification:
required:
- accountNumber
- routingNumber
- type
type: object
allOf:
- $ref: '#/components/schemas/BankAccountIdentification'
- type: object
properties:
accountNumber:
maxLength: 18
minLength: 2
type: string
description: The bank account number, without separators or whitespace.
accountType:
description: 'The bank account type.
Possible values: **checking** or **savings**. Defaults to **checking**.'
$ref: '#/components/schemas/USLocalBankAccountType'
default: checking
routingNumber:
maxLength: 9
minLength: 9
type: string
description: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number),
without separators or whitespace.
type:
type: string
description: '**usLocal**'
default: usLocal
USLocalBankAccountType:
type: string
enum:
- checking
- savings
PatchableDisbursement:
type: object
properties:
repayment:
description: Contains information about the basis points configured for
repaying the disbursement.
$ref: '#/components/schemas/PatchableDisbursementRepayment'
PatchableDisbursementRepayment:
type: object
properties:
basisPoints:
maximum: 10000
minimum: 0
type: integer
description: The percentage of your user's incoming net volume that is deducted
for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).
format: int32
GrantAccount:
type: object
properties:
balances:
type: array
description: Contains the sum of the balances of all grants tracked by this
grant account. The balances are separated by currency.
items:
$ref: '#/components/schemas/Balance'
fundingBalanceAccountId:
type: string
description: The unique identifier of the balance account used to fund the
grant.
id:
type: string
description: The unique identifier of the grant account.
limits:
type: array
description: Contains the maximum amount of funds that you can disburse
for grants.
items:
$ref: '#/components/schemas/GrantLimit'
GrantLimit:
type: object
properties:
amount:
description: The limit amount of the grant account.
$ref: '#/components/schemas/Amount'
GrantOffer:
required:
- accountHolderId
type: object
properties:
accountHolderId:
type: string
description: The unique identifier of the account holder to which the grant
is offered.
amount:
description: The amount that would be paid out to the user for business
financing.
$ref: '#/components/schemas/Amount'
contractType:
description: 'The contract type of the grant offer. Possible values: **cashAdvance**,
**loan**.'
enum:
- cashAdvance
- loan
expiresAt:
type: string
description: The date when the grant offer expires.
format: date-time
fee:
description: Contains information about the fee that your user would pay
for the grant.
$ref: '#/components/schemas/Fee'
id:
type: string
description: The unique identifier of the grant offer.
repayment:
description: Contains information about the repayment configuration of the
grant.
$ref: '#/components/schemas/Repayment'
startsAt:
type: string
description: The date when the grant offer becomes available.
format: date-time
GrantOffers:
required:
- grantOffers
type: object
properties:
grantOffers:
type: array
description: Contains a list of available grant offers for the specified
account holder.
items:
$ref: '#/components/schemas/GrantOffer'
securitySchemes:
ApiKeyAuth:
type: apiKey
name: X-API-Key
in: header
BasicAuth:
type: http
scheme: basic
jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base