Files
adyen-openapi/yaml/FundService-v6.yaml
2021-07-09 17:59:36 +02:00

1546 lines
54 KiB
YAML

openapi: 3.1.0
servers:
- url: https://cal-test.adyen.com/cal/services/Fund/v6
info:
version: '6'
x-publicVersion: true
title: 'Adyen for Platforms: Fund API'
description: 'The Fund API provides endpoints for managing the funds in the accounts
on your platform. These management operations include actions such as the transfer
of funds from one account to another, the payout of funds to an account holder,
and the retrieval of balances in an account.
For more information, refer to our [documentation](https://docs.adyen.com/platforms).
## Authentication
To connect to the Fund API, you must use basic authentication credentials of your
web service user. If you don''t have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new).
Then use its credentials to authenticate your request, for example:
```
curl
-U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \
-H "Content-Type: application/json" \
...
```
Note that when going live, you need to generate new web service user credentials
to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).
## Versioning
The Fund API supports versioning of its endpoints through a version suffix in
the endpoint URL. This suffix has the following format: "vXX", where XX is the
version number.
For example:
```
https://cal-test.adyen.com/cal/services/Fund/v6/accountHolderBalance
```'
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:
- General
paths:
/accountHolderBalance:
post:
summary: Retrieve the balance(s) of an account holder.
description: 'This endpoint is used to retrieve the balance(s) of the accounts
of an account holder. An account''s balances are on a per-currency basis (i.e.,
an account may have multiple balances: one per currency).'
operationId: post-accountHolderBalance
x-groupName: General
x-sortIndex: 1
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-accountHolderBalance-basic'
schema:
$ref: '#/components/schemas/AccountHolderBalanceRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccountHolderBalanceResponse'
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.
/accountHolderTransactionList:
post:
summary: Retrieve a list of transactions.
description: This endpoint is used to retrieve a list of Transactions for an
account holder's accounts. The accounts and Transaction Statuses to be included
on the list can be specified. Each call will return a maximum of fifty (50)
Transactions per account; in order to retrieve the following set of Transactions
another call should be made with the 'page' value incremented. Note that Transactions
are ordered with most recent first.
operationId: post-accountHolderTransactionList
x-groupName: General
x-sortIndex: 2
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-accountHolderTransactionList-basic'
specific:
$ref: '#/components/examples/post-accountHolderTransactionList-specific'
schema:
$ref: '#/components/schemas/AccountHolderTransactionListRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccountHolderTransactionListResponse'
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.
/payoutAccountHolder:
post:
summary: Disburse a specified amount from an account to the account holder.
description: This endpoint is used to pay out a specified amount from an account
to the bank account of the account's account holder.
operationId: post-payoutAccountHolder
x-groupName: General
x-sortIndex: 3
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
oneOff:
$ref: '#/components/examples/post-payoutAccountHolder-oneOff'
schema:
$ref: '#/components/schemas/PayoutAccountHolderRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PayoutAccountHolderResponse'
description: OK - the request has succeeded.
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/PayoutAccountHolderResponse'
description: Accepted - the request has been accepted for processing, but
the processing has not been completed.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
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.
/refundFundsTransfer:
post:
summary: Make a refund of the existing transfer funds transfer.
description: 'This endpoint is used to refund funds transferred from one account
to another. Both accounts must be in the same marketplace, but can have different
account holders. '
operationId: post-refundFundsTransfer
x-groupName: General
x-sortIndex: 5
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-refundFundsTransfer-basic'
schema:
$ref: '#/components/schemas/RefundFundsTransferRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/RefundFundsTransferResponse'
description: OK - the request has succeeded.
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/RefundFundsTransferResponse'
description: Accepted - the request has been accepted for processing, but
the processing has not been completed.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
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.
/refundNotPaidOutTransfers:
post:
summary: Refund all transactions of an account since the most recent payout.
description: This endpoint is used to refund all the transactions of an account
which have taken place since the most recent payout. This request is on a
per-account basis (as opposed to a per-payment basis), so only the portion
of the payment which was made to the specified account will be refunded. The
commission(s), fee(s), and payment(s) to other account(s), will remain in
the accounts to which they were sent as designated by the original payment's
split details.
operationId: post-refundNotPaidOutTransfers
x-groupName: General
x-sortIndex: 7
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-refundNotPaidOutTransfers-basic'
schema:
$ref: '#/components/schemas/RefundNotPaidOutTransfersRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/RefundNotPaidOutTransfersResponse'
description: OK - the request has succeeded.
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/RefundNotPaidOutTransfersResponse'
description: Accepted - the request has been accepted for processing, but
the processing has not been completed.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
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.
/setupBeneficiary:
post:
summary: Designate an account to be the beneficiary of a separate account and
transfer the benefactor's current balance to the beneficiary.
description: This endpoint is used to define a benefactor and a beneficiary
relationship between two accounts. At the time of benefactor/beneficiary setup,
the funds in the benefactor account are transferred to the beneficiary account,
and any further payments to the benefactor account are automatically sent
to the beneficiary account. Note that a series of benefactor/beneficiaries
may not exceed four (4) beneficiaries and may not have a cycle in it.
operationId: post-setupBeneficiary
x-groupName: General
x-sortIndex: 6
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-setupBeneficiary-basic'
schema:
$ref: '#/components/schemas/SetupBeneficiaryRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SetupBeneficiaryResponse'
description: OK - the request has succeeded.
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/SetupBeneficiaryResponse'
description: Accepted - the request has been accepted for processing, but
the processing has not been completed.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
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.
/transferFunds:
post:
summary: Transfer funds from one platform account to another.
description: This endpoint is used to transfer funds from one account to another
account. Both accounts must be in the same marketplace, but can have different
account holders. The transfer must include a transfer code, which should be
determined by the marketplace, in compliance with local regulations.
operationId: post-transferFunds
x-groupName: General
x-sortIndex: 4
security:
- BasicAuth: []
- ApiKeyAuth: []
requestBody:
content:
application/json:
examples:
basic:
$ref: '#/components/examples/post-transferFunds-basic'
schema:
$ref: '#/components/schemas/TransferFundsRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TransferFundsResponse'
description: OK - the request has succeeded.
'202':
content:
application/json:
schema:
$ref: '#/components/schemas/TransferFundsResponse'
description: Accepted - the request has been accepted for processing, but
the processing has not been completed.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceError'
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:
AccountDetailBalance:
properties:
accountCode:
description: The code of the account that holds the balance.
type: string
detailBalance:
description: Details of the balance held by the account.
$ref: '#/components/schemas/DetailBalance'
AccountHolderBalanceRequest:
properties:
accountHolderCode:
description: The code of the Account Holder of which to retrieve the balance.
type: string
required:
- accountHolderCode
AccountHolderBalanceResponse:
properties:
balancePerAccount:
description: A list of each account and their balances.
items:
$ref: '#/components/schemas/AccountDetailBalance'
type: array
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
totalBalance:
description: The total balance of the account holder.
$ref: '#/components/schemas/DetailBalance'
AccountHolderTransactionListRequest:
properties:
accountHolderCode:
description: The code of the account holder that owns the account(s) of
which retrieve the transaction list.
type: string
transactionListsPerAccount:
description: A list of accounts to include in the transaction list. If left
blank, the last fifty (50) transactions for all accounts of the account
holder will be included.
items:
$ref: '#/components/schemas/TransactionListForAccount'
type: array
transactionStatuses:
description: 'A list of statuses to include in the transaction list. If
left blank, all transactions will be included.
>Permitted values:
>* `PendingCredit` - a pending balance credit.
>* `CreditFailed` - a pending credit failure; the balance will not be
credited.
>* `Credited` - a credited balance.
>* `PendingDebit` - a pending balance debit (e.g., a refund).
>* `CreditClosed` - a pending credit closed; the balance will not be credited.
>* `CreditSuspended` - a pending credit closed; the balance will not be
credited.
>* `DebitFailed` - a pending debit failure; the balance will not be debited.
>* `Debited` - a debited balance (e.g., a refund).
>* `DebitReversedReceived` - a pending refund reversal.
>* `DebitedReversed` - a reversed refund.
>* `ChargebackReceived` - a received chargeback request.
>* `Chargeback` - a processed chargeback.
>* `ChargebackReversedReceived` - a pending chargeback reversal.
>* `ChargebackReversed` - a reversed chargeback.
>* `Converted` - converted.
>* `ManualCorrected` - manual booking/adjustment by Adyen.
>* `Payout` - a payout.
>* `PayoutReversed` - a reversed payout.
>* `PendingFundTransfer` - a pending transfer of funds from one account
to another.
>* `FundTransfer` - a transfer of funds from one account to another.'
items:
enum:
- BalanceNotPaidOutTransfer
- Chargeback
- ChargebackCorrection
- ChargebackCorrectionReceived
- ChargebackReceived
- ChargebackReversed
- ChargebackReversedCorrection
- ChargebackReversedCorrectionReceived
- ChargebackReversedReceived
- Converted
- CreditClosed
- CreditFailed
- CreditReversed
- CreditReversedReceived
- CreditSuspended
- Credited
- DebitFailed
- DebitReversedReceived
- Debited
- DebitedReversed
- DepositCorrectionCredited
- DepositCorrectionDebited
- Fee
- FundTransfer
- FundTransferReversed
- InvoiceDeductionCredited
- InvoiceDeductionDebited
- ManualCorrected
- ManualCorrectionCredited
- ManualCorrectionDebited
- MerchantPayin
- MerchantPayinReversed
- Payout
- PayoutReversed
- PendingCredit
- PendingDebit
- PendingFundTransfer
- SecondChargeback
- SecondChargebackCorrection
- SecondChargebackCorrectionReceived
- SecondChargebackReceived
type: string
type: array
required:
- accountHolderCode
AccountHolderTransactionListResponse:
properties:
accountTransactionLists:
description: A list of the transactions.
items:
$ref: '#/components/schemas/AccountTransactionList'
type: array
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
AccountTransactionList:
properties:
accountCode:
description: The code of the account.
type: string
hasNextPage:
description: Indicates whether there is a next page of transactions available.
type: boolean
transactions:
description: The list of transactions.
items:
$ref: '#/components/schemas/Transaction'
type: array
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
BankAccountDetail:
properties:
accountNumber:
description: 'The bank account number (without separators).
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
accountType:
description: 'The type of bank account.
Only applicable to bank accounts held in the USA.
The permitted values are: `checking`, `savings`.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
bankAccountName:
description: The name of the bank account.
type: string
bankAccountReference:
x-addedInVersion: 5
description: Merchant reference to the bank account.
type: string
bankAccountUUID:
description: 'The unique identifier (UUID) of the Bank Account.
>If, during an account holder create or update request, this field is
left blank (but other fields provided), a new Bank Account will be created
with a procedurally-generated UUID.
>If, during an account holder create request, a UUID is provided, the
creation of the Bank Account will fail while the creation of the account
holder will continue.
>If, during an account holder update request, a UUID that is not correlated
with an existing Bank Account is provided, the update of the account holder
will fail.
>If, during an account holder update request, a UUID that is correlated
with an existing Bank Account is provided, the existing Bank Account will
be updated.
'
type: string
bankBicSwift:
description: 'The bank identifier code.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
bankCity:
description: 'The city in which the bank branch is located.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
bankCode:
description: 'The bank code of the banking institution with which the bank
account is registered.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
bankName:
description: 'The name of the banking institution with which the bank account
is held.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
branchCode:
description: 'The branch code of the branch under which the bank account
is registered. The value to be specified in this parameter depends on
the country of the bank account:
* United States - Routing number
* United Kingdom - Sort code
* Germany - Bankleitzahl
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
checkCode:
description: 'The check code of the bank account.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
countryCode:
description: 'The two-letter country code in which the bank account is registered.
>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. ''NL'').
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
currencyCode:
description: 'The currency in which the bank account deals.
>The permitted currency codes are defined in ISO-4217 (e.g. ''EUR'').
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
iban:
description: 'The international bank account number.
>The IBAN standard is defined in ISO-13616.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerCity:
description: 'The city of residence of the bank account owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerCountryCode:
description: 'The country code of the country of residence of the bank account
owner.
>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. ''NL'').
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerDateOfBirth:
description: 'The date of birth of the bank account owner.
'
type: string
ownerHouseNumberOrName:
description: 'The house name or number of the residence of the bank account
owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerName:
description: 'The name of the bank account owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerNationality:
description: 'The country code of the country of nationality of the bank
account owner.
>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. ''NL'').
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerPostalCode:
description: 'The postal code of the residence of the bank account owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerState:
description: 'The state of residence of the bank account owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
ownerStreet:
description: 'The street name of the residence of the bank account owner.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
primaryAccount:
description: If set to true, the bank account is a primary account.
type: boolean
taxId:
description: 'The tax ID number.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
urlForVerification:
description: 'The URL to be used for bank account verification.
This may be generated on bank account creation.
>Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification)
section for details on field requirements.'
type: string
DetailBalance:
properties:
balance:
description: The list of balances held by the account.
items:
$ref: '#/components/schemas/Amount'
type: array
onHoldBalance:
x-addedInVersion: 5
description: The list of on hold balances held by the account.
items:
$ref: '#/components/schemas/Amount'
type: array
pendingBalance:
description: The list of pending balances held by the account.
items:
$ref: '#/components/schemas/Amount'
type: array
ErrorFieldType:
properties:
errorCode:
description: The validation error code.
format: int32
type: integer
errorDescription:
description: A description of the validation error.
type: string
fieldType:
description: The type of error field.
$ref: '#/components/schemas/FieldType'
FieldType:
properties:
field:
description: The full name of the property.
type: string
fieldName:
description: The type of the field.
enum:
- accountCode
- accountHolderCode
- accountHolderDetails
- accountNumber
- accountStateType
- accountStatus
- accountType
- address
- bankAccount
- bankAccountCode
- bankAccountName
- bankAccountUUID
- bankBicSwift
- bankCity
- bankCode
- bankName
- bankStatement
- branchCode
- businessContact
- cardToken
- checkCode
- city
- companyRegistration
- constitutionalDocument
- country
- countryCode
- currency
- currencyCode
- dateOfBirth
- description
- destinationAccountCode
- document
- documentExpirationDate
- documentIssuerCountry
- documentIssuerState
- documentName
- documentNumber
- documentType
- doingBusinessAs
- drivingLicence
- drivingLicenceBack
- drivingLicense
- email
- firstName
- formType
- fullPhoneNumber
- gender
- hopWebserviceUser
- houseNumberOrName
- iban
- idCard
- idCardBack
- idCardFront
- idNumber
- identityDocument
- individualDetails
- jobTitle
- lastName
- legalArrangement
- legalArrangementCode
- legalArrangementEntity
- legalArrangementEntityCode
- legalArrangementLegalForm
- legalArrangementMember
- legalArrangementMembers
- legalArrangementName
- legalArrangementReference
- legalArrangementRegistrationNumber
- legalArrangementTaxNumber
- legalArrangementType
- legalBusinessName
- legalEntity
- legalEntityType
- merchantAccount
- merchantCategoryCode
- merchantReference
- microDeposit
- name
- nationality
- originalReference
- ownerCity
- ownerCountryCode
- ownerHouseNumberOrName
- ownerName
- ownerPostalCode
- ownerState
- ownerStreet
- passport
- passportNumber
- payoutMethodCode
- personalData
- phoneCountryCode
- phoneNumber
- postalCode
- primaryCurrency
- reason
- registrationNumber
- returnUrl
- schedule
- shareholder
- shareholderCode
- shareholderCodeAndSignatoryCode
- shareholderCodeOrSignatoryCode
- shareholderType
- shopperInteraction
- signatory
- signatoryCode
- socialSecurityNumber
- sourceAccountCode
- splitAccount
- splitCurrency
- splitValue
- splits
- stateOrProvince
- status
- stockExchange
- stockNumber
- stockTicker
- store
- storeDetail
- storeName
- storeReference
- street
- taxId
- tier
- tierNumber
- transferCode
- ultimateParentCompany
- ultimateParentCompanyAddressDetails
- ultimateParentCompanyAddressDetailsCountry
- ultimateParentCompanyBusinessDetails
- ultimateParentCompanyBusinessDetailsLegalBusinessName
- ultimateParentCompanyBusinessDetailsRegistrationNumber
- ultimateParentCompanyCode
- ultimateParentCompanyStockExchange
- ultimateParentCompanyStockNumber
- ultimateParentCompanyStockNumberOrStockTicker
- ultimateParentCompanyStockTicker
- unknown
- value
- verificationType
- virtualAccount
- visaNumber
- webAddress
- year
type: string
shareholderCode:
description: The code of the shareholder that the field belongs to. If empty,
the field belongs to an account holder.
type: string
PayoutAccountHolderRequest:
properties:
accountCode:
description: The code of the account from which the payout is to be made.
type: string
accountHolderCode:
description: 'The code of the Account Holder who owns the account from which
the payout is to be made.
The Account Holder is the party to which the payout will be made.'
type: string
amount:
description: The amount to pay out.
$ref: '#/components/schemas/Amount'
bankAccountUUID:
description: 'The unique ID of the Bank Account held by the Account Holder
to which the payout is to be made.
If left blank, a bank account is automatically selected.'
type: string
description:
description: 'A description of the payout. Maximum 35 characters.
Allowed: **abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/?:().,''+
";**'
maxLength: 35
type: string
merchantReference:
x-addedInVersion: 2
description: A value that can be supplied at the discretion of the executing
user in order to link multiple transactions to one another.
type: string
payoutMethodCode:
x-addedInVersion: 5
description: 'The unique ID of the payout method held by the Account Holder
to which the payout is to be made.
If left blank, a payout instrument is automatically selected.'
type: string
payoutSpeed:
x-addedInVersion: 5
default: STANDARD
description: 'Speed with which payouts for this account are processed. Permitted
values: `STANDARD`, `SAME_DAY`.'
enum:
- INSTANT
- SAME_DAY
- STANDARD
type: string
required:
- accountHolderCode
- accountCode
- amount
PayoutAccountHolderResponse:
properties:
bankAccountUUID:
description: The unique ID of the Bank Account to which the payout was made.
type: string
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
merchantReference:
x-addedInVersion: 2
description: The value supplied by the executing user when initiating the
transfer; may be used to link multiple transactions.
type: string
payoutSpeed:
x-addedInVersion: 5
default: STANDARD
description: 'Speed with which payouts for this account are processed. Permitted
values: `STANDARD`, `SAME_DAY`.'
enum:
- INSTANT
- SAME_DAY
- STANDARD
type: string
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
RefundFundsTransferRequest:
properties:
amount:
description: The amount to be transferred.
$ref: '#/components/schemas/Amount'
merchantReference:
description: A value that can be supplied at the discretion of the executing
user in order to link multiple transactions to one another.
type: string
originalReference:
description: A PSP reference of the original fund transfer.
type: string
required:
- originalReference
- amount
RefundFundsTransferResponse:
properties:
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
merchantReference:
description: The value supplied by the executing user when initiating the
transfer refund; may be used to link multiple transactions.
type: string
message:
description: The message of the response.
type: string
originalReference:
description: A PSP reference of the original fund transfer.
type: string
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
RefundNotPaidOutTransfersRequest:
properties:
accountCode:
description: The code of the account from which to perform the refund(s).
type: string
accountHolderCode:
description: The code of the Account Holder which owns the account from
which to perform the refund(s).
type: string
required:
- accountHolderCode
- accountCode
RefundNotPaidOutTransfersResponse:
properties:
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
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
SetupBeneficiaryRequest:
properties:
destinationAccountCode:
description: The destination account code.
type: string
merchantReference:
description: A value that can be supplied at the discretion of the executing
user.
type: string
sourceAccountCode:
description: The benefactor account.
type: string
required:
- sourceAccountCode
- destinationAccountCode
SetupBeneficiaryResponse:
properties:
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
Transaction:
properties:
amount:
description: The amount of the transaction.
$ref: '#/components/schemas/Amount'
bankAccountDetail:
description: The details of the bank account to where a payout was made.
$ref: '#/components/schemas/BankAccountDetail'
captureMerchantReference:
description: The merchant reference of a related capture.
type: string
capturePspReference:
description: The psp reference of a related capture.
type: string
creationDate:
description: The date on which the transaction was performed.
format: date-time
type: string
description:
description: A description of the transaction.
type: string
destinationAccountCode:
description: The code of the account to which funds were credited during
an outgoing fund transfer.
type: string
disputePspReference:
description: The psp reference of the related dispute.
type: string
disputeReasonCode:
description: The reason code of a dispute.
type: string
merchantReference:
description: The merchant reference of a transaction.
type: string
paymentPspReference:
x-addedInVersion: 3
description: The psp reference of the related authorisation or transfer.
type: string
payoutPspReference:
x-addedInVersion: 3
description: The psp reference of the related payout.
type: string
pspReference:
description: The psp reference of a transaction.
type: string
sourceAccountCode:
description: The code of the account from which funds were debited during
an incoming fund transfer.
type: string
transactionStatus:
description: 'The status of the transaction.
>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `CreditSuspended`,
`Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`,
`DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`,
`ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`,
`ManualCorrected`.'
enum:
- BalanceNotPaidOutTransfer
- Chargeback
- ChargebackCorrection
- ChargebackCorrectionReceived
- ChargebackReceived
- ChargebackReversed
- ChargebackReversedCorrection
- ChargebackReversedCorrectionReceived
- ChargebackReversedReceived
- Converted
- CreditClosed
- CreditFailed
- CreditReversed
- CreditReversedReceived
- CreditSuspended
- Credited
- DebitFailed
- DebitReversedReceived
- Debited
- DebitedReversed
- DepositCorrectionCredited
- DepositCorrectionDebited
- Fee
- FundTransfer
- FundTransferReversed
- InvoiceDeductionCredited
- InvoiceDeductionDebited
- ManualCorrected
- ManualCorrectionCredited
- ManualCorrectionDebited
- MerchantPayin
- MerchantPayinReversed
- Payout
- PayoutReversed
- PendingCredit
- PendingDebit
- PendingFundTransfer
- SecondChargeback
- SecondChargebackCorrection
- SecondChargebackCorrectionReceived
- SecondChargebackReceived
type: string
transferCode:
description: The transfer code of the transaction.
type: string
TransactionListForAccount:
properties:
accountCode:
description: The account for which to retrieve the transactions.
type: string
page:
description: 'The page of transactions to retrieve.
Each page lists fifty (50) transactions. The most recent transactions
are included on page 1.'
format: int32
type: integer
required:
- accountCode
- page
TransferFundsRequest:
properties:
amount:
description: The amount to be transferred.
$ref: '#/components/schemas/Amount'
destinationAccountCode:
description: 'The code of the account to which the funds are to be credited.
>The state of the Account Holder of this account must be Active.'
type: string
merchantReference:
x-addedInVersion: 2
description: A value that can be supplied at the discretion of the executing
user in order to link multiple transactions to one another.
type: string
sourceAccountCode:
description: 'The code of the account from which the funds are to be debited.
>The state of the Account Holder of this account must be Active and allow
payouts.'
type: string
transferCode:
description: 'The code related to the type of transfer being performed.
>The permitted codes differ for each platform account and are defined
in their service level agreement.'
type: string
required:
- sourceAccountCode
- destinationAccountCode
- transferCode
- amount
TransferFundsResponse:
properties:
invalidFields:
x-addedInVersion: 5
description: Contains field validation errors that would prevent requests
from being processed.
items:
$ref: '#/components/schemas/ErrorFieldType'
type: array
merchantReference:
x-addedInVersion: 2
description: The value supplied by the executing user when initiating the
transfer; may be used to link multiple transactions.
type: string
pspReference:
description: The reference of a request. Can be used to uniquely identify
the request.
type: string
resultCode:
description: The result code.
type: string
securitySchemes:
ApiKeyAuth:
in: header
name: X-API-Key
type: apiKey
BasicAuth:
scheme: basic
type: http
examples:
post-accountHolderBalance-basic:
summary: Review the account holder balance
value:
accountHolderCode: CODE_OF_ACCOUNT_HOLDER
post-accountHolderTransactionList-basic:
summary: Retrieve transactions page by page
value:
accountHolderCode: CODE_OF_ACCOUNT_HOLDER
transactionListsPerAccount:
- accountCode: '195752115'
page: 1
post-accountHolderTransactionList-specific:
summary: Retrieve transactions with specific statuses.
value:
accountHolderCode: CODE_OF_ACCOUNT_HOLDER
transactionStatuses:
- PendingCredit
- Credited
- Debited
transactionListsPerAccount:
- accountCode: 2e64b396-1200-4474-b848-0cb06b52b3c7
page: 2
post-payoutAccountHolder-oneOff:
summary: One-off payout
value:
accountCode: '118731451'
amount:
currency: EUR
value: 99792
accountHolderCode: CODE_OF_ACCOUNT_HOLDER
description: "12345 \u2013 Test"
bankAccountUUID: 000b81aa-ae7e-4492-aa7e-72b2129dce0c
post-refundFundsTransfer-basic:
summary: Refund the fund transfer
value:
originalReference: PSP_REFERENCE_OF_TRANSFER_TO_REFUND
amount:
currency: EUR
value: 1000
merchantReference: YOUR_REFERENCE_ID
post-refundNotPaidOutTransfers-basic:
summary: Refund last transactions
value:
accountHolderCode: CODE_OF_ACCOUNT_HOLDER
accountCode: '189184578'
post-setupBeneficiary-basic:
summary: Set up a beneficiary
value:
destinationAccountCode: '128952522'
merchantReference: YOUR_REFERENCE_ID
sourceAccountCode: '134498192'
post-transferFunds-basic:
summary: Transfer funds from one account to another
value:
sourceAccountCode: '100000000'
destinationAccountCode: '190324759'
amount:
currency: EUR
value: 2000
transferCode: TransferCode_1