Initiate payout
Changed onCreates a payout to business or individual customers.
In case of payment in Euro, the transaction is subject to Verification of Payee (VoP): if the beneficiary's name in the request doesn't match the name in the beneficiary's bank account, the status 202 Verification Failed is returned. To proceed with the payment, you must Confirm Beneficiary's name. For the details, refer to the Initiate Payouts guide.
We recommend sending as much beneficiary and bank information as you can. Complete details help correspondent banks and payment networks process the payout and reduce the risk of delays or rejections.
Request
- Base URLhttps://api.sandbox.bvnk.com
- AuthAPI key in header Authorization
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Headers
Client-generated unique identifier for the request in UUID format. Ensures that retried requests are not processed more than once.
Optional. Verification ID acquired from the beneficiary verification request via POST /platform/v1/beneficiaries/verification. Include this header to use a previously verified beneficiary for the payout.
When using this header, you can skip further confirmation of the beneficiary's name as BVNK already attempted to verify it.
If you don't add the header, you may need to confirm the name.
Request body
Example request
{
"currency": "USD",
"beneficiary": {
"entity": {
"dateOfBirth": "15-01-1990",
"address": {
"addressLine1": "123 Main St",
"addressLine2": "Apt 4B",
"region": "CA",
"city": "Los Angeles",
"country": "US",
"postCode": "90001"
}
},
"bankAccount": {
"bank": {
"address": {
"addressLine1": "123 Bank St",
"addressLine2": "Suite 100",
"region": "NY",
"city": "New York",
"country": "US",
"postCode": "10001"
}
},
"intermediaryBanks": [
{
"address": {
"addressLine1": "123 Bank St",
"addressLine2": "Suite 100",
"region": "NY",
"city": "New York",
"country": "US",
"postCode": "10001"
}
}
]
}
},
"metadata": {
"source": "api",
"orderId": "ORD-48213"
},
"requestDetails": {
"originator": {
"ipAddress": "172.16.0.1"
}
}
}Response
Payment accepted for processing.
Example response
{
"fees": {
"customerFee": {
"amount": 100.5,
"currency": "USD"
},
"processingFee": {
"amount": 100.5,
"currency": "USD"
}
},
"originator": {
"entity": {
"dateOfBirth": "15-01-1990",
"address": {
"addressLine1": "123 Main St",
"addressLine2": "Apt 4B",
"region": "CA",
"city": "Los Angeles",
"country": "US",
"postCode": "90001"
}
}
},
"beneficiary": {
"entity": {
"dateOfBirth": "15-01-1990",
"address": {
"addressLine1": "123 Main St",
"addressLine2": "Apt 4B",
"region": "CA",
"city": "Los Angeles",
"country": "US",
"postCode": "90001"
}
},
"bankAccount": {
"bank": {
"address": {
"addressLine1": "123 Bank St",
"addressLine2": "Suite 100",
"region": "NY",
"city": "New York",
"country": "US",
"postCode": "10001"
}
},
"intermediaryBanks": [
{
"address": {
"addressLine1": "123 Bank St",
"addressLine2": "Suite 100",
"region": "NY",
"city": "New York",
"country": "US",
"postCode": "10001"
}
}
]
}
},
"metadata": {
"source": "api",
"orderId": "ORD-48213"
},
"trackingDetails": [
{
"externalTransactionId": "123e4567-e89b-12d3-a456-426614174000",
"imad": "20260304ABCDXXXX012345",
"omad": "20260304QMQP021000080",
"traceNumber": "021000080123456",
"uetr": "550e8400-e29b-41d4-a716-446655440000"
}
]
}Changes
- breaking
removed from the
/request propertyoneOflist - breaking
the
//////response's property format changed fromdateto no format for status - breaking
the
//////response's property format changed fromdateto no format for status - breaking
removed the required property
from the response with the status - warning
removed the request property
/// - warning
removed the request property
//// - warning
removed the optional property
///from the response with the status - warning
removed the optional property
////from the response with the status - warning
added the new
EXPIREDenum value to theresponse property for the response status - info
mapped value for discriminator key
COMPANYchanged from to for/request property - info
mapped value for discriminator key
INDIVIDUALchanged from to for/request property - info
added to the
/request propertyoneOflist - info
added the required property
to the response with the status
- breaking
- breaking
for the
headerrequest parameterIdempotency-Key, the minLength was increased from3to36 - breaking
the
/request property's maxLength was decreased to34 - warning
changed the pattern of the request property
/from^[A-Za-z0-9.,\-\s]+$to^[a-zA-Z0-9\s,.-]{5,34}$ - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the non-success response with the status
- info
added the non-success response with the status
- info
removed the non-success response with the status
- breaking