Skip to main content
POST
/
accounts
/
virtual-accounts
/
payout
Payout Virtual Account
curl --request POST \
  --url https://api.usepooler.com/accounts/virtual-accounts/payout \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "amount": 123,
  "recipient_name": "<string>",
  "recipient_account_number": "<string>",
  "recipient_bank_name": "<string>",
  "recipient_bank_code": "<string>",
  "description": "<string>",
  "totp": "<string>",
  "is_initiation": true,
  "is_api_request": true
}
'
{
  "success": true,
  "message": "<string>",
  "stan": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "data": {
    "reference": "<string>",
    "eta": "2023-11-07T05:31:56Z",
    "account_number": "<string>",
    "account_name": "<string>",
    "bank_name": "<string>",
    "currency": "<string>"
  }
}
Initiate a payout from a virtual account to transfer collected funds to a recipient bank account. This endpoint allows you to settle all collections from virtual accounts you have created.

Overview

This endpoint enables you to transfer funds collected in your virtual accounts to any bank account. It’s used when you want to payout all the collections from the virtual accounts you have created. The payout will be processed and you’ll receive a transaction reference and estimated time of arrival (ETA).
This endpoint is useful for settling collections from virtual accounts into your main business account or any designated recipient account.

Request Body

amount
number
required
The amount to payout in the account currency
recipient_name
string
required
Name of the recipient account holder
recipient_account_number
string
required
Bank account number of the recipient
recipient_bank_name
string
required
Name of the recipient’s bank
recipient_bank_code
string
required
Bank code of the recipient’s bank
description
string
Description or note for the payout transaction
totp
string
Time-based One-Time Password for additional security (if required)
is_initiation
boolean
Whether this is an initiation request
is_api_request
boolean
Whether this is an API request

Response

success
boolean
Indicates whether the payout request was processed successfully
message
string
Response message describing the result
stan
string
System Trace Audit Number (UUID) for tracking the transaction
data
object
Payout transaction details including:
  • reference: Unique transaction reference for the payout (e.g., “WDL-d9c19654”)
  • eta: Estimated time of arrival for the payout completion (ISO 8601 format)
  • account_number: Recipient account number
  • account_name: Recipient account name
  • bank_name: Recipient bank name
  • currency: Currency code of the payout

Authorizations

Authorization
string
header
required

Bearer token authentication. Include your API key in the Authorization header as: Bearer {your_api_key}

Body

application/json
amount
number
required

The amount to payout in the account currency

recipient_name
string
required

Name of the recipient account holder

recipient_account_number
string
required

Bank account number of the recipient

recipient_bank_name
string
required

Name of the recipient's bank

recipient_bank_code
string
required

Bank code of the recipient's bank

description
string

Description or note for the payout transaction

totp
string

Time-based One-Time Password for additional security (if required)

is_initiation
boolean

Whether this is an initiation request

is_api_request
boolean

Whether this is an API request

Response

200 - application/json

Payout initiated successfully

success
boolean
message
string
stan
string<uuid>
data
object