Payouts

Initiate Bank Payout

Initiate a single bank-transfer payout from the authenticated business wallet.

POST
/api/v1/payout/bank-transfer

Authorization

BearerAuth
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/payout/bank-transfer" \  -H "Content-Type: application/json" \  -d '{    "account_number": "1234567890",    "bank_code": "000000",    "bank_name": "Test Bank",    "account_name": "John Doe",    "amount": 200,    "narration": "Payment for services rendered",    "type": "bank_transfer",    "currency": "NGN"  }'
{
  "id": "019914a8-c4d0-7131-a5c9-b008f622813a",
  "recipientAccountName": "Test User",
  "recipientAccountNumber": "123443231",
  "recipientBankName": "Access Bank Plc",
  "sourceReference": "SRC_PAYOUT_001",
  "reference": "TRN_R67QZJVLLY",
  "paymentChannel": "Bank Transfer",
  "sessionId": "1SDW323RWD234FRGTD24F3R22",
  "narration": "Sending money ...",
  "amount": {
    "value": 20000,
    "currency": "NGN",
    "formatted": "NGN 200.00"
  },
  "balance": {
    "value": 10000,
    "currency": "NGN",
    "formatted": "NGN 100.00"
  },
  "status": "Pending",
  "fee": [
    {
      "id": "019914a8-c4d0-7131-a5c9-b008f622813a",
      "recipientAccountName": "Test User",
      "recipientAccountNumber": "123443231",
      "recipientBankName": "Access Bank Plc",
      "sourceReference": "SRC_PAYOUT_001",
      "reference": "TRN_R67QZJVLLY",
      "paymentChannel": "Bank Transfer",
      "sessionId": "1SDW323RWD234FRGTD24F3R22",
      "narration": "Sending money ...",
      "amount": {
        "value": 20000,
        "currency": "NGN",
        "formatted": "NGN 200.00"
      },
      "balance": {
        "value": 10000,
        "currency": "NGN",
        "formatted": "NGN 100.00"
      },
      "status": "Pending"
    }
  ]
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "Invalid request data or insufficient funds.",
  "statusCode": 400
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "Invalid API key.",
  "statusCode": 401
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "Incorrect PIN or access denied.",
  "statusCode": 403
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "The given data was invalid.",
  "errors": {
    "account_number": [
      "The account number must be valid."
    ],
    "amount": [
      "The amount must be greater than 0."
    ]
  },
  "statusCode": 422
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "An error occurred while processing your request.",
  "statusCode": 500
}
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2025-09-04 11:49:40",
  "message": "Banking service is temporarily unavailable.",
  "statusCode": 503
}

How is this guide?